210 likes | 396 Views
제 03 강 : 프로세스. 2 장 프로세스. Multi-user System. a.out. OS. 탐색기. hwp. game. boot. OS kernel. : Table (Data Structure). : Object (hardware or software). OS Kernel a.out. Hardware. CPU. mem. disk. tty. CPU. mem. disk. tty. Multi-user System. User A:. hwp. User B:. web.
E N D
제03강 : 프로세스 2장 프로세스
Multi-user System a.out OS 탐색기 hwp game boot OS kernel
: Table (Data Structure) : Object (hardware or software) OS Kernel a.out Hardware CPU mem disk tty CPU mem disk tty
Multi-user System User A: hwp User B: web a.out OS 탐색기 hwp game OS kernel
Process Control Block (PCB) Process 상태 process에 대한 일체 정보 CPU 정보 Program counter CPU 레지스터 값 스케줄링 정보 메모리 정보 주소 I/O 정보 상태 요금 정보 각 자원 사용량 기타 각종 자원
Process Control Block (PCB) Process 상태 process에 대한 일체 정보 CPU 정보 Program counter CPU 레지스터 값 스케줄링 정보 메모리 정보 주소 I/O 정보 상태 요금 정보 각 자원 사용량 기타 각종 자원 terminal 현재 directory (folder) open한 file들
: Table (Data Structure) : Object (hardware or software) User a.out Kernel a.out hwp hwp web Web PCB PCB OS Hardware CPU mem disk tty CPU mem disk tty
User a.out Process 3 hwp Web PCB PCB PCB memory 신청/대기 memory queue Hardware CPU mem disk tty
User a.out Process 3 hwp Web PCB PCB PCB CPU (ready) queue memory queue Hardware loaded CPU mem disk tty
User a.out Process 3 hwp Web PCB PCB PCB CPU (ready) queue memory queue Hardware runs CPU mem disk tty
User a.out Process 3 hwp Web PCB PCB PCB I/O 신청/대기 CPU (ready) queue memory queue disk queue Hardware CPU mem disk tty
User a.out Process 3 hwp Web PCB PCB PCB memory 신청/대기 memory queue Hardware CPU mem disk tty Job Queue Memory 기다림
Process Scheduling Queues • Job queue–메모리를 기다리는 프로세스들. Long-term scheduler (or job scheduler) degree of Multiprogramming 결정 • Ready queue–메모리에서 CPU를 기다리는 프로세스들 Short-term scheduler (or CPU scheduler) • Device queues–I/O를 기다리는 프로세스들 • disk scheduler
User a.out Process 3 hwp Web PCB PCB PCB CPU (ready) queue memory queue Hardware loaded CPU mem disk tty Ready Queue CPU 기다림
Process Scheduling Queues • Job queue–메모리를 기다리는 프로세스들. Long-term scheduler (or job scheduler) degree of Multiprogramming 결정 • Ready queue–메모리에서 CPU를 기다리는 프로세스들 Short-term scheduler (or CPU scheduler) • Device queues–I/O를 기다리는 프로세스들 • disk scheduler
User a.out Process 3 hwp Web PCB PCB PCB I/O 신청/대기 CPU (ready) queue memory queue disk queue Hardware CPU mem disk tty I/O Queue I/O를 기다림
Process State ready: CPU에서 실행할 준비됨 메모리 공간도 할당 받음 선택되면 CPU를 차지 (dispatch) running: CPU를 할당받고 실행 Time slice 동안만 CPU 사용 (Time quantum) waiting: I/O 등 요청 CPU 포기/양도 (blocked)
main() { int x; y = 30; x = read (file); y = x + 10; ….. ….. }
Process State ready: CPU에서 실행할 준비됨 메모리 공간도 할당 받음 선택되면 CPU를 차지 (dispatch) running: CPU를 할당받고 실행 Time slice 동안만 CPU 사용 (Time quantum) waiting: I/O 등 요청 CPU 포기/양도 (blocked)
Process 상태 memory 할당 timer interrupt exit ready running dispatch I/O request or other request I/O 끝남 request 만족 blocked