운영체제
수업 자료의 장 흐름에 맞춰 운영체제의 구조, 실행 단위, 스케줄링, 동기화, 메모리, 파일 시스템, 저장장치를 다루는 시리즈
- 운영체제 소개와 시스템 구조
운영체제의 정의와 역할, 컴퓨터 시스템 구성, 운영체제 서비스, 시스템 콜, 부트 과정, 운영체제 구조를 다룹니다.
- 프로세스
프로세스 개념, 프로세스 상태, 프로세스 스케줄링, 생성과 종료, 프로세스 간 통신을 다룹니다.
- 스레드와 동시성
스레드의 필요성, 멀티코어 프로그래밍, 멀티스레딩 모델, 스레딩 이슈를 다룹니다.
- CPU 스케줄링
스케줄링 기준, 스케줄링 알고리즘, 다중 처리기 스케줄링, 스레드 스케줄링을 다룹니다.
- 프로세스 동기화
임계 구역 문제, Peterson 해법, 하드웨어 동기화 지원, 세마포어, 모니터, liveness를 다룹니다.
- 교착 상태
교착 상태의 조건, 자원 할당 그래프, 예방, 회피, 탐지, 복구 전략을 다룹니다.
- 메모리 관리
주소 변환, 스와핑, 연속 메모리 할당, 페이징, 페이지 테이블 구조, 세그멘테이션을 다룹니다.
- 가상 메모리
요구 페이징, 페이지 교체, 스래싱, 커널 메모리 할당을 다룹니다.
- 파일 시스템과 저장장치
파일 개념, 파일 시스템 구현, 할당 방법, 디스크 구조, SSD 특성, 디스크 스케줄링, RAID를 다룹니다.