본문 바로가기

728x90
반응형
PCB
728x90
반응형
2

CPU 스케줄링(1) : 기본 개념 다중 처리기 시스템에서는 어느 한순간에 다수의 프로세스들이 메모리 내에 위치하게 되고, 여러 개의 CPU가 수많은 프로세스들을 처리해야 하여 어떠한 프로세스의 대기가 발생하는 일이 발생한다. 이때 OS가 CPU를 쉬지 않고 여러 프로세스들을 끊임없이 작업 중일 수 있도록 프로세스의 배분 및 교환을 해주는 것을 CPU 스케줄링이라고 한다. 즉, 프로세스가 다른 일 처리하는 거 기다리는 동안 CPU 못 쉬게 하고 계속 굴리려고 일거리를 계속 갖다 주고 바꿔주고 하는 것!(이걸 프로세스의 생애주기 동안 모든 상태변화에 대해함) 스케줄링은 공평성, 효율성, 안정성, 반응 시간 보장, 무한 연기 방지를 목표로 한다. 1. 공평성: 모든 프로세스가 자원을 공평하게 배정받아야 하며, 특정 프로세스가 배제되어서는 안 .. 2020. 8. 14.
프로세스(3): Process Control Block PCB, CPU Switching PCB: 운영체제가 프로세스를 관리하기 위해 유지하는 정보의 보관소. 가 정의이지만 걍 현재 프로세스 상태의 모든 정보를 다 기록해놓는 곳이라고 생각하면 된다. 이전 포스팅에서 언급했던 running, waiting 등의 프로세스 상태 process state 부터, program counter, CPU registers, memory limits 등 메모리 관리 관련 정보, list of open files(열린 file 정보), 프로세스에 할당된 I/O 장치 정보 등 I/O관련 정보가 이에 포함된다. 각 프로세스가 생성될 때마다 고유의 PCB가 생성되고, 프로세스가 완료되면 PCB는 제거된다. 프로세스 간의 CPU 교환인 Switch는 다음과 같은 순서로 진행된다.(여기서는 process p0, p1.. 2020. 8. 2.