[인프런 워밍업 클럽 3기] CS - 2주차 미션 (운영체제)

[인프런 워밍업 클럽 3기] CS - 2주차 미션 (운영체제)

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

  • 장점 : 단순하고 직관적임

  • 단점 : 한 프로세스가 완전히 끝나야 다음 프로세스가 시작되기 때문에 실행시간이 짧고 늦게 도착한 프로세스가 실행시간이 길고 빨리 도착한 프로세스의 작업을 기다려야 한다는 것

    또한, IO 작업이 있다고 한다면 CPU는 IO 작업이 끝날 때까지 쉬고있기 때문에 CPU 사용률이 떨어짐

     

     

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

  • SJF은 Shortest Job First의 약어로 버스트 타임이 짧은 프로세스를 먼저 실행하는 것

사용이 어려운 이유는 다음과 같음

  1. 어떤 프로세스가 얼마나 실행될지 예측하기 힘듬

    • 프로세스의 종료 시간은 예측하기가 거의 불가능

  2. 버스트 타임이 긴 프로세스는 아주 오랫동안 실행되지 않을 수 있음

    • 버스트 타임이 짧은 프로세스가 중간에 계속 들어오면 버스트 타임이 긴 프로세스는 앞의 모든 프로세스가 종료될 때까지 기다려야함

 

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

  • 문맥 교환 Context Switch 이 자주 발생하여 타임 슬라이스에서 실행되는 프로세스의 처리량보다 문맥 교환을 처리하는 양이 훨씬 커지게됨

 

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

  • CPU를 사용하는 프로세스가 실행하다가, 스스로 CPU를 반납하면 CPU 사용이 적은것이니 I/O Bound Process 일 가능성이 높다 생각하고 I/O Bound Process 로 판단

  • CPU를 사용하는 프로세스가 타임 슬라이스 크기를 오버해서 CPU 스캐줄러에 의해 강제로 CPU를 뺏기는 상황이면 CPU Bound Process 일 확률이 높다 생각하고 CPU Bound Process로 판단

 

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

  • 프로세스 간 통신을 할 때 공동으로 이용하는 변수나 파일 들을 공유자원이라고 함

 

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

  1. 상호 배제

  2. 비선점

  3. 점유와 대기

  4. 원형 대기

댓글을 작성해보세요.

채널톡 아이콘