2025-12-10
오늘 배운 것
운영체제의 핵심 서비스
프로세스 관리
- 프로세스 : 실행중인 프로그램
- CPU는 한번에 하나의 프로세스만 실행할 수 있게 때문에 CPU는 이 프로세스 들을 조금씩 번갈아 가며 실행
- 따라서 운영체제는 다양한 프로세스를 일목요연하게 관리하고 실행
자원 접근 및 할당
- 모든 프로세스는 실행을 위해 자원을 필요로 함
- 운영체제는 프로세스들이 사용할 자원에 접근하고 조작함으로써 프로세스에 필요한 자원을 할당
- CPU
- 일반적으로 메모리에는 여러 프로세스가 적재되고 하나의 CPU는 한 번에 하나의 프로세스만 실행
- CPU 스케줄링을 통해 운영체제는 프로세스들에 공정하게 CPU를 할당하기 위해 어떤 프로세스부터 CPU를 이용하게 할 것인지, 얼마나 오래 CPU를 이용하게 할지를 결정할 수 있음
- 메모리
- 메모리에 적재된 프로세스들은 크기와 적재되는 주소가 가지각색
- 운영체제는 새로운 프로세스가 적재될 때마다 어느 주소에 적재해야 할지 결정
- 또한 메모리가 부족할 경우 어떻게 할당할지 결정
- 입출력 장치
- 운영체제가 제공하는 기능인 인터럽트 서비스 루틴과 입출력 장치가 발생시키는 하드웨어 인터럽트는 커널 영역에 존재
- 입출력 장치가 CPU에 하드웨어 입터럽트 요청 신호를 보내면 CPU는 하던 일을 잠시 백업한 뒤 커널 영역에 있는 인터럽트 서비스 루틴을 실행
- 운영체제는 인터럽트 서비스 루틴을 제공함으로써 입출력 작업 수행
파일 시스템 관리
- 운영체제는 보조 기억 장치 속 데이터를 파일과 디렉터리로 관리함