[워밍업 클럽 3기 CS 전공지식] 2주차 운영체제 미션

[워밍업 클럽 3기 CS 전공지식] 2주차 운영체제 미션

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

  • 장점

    • 먼저 들어온 작업이 먼저 처리되기 때문에 공평하게 프로세스들에게 CPU를 할당할 수 있습니다.

  • 단점

    • 먼저 들어온 프로세스가 완전히 끝나야지만 다음 프로세스가 실행될 수 있습니다.

    • 먼저 들어온 프로세스의 Burst Time(실행 시간)이 긴 경우 나중에 들어온 Burst Time이 짧은 프로세스의 오래 대기해야 합니다.

 

  1. SJF를 사용하기 어러운 이유가 뭔가요?

  • Burst Time이 짧은 프로세스를 먼저 실행해서 대기 시간을 줄여 성능을 최적화 한다는 이상이 있습니다.

  • 하지만 먼저 들어온 Burst Time이 긴 프로세스 있어도 나중에 들어온 Burst Time이 짧은 프로세스가 먼저 작업을 처리되므로 Burst Time이 긴 프로세스가 작업이 처리되는데 오래 걸립니다.

 

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

  • 프로세스 간 컨텍스트 스위칭이 자주 발생합니다.

  • 컨텍스트 스위칭이 일어날 때 프로세스들의 정보를 저장하고 정보를 불러오는 작업으로 인해 오버헤드가 발생할 수 있습니다.

  • 프로세스 자체가 작업하는 시간보다 컨텍스트 스위칭 작업에 더 많은 시간이 들여집니다.

 

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

  • 프로세스에게 CPU를 할당하고 운영체제가 준 타임 슬라이스를 다 쓰고 강제로 빼앗기는 경우 CPU 사용률이 많다고 판단하고 CPU Bound Process 라고 인지합니다.

  • 프로세스에게 CPU를 할당하고 운영체제가 준 타임 슬라이스를 다 쓰지 않고 CPU 할당 해제한 경우 CPU 사용률이 적다고 판단하고 I/O Bound Process 라고 인지합니다.

 

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

  • 여러 프로세스 또는 여러 쓰레드 간에 공동으로 사용되는 자원(변수나 파일들)을 뜻합니다.

 

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

    1. 교착상태가 발생하기 위해서는 4가지 필요 조건이 모두 충족되어야 합니다.

      1. 상호배제

        1. 자원은 한 번에 하나의 프로세스만 사용할 수 있어야 합니다.

        2. 프로세스A가 한 자원을 점유했다면 그 자원은 프로세스B에게 공유될 수 없습니다.

      2. 비선점

        1. 이미 할당된 자원은 사용이 끝날 때까지 강제로 빼앗을 수 없어야 합니다.

        2. 프로세스A가 자원을 점유하고 있는데 프로세스B가 그 자원을 빼앗을 수 없어야 합니다.

           

      3. 점유와 대기

        1. 프로세스가 이미 하나 이상의 자원을 점유한 상태에서 다른 프로세스가 사용하고 있는 자원을 추가로 요청하며 대기해야 합니다.

        2. 어떤 프로세스가 자원A를 가지고 있는 상태에서 자원B를 원하며 대기하는 상태여야 합니다.

      4. 원형 대기

        1. 점유와 대기를 하는 프로세스들의 관계가 원형을 이루고 있습니다.

           

 

 ※ 출처

[인프런 / 그림으로 쉽게 배우는 운영체제 (감자) / 섹션 4~7]

댓글을 작성해보세요.

채널톡 아이콘