CPU에 의해서 현재 실행되고 있는 프로그램
PCB(Process Control Block) 존재로서 명시되는 것
PCB 비유 = 환자기록부 : 어떤 프로그램이 어떻게 실행중인지 정보를 담아놓은 곳
프로세서(CPU)가 할당되는 개체로서 디스패치가 가능한 단위
Dispatch : 준비 상태에서 실행 상태로 넘어가는 것
저장된 결과를 얻기 위한 일련의 계통적 동작
목적 또는 결과에 따라 발생되는 사건들의 과정
비동기적 행위를 일으키는 주체
동기(Synchronize) : 시간 '연속적'으로 맞춤 행위
비동기 : 시간을 '간헐적'으로 맞춤 행위
프로시저가 활동 중인 것
sw 프로그램도 여러 부품으로 이루어져 결합하여 실행하게 된다...
이 때 프로시저, 서브프로그램, 함수, 루틴이란 용어를 사용한다.
실행중인 프로시저의 제어 궤적
궤적 : CPU에서 처리되는 한 시점만이 프로세스가 아니라 실행해왔고 앞으로 실행할 범위도 프로세스 실행 궤적이라 한다.
CPU가 할당되는 실체
쉽게 말해서..
※오답정의※
디스크에 존재하는 프로그램 파일
단순 프로그램일 뿐 프로세스는 아니다!!
하드웨어 등 주변장치
하나의 프로그램 실행중이면 '단일 프로그램'
여러 프로그램이 실행중이면 '다중 프로그램'
< 프로세스 상태 전이도 >
준비(Ready) 상태 : 준비 상태에 있는 여러 프로세스 중 프로세스를 선책하여 CPU를 할당하는 시점
실행(Run) 상태 : CPU를 차치하고 있는 상태
보류(Block, 대기) 상태 : 처리 속도가 느린 I/O 수행 상태
디스패치(Dispatch) : 준비 상태에서 대기하고 있는 프로세스 중 하나가 CPU를 할당 받아 실행 상태로 변화하는 시점
Time Run Out : 자신에 할당된 시간만큼 CPU를 사용하고 준비 상태로 변하는 시점
CPU 1개가 프로그램 여러 개를 시간 분할 처리하여 마치 동시 실행처럼 보임
※병렬처리
CPU 여러 개가 프로그램 여러개를 동시에 처리
I/O 요구 : 프로세스가 CPU를 사용 중에 I/P 행위가 필요하여 보류 상태로 이동하는 시점
Wake Up : I/O 작업이 완료되어 준비 상태로 이동하는 시점
Suspend : 보류 상태에서 운영체제에 의해 일시적으로 벗어나는 상태
Resume : Suspended 상태에서 프로세스 활성화 상태로 복귀하는 상태
스풀(Spool) : 입출력(I/O) 장치의 속도 차를 극복하기 위한 장치로 대부분 하드디스크가 중재한다.
스풀은 영역, 스풀링(Spooling)은 행위 자체, 스풀러(Spooler)는 프로그램이다.
버퍼링(Buffering) : CPU와 입출력 장치와의 속도 차이를 줄이기 위해 메모리가 중재한다.
채널(Channel) : 입출력만을 담당하는 소형 CPU로 간단한 명령 구조와 레지스터를 가지고 있으며 입출력 장치와 통신하기 위한 간단한 장치로 구성되어 있다.
요청 : 프로세스는 특정 자원을 사용하기 전에 운영체제에게 자원 요청
사용 : 프로세스가 요청한 자원을 운영체제가 할당하면 자원을 사용
해제 : 프로세스가 사용한 자원은 다른 프로세스를 위해 자원 사용을 해제