
: 프로세스에 대한 모든 정보가 모여있는 곳

프로그램의 메모리 적재 과정과 실행 등에서 Queue 라는 버퍼 이용
➡️ 용량의 한계와 성능의 향상 때문에

: 시스템에 제출된 모든 작업 또는 프로세스들이 처음으로도 도착하는 Queue
Job Queue 에 있는 작업은 아직 실행 X ➡️ 실행되기 위해선 Ready Queue 로 이동
Job Queue 에 도착한 작업 중에서 어떤 작업을 우선적으로 실행할지 결정하는 알고리즘
➡️ 일반적으로 먼저 도착한 작업 또는 우선순위가 높은 작업을 먼저 실행하거나, 시간 기반으로 작업을 스케줄링
: 실행을 위해 준비된 프로세스 또는 작업이 대기하는 대기열
Ready Queue 에 있는 작업은 CPU 할당을 받을 수 있는 상태 ➡️ 실행 대기 중
: Ready Queue 에 있는 프로세스 중 CPU를 할당할 프로세스를 선택하는 알고리즘
: 장치와 관련된 작업이 대기하는 대기열
작업이 입출력을 수행해야 할 때, 해당 작업은 CPU 에서 장치로 데이터를 보내고, 장치가 작업을 완료할 때까지 장치 대기열에서 대기
: Device Queue 에 있는 입출력 작업 중에서 어떤 작업을 먼저 처리할지 결정하는 알고리즘
➡️ 입출력 장치의 효율성을 높이고 대기 시간을 최소화하기 위해 사용
: 단일 프로세서 상에서 여러 개의 프로그램이 동시에 실행되는 것
프로세서는 한 번에 한 작업만 수행 가능
오잉? 동시에 실행되는 것? 모순
프로그램이 일부 수행되고 또 다른 프로그램이 일부 수행되는 식으로 진행되는데 이 속도가 빠르고 시간 텀이 매우 작기 때문에 사용자 눈에는 동시에 일어나는 것처럼 보인다!!!!!!!
A] --I/O 대기--> [B] --작업--> [C] --작업--> [D]
A 프로그램이 I/O 작업을 기다리는 동안, 운영체제는 [B] 프로그램으로 전환하여 CPU 유휴 시간을 줄인다. 이후에 [C], [D] 순서대로 작업이 진행된다.
한 프로세스가 대기 상태일 때 다른 프로세스를 실행하여 CPU 유휴 시간을 최소화하고, 전체적인 시스템 효율성과 처리량(throughput) 을 높인다.
wikipedia : 프로세스 관리
그만 까먹자~ : [운영체제(OS)] 5. 프로세스 관리
yeunjoo121.log : [운영채재] 프로세스 관리
끄적끄적 동커벨 : 멀티 프로그래밍이란?