본문 바로가기

방송통신대 컴퓨터과학과

(42)
운영체제 5강 (병행프로세스) 학습개요 병행 프로세스 중 협력 프로세스에서 발생할 수 있는 구체적인 문제로 생산자-소비자 문제와 판독기-기록기 문제가 있습니다. 또한 협력 프로세스 사이에는 데이터를 공유하기 위해 통신이 필수인데, 이 과정에서도 다양한 문제가 발생할 수 있습니다. 이번 강의에서는 생산자-소비자 문제, 판독기-기록기 문제의 예를 통해 협력 프로세스의 일반적 구현방법을 학습합니다. 또한 병행 프로세스 사이의 통신을 위한 방법에 대해 논리적 측면에서 살펴봅니다. 학습목표 생산자-소비자 문제를 알아보고, 세마포어를 이용하여 해결할 수 있다. 판독기-기록기 문제를 알아보고, 세마포어를 이용하여 해결할 수 있다. 프로세스 간 통신을 위한 논리적 구조를 설명할 수 있다. 정리하기 생산자-소비자 문제는 상호배제와 동기화가 필요한 문..
인공지능 5강 (지식과 인공지능) 학습개요 인공지능의 문제풀이는 광범위한 일반적 지능을 구현하는 데 한계를 보인다. 이에 따라 문제의 범위를 특정 응용분야로 좁혀 이에 대한 지식을 활용하기 위한 지식기반 시스템의 구현에 관심을 갖게 된다. 지식기반 시스템에서 지식을 표현하고 활용하는 것은 매우 중요하다. 이번 강의에서는 인공지능 시스템에서 지식 및 지식의 컴퓨터 내에서의 표현에 대하여 학습한다. 다양한 형태의 지식표현방법을 고려할 수 있으며, 그 중 주요한 지식표현 방법들에 대하여 논의하고자 한다. 학습목표 지식기반 시스템이 무엇인지 설명할 수 있다. 지식표현 방법들이 갖추어야 할 요건들을 설명할 수 있다. 주요 지식표현 방법들의 개념을 설명할 수 있다. 주요용어 지식기반 시스템 : 특정한 문제 분야의 지식을 쉽게 접근할 수 있는 형태로..
알고리즘 5강 (정렬) 학습개요 이번 강의에서는 우선 힙 자료구조를 이용한 비교 기반의 힙 정렬에 대해서 살펴본다. 그리고 지금까지 학습한 정렬 알고리즘들과는 정렬 방식이 다른, 즉 비교 기반이 아닌 데이터의 분포 특성을 이용한 정렬 알고리즘으로서 계수 정렬, 기수 정렬, 버킷 정렬에 대해서 다룬다. 학습목표 힙 자료구조의 개념과 장점을 이해할 수 있다. 힙 정렬의 수행 과정과 특징을 이해할 수 있다. 계수 정렬, 기수 정렬, 버킷 정렬의 개념, 처리 과정 및 특징을 이해할 수 있다. 주요용어 (최대) 힙 (maximum heap) - 각 노드의 값이 자신의 자식 노드의 값보다 크거나 같다는 조건을 만족하는 완전 이진 트리 힙 정렬 (heap sort) - 힙 구조의 장점을 이용한 정렬 알고리즘 - 힙 구조의 장점 → 임의의 ..
데이터 베이스 1. DBMS 사용 이전의 데이터 관리 방식으로 운영체제의 지원으로 여러 파일에 나누어 데이터를 영구 저장하고 운영하는 시스템을 무엇이라고 하는가? 파일처리 시스템 2. 다음중 파일 처리 방식의 데이터 관리가 갖는 문제점으로 볼 수 없는 것은? 데이터확장, 무결성훼손, 동시접근이상 3. DBMS가 데이터베이스 자체 뿐만 아니라 데이터에 대한 정의나 설명에 대한 것까지 포함하고 있는 특성을 무엇이라 하는가? 자기 기술성 4. 데이터베이스 언어의 한 영역으로 데이터베이스에 의해 구조화된 데이터에 사용자가 접근 및 사용 할 수 있도록 지원하는 언어를 무엇이라고 하는가? 데이터 조작 언어 5. DBMS를 외부, 개념, 내부 스키마로 분리하고 각 단계 간 사상을 통해 구조화하는 방식을 무엇이라고 하는가? 3단계 ..
파이썬 문제 1. 파이썬 인터프리터에서 기본적으로 지원하는 함수를 무엇이라고 하는가? 내장함수 2. 구조적 프로그래밍 패러다임에서 제안된 제어구조는? 순차, 반복, 선택 3. 다음 코드 실행 시 에러의 원인에 대한 설명으로 올바른 것은? 무한반복(count 증가시키지 않는다) msg = "Love Python" count = 1 while count
운영체제 4강 (병행프로세스) 학습개요 최근에는 여러 프로세스가 단순히 순차처리가 아닌 병행처리될 필요가 많습니다. 음악 파일을 배경음악으로 재생하며 동영상도 틀어 놓고 문서작업을 하는 경우, 운영체제는 이들을 병행으로 처리해야 합니다. 특히 이렇게 병행처리되는 프로세스가 서로 유기적으로 상호작용하며 동작하는 경우에는 해결해야 할 다양한 문제가 존재합니다. 이번 강의에서는 병행 프로세스의 기본 개념과 함께 상호배제와 동기화 문제를 알아봅니다. 그리고 이를 해결하기 위해 제공되는 장치들에 대해 학습합니다. 학습목표 병행성과 병행 프로세스의 개념을 설명할 수 있다. 병행성 문제를 설명할 수 있다. 세마포어의 개념을 설명할 수 있다. 정리하기 병행성은 여러 개의 프로세스 또는 쓰레드가 동시에 수행되는 시스템의 특성을 의미하고, 동시에 수행..
인공지능 4강 (게임트리) 학습개요 게임은 지능적 판단과 전략을 활용해야 하기 때문에 인공지능 기법을 적용함으로써 지능적 메커니즘 구현을 확인할 수 있는 응용분야이다. 이번 시간에 학습할 게임트리는 장기나 바둑과 같은 게임을 진행할 때 활용할 수 있는 접근방법이다. 상대방이 있는 게임에서 다음 둘 수를 결정하는 과정과 탐색의 효율을 높이기 위한 방법에 대하여 논의할 것이다. 학습목표 최대최소 탐색을 통해 게임의 수를 결정하는 방법을 설명할 수 있다. 게임트리에서 불필요한 가지의 탐색을 줄여 효율성을 높이는 방법을 설명할 수 있다. 몬테카를로 트리 탐색의 개념을 설명할 수 있다. 몬테카를로 트리 탐색 알고리즘의 선택, 확장, 시뮬레이션, 역전파 단계를 설명할 수 있다. 주요용어 최대최소 탐색 : 교대로 수를 두는 2인 게임에서 나의..
알고리즘 4강 (정렬) 학습개요 지난 시간에 배운 정렬 알고리즘(선택, 버블, 삽입, 셸 정렬)들은 n개의 데이터를 정렬하는 데 최악의 수행시간 O(n2)이 필요한 기본적인 성능의 알고리즘이었다. 이번 강의에서는 지난 시간에 배운 정렬 알고리즘에 비해서 평균적인 성능이 우수한 두 알고리즘, 퀵 정렬과 합병 정렬을 소개하고 그것들의 특성을 살펴본다. 학습목표 퀵 정렬의 원리, 다양한 경우의 성능 분석 과정 및 특징을 이해할 수 있다. 합병 정렬의 처리 과정과 특징을 이해할 수 있다. 두 정렬 알고리즘(퀵 정렬, 합병 정렬)과 분할정복 방법과의 관계를 이해할 수 있다. 주요용어 퀵 정렬(quick sort) - 피벗을 기준으로 주어진 배열을 크기가 일정하지 않은 2개의 부분배열로 분할하고, 각 부분배열에 대해서 독립적으로 퀵 정렬..