프로세스(1)
프로세스란?
: 실행중인 프로그램
프로세스의 context
: 특정 시점에서 프로세스의 상태를 규명하기 위한 요소들
프로세스의 상태(state)
- Running : CPU를 잡고 instruction을 수행중인 상태
- Ready : CPU를 기다리는 상태
- Blocked(wait, sleep)
: CPU를 주어도 당장 instruction을 수행할 수 없는 상태
ex) 디스크에서 file을 읽어온 후 처리해야 하는 경우 - Suspended
: 외부적인 이유로 프로세스의 수행이 정지된 상태
프로세스 통째로 디스크에 swap out 된다.
ex) 메모리에 너무 많은 프로세스가 올라와 있을 때
Process Control Block(PCB)
: 운영체제가 각 프로세스를 관리하기 위해 프로세스당 유지하는 정보
(1) OS가 관리상 사용하는 정보
- Process state, Process ID, scheduling information, priority
(2) CPU 수행 관련 하드웨어 값
- Program counter, registers
(3) 메모리 관련
- Code, data, stack의 위치 정보
(4) 파일 관련
Context Switch
: CPU를 한 프로세스에서 다른 프로세스로 넘겨주는 과정
- CPU를 내어주는 프로세스의 상태를 PCB에 저장
- CPU를 새롭게 얻는 프로세스의 상태를 PCB에서 읽어옴
-> 한 프로세스가 CPU를 잃었다가 다시 얻었을때, 이전에 실행되었던 위치의 다음부터 실행이 된다.
**반효경 교수님 KOCW 공개강의 정리**
Author And Source
이 문제에 관하여(프로세스(1)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@d_velohg/운영체제-프로세스1저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)