OS=OPERATING SYSTEM = 운영체제
접근제어+동기화+관리
- 프로세스들 관리하기 (자원관리)
컴퓨터가 ‘국가’ 라면 운영체제는 ‘정부조직’ 이다 스레드는 ‘개인’이고 프로세스는 ‘가족’ 이다
커널영역 - 유저영역
프로세스는 각자의 전용공간을 가지고 있다. (virtual Memory)
이 안의 작업단위가 쓰레드임
따라서, 쓰레드들은 프로세스에게 할당된 전용공간을 공유한다.
따라서 동기화가 중요하다.
가장 중요한 전산자원은 cpu와 메모리이다. 운영체제는 이것을 프로세스에게 분배환다.
이를 분배하는 것을 스케줄링이라 한다.
쓰레드마다 stack, 프로세스마다 heap과 실행코드 영역을 갖는다.
가상메모리란?
RAM과 HDD를 하나의논리적 메모리로 추상화시킨 메모리 관리 방법
모든 메모리는 ‘페이지’ 단위로 관리되며
Paged 될 수 있는 ‘페이징 풀’ 영역과 절대로 Paged되면 안 되는 ‘비페이징 풀’ 영역이 있다. (커널)
프로세스가 운영체제로부터 메모미를 할당 받는 일은 시간이 꽤 많이 걸린다.