(KOCW)운영체제-반효경 교수님강의를 정리하였습니다.
컴퓨터 시스템을 편리하게 사용할 수 있는 환경을 제공
운영체제는 동시 사용자/프로그램들이 각각 독자적 컴퓨터에서 수행되는 것처럼 보이게 함
하드웨어를 직접 다루는 복잡한 부분을 운영체제가 대행
컴퓨터 시스템의 자원을 효율적으로 관리
CPU, 메모리, I/O 장치 등의 효율적 관리
사용자 및 운영체제 자신의 보호
CPU : CPU 스케쥴링 ( 어떤 프로그램에게 CPU 사용권을 줄까?)
메모리 : 메모리 관리 (한정된 메모리를 어떻게 쪼개서 쓸까? )
디스크 : 디스크 스케쥴링 (디스크에 들어온 요청을 어떤 순서로 처리할까?)
컴퓨터 내부(CPU, 메모리)와 I/O 디바이스간의 처리속도는 굉장히 차이가 크다. -> 속도차를 어떻게 극복할까? -> 인터럽트, 캐싱
디스크내의 실행 파일(프로그램)을 실행하게 되면, 각 파일은 가상메모리를 생성하고, 물리적인 메모리에는 당장 필요한 부분만 담게 된다.
그리고 물리적 메모리의 용량이 가득차게 되면, 특정 페이지를 디스크(스왑영역)으로 보낸다.
디스크는 비휘발성 메모리, 메모리는 휘발성메모리
디스크(스왑영역) 또한 비휘발성메모리이지만, 컴퓨터 전원이 꺼지면 필요없는 정보가 된다.
메모리 관리 : 메모리 용량이 가득 찼을 때, 어떤 페이지를 삭제해야 하는가?
LRU : 가장 오래 전에 참조 페이지 삭제
LFU : 참조횟수가 가장 적은 페이지 삭제
이미지 출처
https://core.ewha.ac.kr/publicview/C0101020170306154617836038
https://core.ewha.ac.kr/publicview/C0101020170308134855263835