본문 바로가기
목차훔치기/면접을 위한 CS 전공지식 노트

비선점형 방식(면접을 위한 CS 전공지식 노트)

by 해삼2 2023. 9. 24.
728x90
반응형
비선점형 방식

비선점형 방식

비선점형 방식(Non-preemptive scheduling)은 컴퓨터 시스템에서 프로세스나 작업을 관리하고 

스케줄링하는 방법 중 하나입니다. 

이 방식은 프로세스가 자원을 점유하고 있는 동안에는 다른 프로세스가 

그 자원을 강제로 빼앗지 않는 방식으로 동작합니다. 

한 번 시작된 프로세스는 자발적으로 종료되거나 완료된 후에만 다른 프로세스가 실행될 수 있습니다.

비선점형 방식은 간단하고 예측 가능하며, 작업 간 전환 오버헤드(스위칭 오버헤드)가 적습니다. 

이러한 특징으로 인해 리소스가 한 번 할당되면 계속 사용될 수 있어야 하는 실시간 시스템이나 

단순한 응용 프로그램에 적합합니다.

 

비선점형 방식 대표적인 예

FIFO(First-In-First-Out): 

먼저 도착한 작업이 먼저 실행되는 방식입니다. 

가장 간단한 형태의 비선점형 스케줄링 알고리즘 중 하나입니다.

SJF(Shortest Job First): 

ㅂ실행 시간이 가장 짧은 작업이 가장 먼저 실행되는 방식입니다. 

먼저 도착한 작업 중에서 실행 시간이 가장 짧은 작업을 선택합니다.

Priority Scheduling: 

작업에 우선순위를 할당하고, 우선순위가 가장 높은 작업이 실행됩니다. 

동일한 우선순위를 가진 작업들 중에서는 FIFO 또는 다른 비선점형 알고리즘을 사용하여 스케줄링합니다.

FCFS(First-Come-First-Served): 

먼저 도착한 작업이 먼저 실행되며, 실행 중에 다른 작업이 중간에 끼어들지 않습니다.

비선점형 방식은 간단하고 오버헤드가 낮지만, 

작업의 실행 시간이 긴 경우에 다른 작업들이 오래 기다려야 할 수 있으며, 

작업의 우선순위를 변경하기 어렵다는 단점이 있습니다. 

따라서 작업의 종류나 시스템의 요구에 따라 선점형 방식과 비선점형 방식을 적절히 조합하여 

사용하는 경우가 많습니다.

 

비선점형 방식 자세히 알기!!

FIFO (First-In-First-Out):
FIFO 스케줄링은 먼저 등장한 학생이 먼저 처리되는 방식입니다.
해성이가 학교 도서관에서 책을 빌리려고 할 때, 도서관에서 먼저 도착한 학생이 먼저 책을 빌립니다. 

해성이가 그다음으로 온다면, 그 순서대로 책을 빌릴 수 있습니다.


SJF (Shortest Job First):
SJF 스케줄링은 실행 시간이 가장 짧은 작업을 가장 먼저 처리하는 방식입니다.
해성이가 학교에서 숙제를 하려는데, 

여러 개의 과목 중에서 가장 빨리 끝낼 수 있는 과목부터 시작합니다. 

즉, 숙제 시간이 가장 짧은 과목부터 해서 마칩니다.


Priority Scheduling:
Priority Scheduling은 작업에 우선순위를 부여하고, 

가장 높은 우선순위를 가진 작업을 가장 먼저 처리합니다.
해성이가 학교에서 공부와 운동을 할 때, 공부를 더 중요하게 여기면 공부에 먼저 집중하고, 

나중에 운동을 합니다. 그래서 공부가 더 높은 우선순위를 갖고 있습니다.


FCFS (First-Come-First-Served):
FCFS 스케줄링은 먼저 온 학생이 먼저 처리되는 방식입니다.
해성이가 학교에서 수업을 듣고 나갈 때, 학교 출구에서 먼저 온 학생부터 나갈 수 있습니다. 

그래서 도착한 순서대로 출구를 이용합니다.
이렇게 각 스케줄링 방식은 학교에서 해성이와 같은 상황에서 

어떤 작업을 어떤 순서로 처리할지를 결정하는 데 사용될 수 있습니다.

 

 

*바쁜 사람을 위한 깜찍한 정리

비선점형 방식이란 컴퓨터 시스템에서 프로세스나 작업을 관리하고 스케줄링하는 방법 중 하나입니다. 비선점형 방식은 프로세스가 자원을 사용하고 있으면 다른 프로세스가 그 자원을 빼앗지 않는 방식으로 동작을 하는데 내가 워드 작업을 하고 있으면 CPU는 그 프로세스를 할당시켜주고 다른 프로세스가 할당받은 프로세스를 접근하지 못하게 막는 것입니다. 대표적으로는 FIFO, SJF, FCFS 등이 있습니다.

 

 

728x90
반응형