1. |
|
운영체제 개요
|
운영체제 정의, 컴퓨터란, ISA, API, 컴퓨터구조 기본 용어, 기계어, 컴퓨터 역사, 튜링 머신 |
|
2. |
|
운영체제 역사, 프로세스
|
Batch 시스템, multiprogramming/multitasking, Time sharing system, 프로세스, 가상 메모리, 변수의 life와 scope, local 변수, global 변수, context switching |
|
3. |
|
프로세스
|
process control block, context, 프로세스의 생성과 소멸, 프로세스 그래프, 프로세스 상태 |
|
4. |
|
인터럽트와 Exception, 쓰레드
|
Exception과 Interrupt 어떻게 다른가, Exception의 종류, 인터럽트의 종류, 쓰레드란, 프로세스와의 차이, 멀티쓰레딩의 장점 |
|
5. |
|
쓰레드
|
사용자 수준 쓰레드, 커널 쓰레드, 두 방식의 장단점, 멀티코어와 쓰레드 |
|
6. |
|
상호 배제와 동기
|
프로세스 사이의 경쟁과 협력, mutual exclusion, critical section, race condition, deadlock, starvation, atomic instruction, semaphore |
|
7. |
|
상호 배제와 동기
|
semaphore 예제, 세마포어, 모니터, 메시지를 이용한 상호 배제 구현 |
|
8. |
|
상호 배제와 동기, 데드락
|
메시지 예제, 데드락 정의, 데드락 조건, 데드락의 세 가지 해결 방안 |
|
9. |
|
데드락
|
데드락 방지, 회피, 감지 알고리즘들 |
|
10. |
|
시그널, 메모리 관리
|
signal 개념, 예제, 메모리 관리, static and dynamic partitioning |
|
11. |
|
메모리 관리
|
placement 알고리즘, 버디 시스템, 페이징, 세그멘테이션 |
|
12. |
|
캐시와 메모리 계층
|
캐시의 3가지 구조, locality principle, 캐시 미스의 종류 |
|
13. |
|
가상 메모리
|
가상 메모리와 물리적 메모리, 가상 주소와 물리적 주소, 페이지 테이블, TLB |
|
14. |
|
가상 메모리
|
TLB 구조, 페이지 테이블 엔트리, segmentation, 페이지 교체 알고리즘 |
|
15. |
|
가상 메모리
|
Working set 개념, |
|
|
|
CPU 스케줄링
|
단기, 중기, 장기 스케줄링, CPU 스케줄링 알고리즘들 |
|
|
|
CPU 스케줄링, 멀티프로세서 스케줄링
|
fair share scheduling, 멀티프로세서 종류 |
|
|
|
멀티프로세서 스케줄링
|
병령성 granularity, 쓰레드 스케줄링 알고리즘 |
|
|
|
실시간 스케줄링
|
실시간 태스크 종류, |
|
|
|
실시간 스케줄링
|
데드라인 스케줄링, 화상 탐사선에서의 실시간 스케줄링 문제 |
|
|
|
디스크 스케줄링
|
자기 디스크 구조, 디스크 액세스 타임, 디스크 스케줄링 알고리즘, RAID |
|
|
|
파일 관리
|
파일 구조, 레코드 블로킹, 파일 할당 방법 |
|