|
TOP
|
운영체제(Operating System)
Spring 2006
강의시간 및 장소: 월 16:30-17:45(전자정보445호), 목 16:30-17:45 (전자정보223호)
과목코드: B2442501, 전공필수, 3학점
|
Last Updated: 2006/03/22
|
운영체제(Operating Systems)의 원리와 기본개념에 대한 이해를 목표로 한다.
|
|
본 강의는 운영체제(Operating Systems)의 기본 개념과 종류, 그리고 운영체제의 구성에 대해서 공부한다. 본 강의에서는 프로세서 관리(프로세서와 쓰레드, CPU 스케쥴링, 프로세스 동기화, 교착상태), 저장장치 관리(메모리 관리, 가상메모리, 파일시스템), 입출력 시스템(I/O 시스템, 대용량 저장시스템), 분산시스템 및 보안에 대하여 다룬다. 또한, 이동 내장형 시스템, 유비쿼터스 컴퓨팅 시스템, 실시간 분산 시스템, 멀티미디어 시스템 등 같은 새로운 컴퓨팅 시스템을 지원하는 운영체제의 경향에 대해서 살펴본다.
|
|
본 강좌의 수강 대상은 학부 2, 3학년 학생을 대상으로 한다. 본 과목을 수강하려는 학생은 컴퓨터 시스템의 기초 지식을 보유하고(전산과학 개론, 이산수학, 어셈블리언어), 프로그래밍 프로젝트를 수행할 수 있도록 C/C++/Java 과목을 필히 이수해야하며, 자료구조을 수강한 학생들을 대상으로 한다.
|
|

|
[주교재]
▽ Operating System Concepts, 6th Edition
▽ A.
Silberschatz, P. Galvin, G. Gagne,
▽ John Wiley
& Sons, New York
▽ 2002
▽ ISBN:0-471-41743-2
|
|

|
[참고서]
▽ The Design of the UNIX Operating
System
▽ Maurice
J. Bach
▽ Prentice-Hall, Englewood Cliffs
▽ 1987
▽ ISBN: 0-13-201799-7
|
|
성 명 |
소속 학과/부서
|
직위 |
|
이 승 룡 |
경희대학교 전자정보학부 컴퓨터공학
|
교수 |
| 월
14:00 - 14:50, 화 13:00 - 13:50, 수 14:00 - 14:50 (전화나 e-mail로 사전 예약 요망) |
| 주 |
강의주제
|
강의자료(PDF)
|
|
1 |
운영체제 개요(Introduction)
운영체제의 개념 및 역할, 그리고 운영체제가 어떻게 구성되었는 지와 운영체제가 하는 일, 일반적인 특징 등에 대해 다룬다.
|
DOWN
|
|
2 |
컴퓨터 시스템 및 운영체제 구조
(Computer-System and Operating- System Structures)
컴퓨터 시스템의 입출력 구조, 저장장치 구조, 저장장치 계층 및 하드웨어 보호에 대해 설명하고 일반적인 시스템의 구조에 대해 다룬다.
|
DOWN
DOWN
|
|
3 |
프로세스 및 쓰레드 (Process and Threads)
프로세스의 정의, 개념과 프로세스 간 통신 및 관리 기법 등에 대해 다룬다. 그리고 쓰레드에 대해서 다룬다.
|
DOWN
DOWN
|
|
4
|
CPU 스케쥴링 (CPU Scheduling)
중앙처리 장치에서 프로세스를 관리하는 여러가지 스케쥴링 방법과, 실시간 시스템 스케쥴링에 대해 다룬다.
|
DOWN
|
|
5
|
프로세스 동기화 (Process Synchronization) I
여러 프로세스를 실행했을 때 프로세스간의 동기화 기법이 필요한 이유와 기본적인 개념 (상호배제, 임계영역, software 솔루션 및 HW 솔루션)에 대해 다룬다.
|
DOWN
|
|
6
|
프로세스 동기화 (Process Synchronization) II
프로세스간의 동기화 기법중 세마포어, 모니터 등에 대해 다룬다.
|
|
7
|
교착상태(Deadlocks)
교착상태가 일어나는 이유와 해결방법(Banker‘s 알고리즘) 등에 대해 다룬다.
|
DOWN
|
|
8
|
중간고사
|
|
|
9
|
기억장치 관리(Memory Management)
스와핑, 페이징, 세그먼테이션 등의 메모리 관리기법에 대해 다룬다.
|
DOWN
|
|
10
|
가상 메모리(Virtual Memory)
가상 메모리 개념, Demand Paging, 페이지 교체, Thrashing 등에 대해 다룬다.
|
DOWN
|
|
11
|
파일 시스템(File Systems)
파일시스템의 개념, 디렉토리, 파일공유 등과 파일시스템의 구현에 대해 다룬다.
|
DOWN
DOWN
|
|
12
|
입출력 시스템(I/O Systems)
하드웨어 I/O, 어플리케이션 I/O 인터페이스, 커널 I/O와 입출력 성능 등에 다룬다.
|
DOWN
|
|
13
|
보조기억장치(Secondary-Storage)
디스크 구조와 스케쥴링, 관리기법, 안전한 기억장치 구현 등에 대해 다룬다.
|
DOWN
|
|
14
|
분산 시스템(Distributed System)
UNIX 시스템, 네트워크 운영체제, 분산 운영체제, 실시간 내장형 운영체제, 유비쿼터스 컴퓨팅 운영체제, 멀티미디어 시스템 지원을 위한 운영체제들의 차이점을 다룬다. 그리고, 분산 미들웨어에 대해도 다룬다.
|
DOWN
|
|
15
|
보호 및 보안 (Protection/Security)
운영체제에서 보안의 개념, 보안 방법 등에 대해 다룬다.
|
DOWN
|
16 |
기말고사
|
|
• •
|
Lecture |
강의주제 |
강의자료
|
|
1
|
CONCURRENT PROCESSES
|

