프로세스 : 실행중인 프로그램
프로세스의 문맥(context)
프로세스의 상태
- Running
CPU를 잡고 instruction을 수행중인 상태- Ready
CPU를 기다리는 상태- Blocked
CPU를 주어도 당장 instruction을 할 수 없는 상태
Process 자신이 요청한 event가 즉시 만족되지 않아 이를 기다리는 상태(ex. 디스크에서 파일을 읽어와야 하는 경우- Suspended(stopped)
외부적인 이유로 프로세스의 수행이 정지된 상태
프로세스는 통째로 디스크에 swap out된다
-> New : 프로세스가 생성중인 상태
-> Terminated : 수행이 끝난 상태
-> Blocked : 자신이 요청한 event가 만족되면 ready
-> Suspended : 외부에서 resume해 주어야 Active
(1) OS가 관리상 사용하는 정보
(2) CPU 수행 관련 하드웨어 값
(3) 메모리 관련
(4) 파일 관련
CPU를 한 프로세스에서 다른 프로세스로 넘겨주는 과정
CPU가 다음 프로세스로 넘어갈 때 운영체제가 수행하는 것
프로세스를 스케줄링하기 위한 큐
1. JOB queue : 현재 시스템 내에 있는 모든 프로세스의 집합
2. Ready queue :
현재 메모리 내에 있으면서 CPU를 잡아서 실행되기를 기다리는 프로세스의 집합
3. Device queues : I/O device의 처리를 기다리는 프로세스의 집합