프로세스
프로세스는 다음과 같이 여러 가지로 정의할 수 있습니다.
- 실행중인 프로그램
- PCB를 가진 프로그램
- 실기억장치에 저장된 프로그램
- 프로세서가 할당되는 실체
- 프로시저가 활동중인 것
- 비동기적 행위를 일으키는 주체
- 지정된 결과를 얻기 위한 일련의 계통적 동작
- 목적에 따라 발생되는 사건들의 과정
- 운영체제가 관리하는 실행 단위
PCB란 'Process Control Block', 즉 프로세스 제어 블록으로, 운영체제가 프로세스에 대한 중요한 정보를 저장해 놓는 곳입니다. 프로세스가 생성될 때마다 고유의 PCB가 생성되고, 프로세스가 완료되면 PCB는 제거됩니다.
★ 프로세스 상태 전이
※ 교통량 제어기 : 프로세스의 상태에 대한 조사와 통보를 담당
스레드는 시스템의 여러 자원을 할당받아 실행하는 프로그램의 단위로, 프로세스 내에서의 작업 단위입니다. '경량 프로세스'라고도 부릅니다.
- 단일 스레드 : 프로세스 1개에 스레드 1개
- 다중 스레드 : 프로세스 1개에 스레드 여러 개
스케줄링
스케줄링이란 시스템의 여러 자원을 프로세스에게 할당하는 작업을 의미합니다. 스케줄링의 목적은 다음과 같습니다.
- 공정성
- 처리율 증가
- CPU 이용률 증가
- 우선순위 제도
- 오버헤드 최소화
- 응답 시간 최소화
- 반환 시간 최소화
- 대기 시간 최소화
- 균형 있는 자원의 사용
- 무한 연기 회피
스케줄링의 종류
장기 스케줄링 | 중기 스케줄링 | 단기 스케줄링 |
어떤 프로세스가 자원을 차지할 지 결정 | 어떤 프로세스가 CPU를 할당받을 지 결정 | CPU를 할당받는 시기와 할당받을 프로세스를 지정 |
비선점 스케줄링 | 선점 스케줄링 |
이미 할당된 CPU를 다른 프로세스가 빼앗을 수 없음 | 우선 순위가 높은 프로세스가 CPU를 빼앗을 수 있음 |
FCFS, SJF, 우선순위, HRN, 기한부 | RR, SRT, 선점 우선순위, 다단계 큐, 다단계 피드백 큐 |
※ FCFS : 준비상태 큐에 도착한 순서대로 CPU를 할당
※ SJF : Shortedt Job First, 실행 시간이 짧은 순서대로 CPU를 할당
※ HRN : '(대기 시간 + 서비스 시간) / 서비스 시간' 값이 큰 것부터 CPU를 할당 ★
※ 대기 시간 : 바로 앞 프로세스까지의 진행 시간
※ 반환 시간 : 대기 시간 + 실행 시간
'etc. > 정보처리기사' 카테고리의 다른 글
★ 운영체제 기본 명령어 (0) | 2021.09.29 |
---|---|
환경 변수 (0) | 2021.09.29 |
기억장치 관리 (0) | 2021.09.28 |
★★ 운영체제의 종류 (0) | 2021.09.27 |
운영체제 (0) | 2021.09.27 |