스케줄링
장기 작업 프로그래머: 독립 실행형 패키지의 개별 대기열을 유지하는 데 사용됩니다. 우선 연결해서 여러분이 어떤 활동을 할 것인지 결정합니다. 또는 하드 디스크에서 메모리에 로드될 프로그램을 결정합니다.
CPU 스케줄러(CPU)는 메모리 상태 프로세스 중에 먼저 수행해야 하는 프로세스를 감지하기 위해 프로세서를 지정하는 프로그래머입니다.
중간 프로그래머: 가상 메모리가 너무 많은 프로세스를 로드하면 하드 디스크에 I/O가 너무 많아져서 시스템 오류가 발생할 수 있습니다. 현재는 교환 방식이 사용되고 있다. 일부 프로세서 메모리는 디스크로 내보내지고 시간과 공간에 따라 로드됩니다.
스케줄링 발생
계획은 현재 실행 중인 프로세스가 다른 상태로 이동한 후 실행할 프로세스를 선택하는 것입니다. 계획 목표는 준비 목록에 포함된 프로세스에 의해 제한됩니다.
분배 시간이 경과하면 인터럽트가 발생하는 경우, 요청이 있는 경우, 신호 대기일 경우, 준비 목록에 포함되어 계획 대상이 된다.
CPU Burst
CPU 버스트 시간: CPU를 입출력 요청에 할당한 후 실행 시간, 일반적으로 프로세스는 버스트 CPU와 버스트 I/O를 번갈아 수행합니다. Non-Picture Forms 형식은 입출력 요청으로 인해 프로세스가 자발적으로 CPU를 반환할 때까지 프로세서가 실행되도록 보장하는 프로그램입니다.
이는 총 미션 지속시간 또는 CPU 할당량을 한 번 말합니다. 즉, 서비스(FCFS) / 첫 번째 단기 고용(SJF) / 우선순위 프로그래밍은 예방적 프로그래밍 알고리즘이 아닙니다.
시스템이 종료되거나 종료된 후 우선 프로세스가 나타나는 시간표입니다. 현재 프로세스에서 CPU를 강제로 복원합니다.
비선점 알고리즘
비선점 알고리즘은 CPU 부하가 가장 적은 작업의 CPU를 대기 작업 간에 분배하는 방법이다. 그러나, 도착 시간을 고려하여, 아직 도착하지 않은 과정은 예정대로 진행되지 않기 때문에 더 긴 과정을 우선 배정할 수 있다.
사실 CPU 폭발 시간을 미리 알기란 어렵다. 스케줄링 장기 계획에서는 근무 시간 예측이 함께 제시될 수 있다. 그러나 단기 계획에서는 CPU의 다음 로드 시간을 미리 알 수 없기 때문에 사용하기 어렵습니다.
때문에 다음 폭발 기간은 이전 폭발 기간을 분석함으로써 예측된다. 다음 버스트 시간을 지수 버스트 타임 평균으로 간주하기 위해 주로 사용되는 방법이 있습니다.
우선 순위 스케줄링
우선순위 스케줄링은 프로세스 자체가 우선순위를 정하고 프로세스가 가장 높은 우선순위를 갖는다. FCFS는 순위가 동일할 경우 적용된다. 결국 SJF가 우선순위에 포함되었다고 할 수 있다.
CPU 부하, 메모리 요구량, 사용된 파일 수 및 내부 우선순위에 대한 가중 평균 I/O 고려해야 한다. 또한, 사용료, 정책변수와 같은 외부 우선순위 고려해야 한다. 일반적으로 프로세스 I/O가 프로세스보다 우선순위가 높기 때문에 대화 상자가 커집니다.
이러한 기아 상태는 노화(에이징)로 해결할 수 있다. 시스템에 필요한 시간을 늘리면 우선순위가 높아진다. 우선순위가 아무리 낮더라도 시간이 지남에 따라 우선순위가 높아지며, 결국 당신은 프로세서를 할당할 수 있다.
라운드 로빈
준비 큐를 원형 대기 목록으로 간주되며 짧은 시간(시간) 동안 각 프로세스에 프로세서를 할당합니다. 생산성은 시간의 크기에 따라 크게 달라진다. 매우 큰 양자는 그것을 FCFS와 비슷하게 만든다. 매우 작은 상황 교환으로 인해 운영 비용이 증가하여 처리 속도가 감소한다.
평균 반환 시간은 일반적으로 SJF보다 길며, 작업이 아무리 짧더라도 다른 임무가 첫 번째 줄에 있을 경우 각 시간 시퀀스가 적어도 한 번 통과해야 하기 때문입니다. 그러나 스케줄링 장점은 모든 과정이 평등하고 배고픔을 유발하지 않는다는 것이다.
일반적으로, 시간이 길어질수록 평균 환불 시간을 개선할 수 있다. 대부분의 작업이 동시에 처리될 가능성이 높아졌기 때문이다. 하지만 이것은 반드시 그렇지는 않습니다.
왜냐하면 많은 짧은 수술들이 긴 수술보다 늦게 치료될 수 있기 때문입니다. 대부분의 프로세스가 시간이 지남에 따라 작동하면 평균 반환 시간이 증가합니다.
다단계 피드백 큐 스케줄링
각 대기열은 최우선 순위를 가지며 모든 상위 대기열은 비어 있을 때까지 작동할 수 없습니다. 우선순위는 목표에 따라 결정되며, 각 우선순위에 대해 준비 순서는 별도로 정한다.
스케줄링 우선순위가 낮은 과정은 배고픔을 느끼게 할 수 있다. CPU를 프로세스 대기열에 우선적으로 할당한다. 각 큐는 원형 로봇이나 FCFS와 같은 알고리즘을 독립적으로 사용할 수 있다.
정리
- 프로세스 스케줄러는 실행 가능한 프로세스 중 하나를 선택하고 CPU가 프로세스를 실행하도록 강제한다.
- 프로세스가 메모리에 나타나면 생성, 준비, 실행, 대기 및 중지 상태가 된다. CPU 스케줄링은 프로세스 라이프사이클을 관리하고 스케줄링을 통해 CPU 효율성을 극대화합니다.
- 캐패시터는 CPU 스케줄러가 선택한 CPU의 코어를 제어하는 모듈이다. CPU 프로그램은 CPU 사용량, 처리량, 총 처리 시간, 지연 및 시간에 따라 프로그래밍된다.
- 프로세서 예약은 보류 중인 예약과 예약되지 않은 예약을 포함하며, 이는 프로세서 사용을 배제할 수 있는 것으로 나뉜다.
- 우선순위가 낮은 대기열에 있는 프로세스가 중단될 수 있습니다.
- 가장 중요한 디퍼 큐가 절대적인 우선순위를 가지기 때문에 우선순위가 높은 큐가 모두 비워질 때까지 우선순위가 낮은 큐의 프로세스를 실행할 수 없습니다.
2022.10.23 - [운영체제] - 입출력 시스템 (I/O System) 핵심 요약 정리
입출력 시스템 (I/O System) 핵심 요약 정리
입출력 시스템 입출력 시스템 장치는 시스템 버스에 연결되어야 하며, 물리적 I/O 장치는 시스템 버스에 직접 연결해서는 안 된다. 즉, 장치 드라이버가 시스템 버스에 연결되어 있다. 하드웨어
hotpeople.co.kr
'연예인' 카테고리의 다른 글
스레싱 (Thrashing) 핵심 요약 정리 (0) | 2022.10.26 |
---|---|
파일 시스템 (File System) 핵심 요약 정리 (0) | 2022.10.25 |
입출력 시스템 (I/O System) 핵심 요약 정리 (0) | 2022.10.23 |
커널 입출력 (Kernel I/O Subsystem) 핵심 요약 정리 (0) | 2022.10.23 |
패스워드 보호 원칙 (Password protection) 핵심 요약 정리 (0) | 2022.10.13 |