View
컴공전공자_따라잡기 | CH03. 프로세스와 스케쥴러의 이해-프로세스 상태와 스케쥴러, 프로세스 상태기반 스케쥴링 알고리즘 기본
Melody:) 2021. 11. 24. 22:43프로세스 상태와 스케쥴러
- 멀티 프로그래밍 : CPU 활용도를 극대화하는 스케쥴링 알고리즘
- Wait: 간단히 저장매체로부터 파일 읽기를 기다리는 시간으로 가정
프로세스 상태 5가지
주요 상태 정보 3가지
- ready state : CPU에서 바로 실행가능 상태(실행 대기 상태)
- running state : 현재 CPU에서 실행상태
=> 단일 CPU라면, running state의 프로세스는 1개 또는 0개가 된다. - block state : 특정 이벤트 발생 대기 상태(예: 프린팅이 다 되었다!)
=> waite 상태로 예를 들어 파일 읽기 요청을 기다리는 상태임. 요청이 오면 ready state로 변경됨. - new : 프로세스 생성 중
- exit : 종료를 진행할때, 프로세스가 가지고 있는 파일, 시스템 리소스 들을 풀어줘야하는 시간이 필요.
프로세스 상태 관계
살펴보기
- 아래 그림에서 CPU가 ready상태인 프로세스 1, 2, 3 중 2를 실행하였다고 하면, 2는 실행이 끝나고 wait상태가 되며, 프로세스 1,3은 여전히 ready 상태 임을 알 수 있다. 하지만 여기서 프로세스 1, 3 중 어떤 것을 실행 시킬지에 대한 기준이 필요하게 된다.
프로세스 상태를 기반으로 한 Queue 자료구조 알고리즘의 스케쥴링
- 1,2 프로세스의 실행이 끝나고 3번 프로세스만 남은 상태에서 중간에 3초라는 wait시간이 필요하기 때문에, CPU idle이 생기게 됨.
- CPU idle : CPU가 아무 것도 시행하지 않는 상태
- 이 밖에도 앞에서 공부한 최단시간, 우선순위에 따른 알고리즘을 적용할 수 있다.
'Computer Science > 운영체제(OS)' 카테고리의 다른 글
컴공전공자_따라잡기 | CH03. 프로세스와 스케쥴러의 이해-인터럽트 란?, 인터럽트 종류 (0) | 2021.11.26 |
---|---|
컴공전공자_따라잡기 | CH03. 프로세스와 스케쥴러의 이해-선점형과 비선점형 스케쥴러, 스케쥴링 알고리즘 조합 (0) | 2021.11.25 |
컴공전공자_따라잡기 | CH03. 프로세스와 스케쥴러의 이해-스케쥴링 알고리즘 기본 (0) | 2021.11.24 |
컴공전공자_따라잡기 | CH02. 스케쥴링 - 멀티 프로그래밍 (0) | 2021.11.24 |
컴공전공자_따라잡기 | CH02. 스케쥴링 - 배치 처리, 멀티 태스킹, 멀티프로세 (0) | 2021.11.23 |
reply