inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

CS 전공지식 스터디 3기 [2주차] 운영체제 미션

jinwoo2511
0

CS 전공지식 스터디 3기 [2주차] 운영체제 미션

Q. FIFO 스케줄링의 장단점이 뭔가요?

A.

FIFO(First In, First Out) 스케줄링은 먼저 도착한 프로세스가 먼저 실행되는 방식의 스케줄링 알고리즘입니다.
이는 큐(Queue) 구조를 사용하며, 도착한 순서대로 실행되기 때문에 공평하지만 비효율적인 경우가 발생할 수 있습니다.

 

 

image

FIFO 스케줄링 수행 과정

 

Q. SJF를 사용하기 여러운 이유가 뭔가요?

A.

SJF(Shortest Job First) 스케줄링은 CPU 실행 시간이 가장 짧은 프로세스를 먼저 실행하는 방식입니다.
즉, Burst Time(실행 시간)이 짧은 순서대로 프로세스를 실행하기 때문에 평균 대기 시간(AWT)이 최소화되는 장점이 있습니다.

 

SJF 스케줄링의 종류

  1. 비선점형 SJF (Non-Preemptive SJF)

    • 실행 중인 프로세스가 끝날 때까지 CPU를 점유 (중간에 빼앗기지 않음)

     

  2. 선점형 SJF (Preemptive SJF, SRTF: Shortest Remaining Time First)

    • 새로운 프로세스가 도착하면 현재 실행 중인 프로세스와 실행 시간을 비교하여 더 짧은 실행 시간이 남은 프로세스가 있으면 CPU를 빼앗김

 

image

실행 순서

SJF를 사용하기 어려운 이유

 

Q. RR 스케줄링에서 타임 슬라이스가 아주 작으면 어떤 문제가 발생할까요?

A.

RR(Round Robin) 스케줄링은 각 프로세스가 일정한 시간(Time Quantum) 동안만 실행되며, 시간이 지나면 다음 프로세스로 넘어가는 방식입니다.
즉, 모든 프로세스가 공평하게 CPU를 사용할 수 있도록 설계된 선점형(Preemptive) 방식입니다.

RR스케줄링의 타임 슬라이스가 아주 작으면 아래와 같은 문제가 발생합니다.

하지만 RR 스케줄링은 모든 프로세스가 공평하게 실행되고, 응답 시간이 빨라서 실시간 시스템에 적합하다는 장점이 있습니다.

 

Q. 운영체제가 MLFQ에서 CPU Bound Process와 I/O Bound Process를 어떻게 구분할까요?

A.

MLFQ(Multi-Level Feedback Queue, 다단계 피드백 큐) 스케줄링은 여러 개의 큐를 사용하여 프로세스를 우선순위별로 분류하고, 프로세스의 실행 시간이나 행동 패턴에 따라 다른 큐로 이동시키는 방식입니다.

즉, CPU 사용 시간에 따라 우선순위가 조정되며, 프로세스가 낮은 우선순위로 이동할 수도 있고 다시 높은 우선순위로 복귀할 수도 있는 유동적인 스케줄링 방식입니다.

운영체제는 프로세스의 행동 패턴을 기반으로 CPU Bound Process와 I/O Bound Process를 구분합니다.

Q. 공유자원이란무엇인가요?

A.

 

Q. 교착상태에 빠질 수 있는 조건은 어떤 것들을 충족해야 할까요?

A.

교착 상태는 4가지 조건을 모두 만족해야 교착 상태에 빠지게 됩니다.

아래 4가지 중 한가지라도 만족하지 않는다면, 교착 상태에 빠지지 않게 됩니다.

교착 상태 4가지 조건

답변 0