반응형

목차

01. 운영체제의 개요
02. 컴퓨터의 구조와 성능 향상
03. 프로세스와 스레드
04. CPU 스케줄링
05. 프로세스 동기화
06. 교착 상태
07. 물리 메모리 관리
08. 가상 메모리의 기초
09. 가상 메모리 관리
10. 입출력 시스템과 저장장치
11. 파일 시스템
12. 네트워크와 분산 시스템


스케줄링시 고려사항

 

선점형 스케줄링과 비선점형 스케줄링

선점형 스케줄링

→ 어떤 프로세스가 CPU를 할당 받아 실행중이여도 운영체제가 CPU를 강제로 뺏을 수 있는 스케줄링 방식.

비선점형 스케줄링

어떤 프로세스가 CPU를 할당 받아 실행중이여도 운영체제가 CPU를 강제로 뺏을 수 없는 스케줄링 방식.

 

선점형 스케줄링의 예시

인터럽트 처리가 있다.
선점형 스케줄링은  문맥 교환 같은 부가적인 작업으로 인해 낭비가 생긴다.
빠른 응답시간을 요구하는 대화형 시스템이나 시분할 시스템에 적합하다.
대부분의 저수준 스케줄링 방식에 사용된다.

비선점형 스케줄링의 예시

스케줄러의 작업량이 적고 문맥 교환에의 낭비가 적어진다.
효율이 떨어진다.

구분 선점형 비선점형
작업 방식 실행 상태에 있는 작업을 중단시키고 새로운 작업을 실행할 수 있다.  작업이 완료될 때까지 다른 작업이 불가능하다.
장점 프로세스가 CPU를 독점할 수 없어서 대화형 시스템이나 시분할 시스템에 적절. CPU 스케줄러의 작업량이 적고 문맥교환이 적다.
단점 문맥교환의 오버헤드가 많다. 기다리는 프로세스가 많아 처리율 감소
사용 시분할 방식 스케줄러 일괄 처리 방식 스케줄러
중요도 높다 낮다

 

프로세스 우선순위

대부분의 CPU 스케줄러는 우선순위를 사용한다.
우선순위 : 커널 프로세스 > 일반 프로세스

※ 우선순위가 높다는 것은 더 빨리 자주 실행된다는 것이다.

 

CPU 집중 프로세스와 입출력 집중 프로세스

프로세스는 CPU를 사용하여 작업을 하는 실행  상태 또는 입출력을 요청하여 완료되기까지 기다리는 대기 상태가 있다.

CPU를 할당받아 실행하는 작업을 CPU버스트라고 하고,
입출력 작업을 입출력 버스트라고 한다.


-CPU 집중 프로세스
CPU를 많이 사용하는 프로세스. 즉, CPU버스트가 많은 것.

-입출력 집중 프로세스
입출력 버스트가 많은 프로세스

CPU집중 프로세스와 입출력 집중 프로세스가 같이 있을때, 입출력 집중 프로세스를 실행 상태로 옮기는 것이 효율적이다.
왜냐하면, 입출력 집중 프로세스가 실행 상태로 가면 입출력 요구에 의해 대기 상태로 옮겨지기 때문에 다른 프로세스가 CPU를 사용할 수 있는 장점이 있다.

만약, CPU집중 프로세스가 먼저 실행 상태로 들어가면 자신의 타임 슬라이스를 다 쓸 때까지 다른 프로세스가 실행되지 못할 것이다.

 

전면 프로세스와 후면 프로세스

- 전면 프로세스
GUI를 사용하는 운영체제에서 화면의 맨앞에 놓인 프로세스를 말한다.
입력과 출력을 사용하는 프로세스, 상호작용 프로세스라고 한다.

- 후면 프로세스
상호 작용이 없는 프로세스, 사용자의 입력 없이 작동한다. 일괄 작업 프로세스라고 한다.

반응형

'Operating System' 카테고리의 다른 글

스케줄링 알고리즘  (0) 2022.04.13
다중 큐  (0) 2022.04.12
스케줄링의 개요  (0) 2022.04.10
스레드  (0) 2022.04.06
프로세스의 연산  (0) 2022.04.05