1. | ![]() |
운영체제의 개관, 역사 | 컴퓨터 시스템을 운용하기 위한 운영체제의 기술적 이슈와 역사적 발전 | ![]() |
2. | ![]() |
프로세스와 병행성 1 | 병행성을 획득하기 위한 소프트웨어 구조와 프로세스 개념 학습 | ![]() |
![]() |
프로세스와 병행성 2 | 병렬 프로세스를 실행하기 위한 프로그래밍 기법과 프로세스의 실행, 프로세스간 통신 | ![]() |
|
3. | ![]() |
쓰레드 1 | 쓰레드의 개념적 정의와 실행 모델, 쓰레드를 지원하기 위한 소프트웨어 구조 | ![]() |
![]() |
쓰레드 2 | 복수의 쓰레드를 병렬 실행하기 위한 운영체제의 프로그래밍 기법 | ![]() |
|
4. | ![]() |
프로세스 동기화 문제 1 | 복수의 프로세스가 병렬 실행되는 경우에 해결해야 하는 동기화 문제를 실행활에 비유된 예제를 통하여 고찰 | ![]() |
![]() |
프로세스 동기화 문제 2 | 프로세스 동기화 문제의 해결책을 관념적 수준에서 설계 | ![]() |
|
5. | ![]() |
프로세스 동기화 기법 1 | 프로세스 동기화를 위한 프로그래밍 구조로서 Lock, Semaphore, Monitor 를 이해하고 상호 배제의 개념과 응용을 학습 | ![]() |
![]() |
프로세스 동기화 기법 2 | 프로세스 동기화를 위한 프로그래밍 구조로서 Condition Variable 과 Reader-Writer Lock 을 이해하고 이들을 활용한 동기화 프로그래밍 기법을 학습 | ![]() |
|
6. | ![]() |
교착상태 1 | 교착상태가 발생하는 원인을 파악하고 교착상태 발생을 감지하기 위한 기법을 학습 | ![]() |
![]() |
교착상태 2 | 교착상태 방지 기법과 교착상태 회피 기법을 학습 | ![]() |
|
7. | ![]() |
프로세스 스케줄링 1 | 프로세스 스케줄링 문제를 정의하고, FCFS (First-Come First-Served) 스케줄링 기법과 RR (Round Robin) 스케줄링 기법을 이해, 이들의 장단점 비교 | ![]() |
![]() |
프로세스 스케줄링 2 | 프로세스 스케줄링 기법의 심화 학습으로서 SJF (Shortest Job First) 기법과 SRTF (Shortest Remaining Time First) 기법을 학습하고, 이들이 각각 최적성을 가짐을 확인 | ![]() |
|
8. | ![]() |
메모리 보호 1 | 프로세스의 주소 공간 (address space) 개념을 익히고, 커널 모드 (kernel mode) 와 상요자 모드 (user mode) 간 전환이 이루어지는 메커니즘을 학습 | ![]() |
![]() |
메모리 보호 2 | 프로세스들 사이의 메모리 보호를 위한 하드웨어 지원과 소프트웨어 지원 기법을 이해 | ![]() |
|
9. | ![]() |
주소변환 1 | 가상메모리 시스템 설계를 위한 주소 변환 기법으로서 세그멘테이션 (segmentation) 과 페이징 (paging) 기법을 학습, 이들의 장단점을 비교 | ![]() |
![]() |
주소변환 2 | 세그멘테이션 (segmentation) 과 페이징 (paging) 기법의 확장을 위한 기술을 학습하고 예제를 중심으로 실제 시스템에 적용되는 주소 변환 기법을 이해 | ![]() |
|
10. | ![]() |
캐시와 TLB 1 | CPU 캐시의 설계와 조직, 메모리 주소 계산과 교체 알고리즘 (replacement algorithm) 학습 | ![]() |
![]() |
캐시와 TLB 2 | 변환 색인 버퍼 (TLB; translation lookaside buffer) 의 구조를 학습하고 TLB miss 를 처리하기 위한 하드웨어/소프트웨어 기법을 이해 | ![]() |
|
11. | ![]() |
가상 메모리 1 | 요구 페이징 (demand paging) 에 기반한 가상 메모리 시스템의 구조를 학습 | ![]() |
![]() |
가상 메모리 2 | 요구 페이징 (demand paging) 시스템의 성능을 향상시키기 위한 하드웨어/소프트웨어 기법을 학습 | ![]() |
|
12. | ![]() |
입출력장치 관리 | 운영체제에 의한 입출력장치 관리 기법을 익히고, 다양한 입출력장치를 컴퓨터 시스템에서 활용하기 위한 프로그래밍 구조를 학습 | ![]() |
![]() |
디스크 관리 | 보조기억장치로서의 하드디스크 운용 기법과 디스크 스케줄링 문제를 이해 | ![]() |