|
|
2
|
THE CRITICAL SECTION PROBLEM
|

|
|
3
|
SEMAPHORES
|

|
|
4
|
CONCURRENT PROGRAMMING
|

|
|
5
|
CPU SCHEDULING & REAL-TIME
SCHEDULING
|

|
|
6
|
Intoduction of Ubiquitous Computing |

|
|
※ 위의 강의내용은 수업 진도에 따라 일부 보완되거나 수정될 수 있다.
|
|
평가개요
|
중간/기말고사의 학습평가 결과를 주 평가요소로 하며, 평균 매 2주마다 1회의 과제물과 출석을 통해 평가하고, 프로그래밍 프로젝트로 수업에서 배운 이론을 구현해 보는 것으로 학습내용을 이해했는 지에 대한 평가를 수행한다.
|
|
성적
반영 비율
|
중간/기말: 각각 30%,
출석: 5%, 프로그래밍 프로젝트: 35%
|
|
요소별 상세 계획 |
|
시험
|
중간/기말 시험은 각각 30%의 비율로 반영한다.
|
|
출석
|
수업시간 5분전에 출석을 부른다. 수업의 참여는 과목을 이해하는데 매우 중요하다.
|
|
과제 |
과제는 평균 2주마다 부여되며, 제출은 다음주 월요일 수업시간 전 까지 본 홈페이지의 과제게시판에 업로드 하도록 한다.
|
|
프로그래밍
프로젝트
|
총 5-6회의 프로그래밍 프로젝트 중 잘 된 것 4개를 선택하여 수행 결과를 평가한다.
본 프로그래밍 프로젝트의 목적은 수업시간에 배운 이론이나 개념을 실제로 구현(시뮬레이션 수준)해 봄으로써 운영체제의 작동 원리를 정확하게 이해시키려는데 있으며, 이 과정을 통하여 프로그래밍 구현 기술을 향상시키는 부수적인 목적도 가지고 있다.
|
|