LabHub

운영체제 · 스케줄링 · 퀴즈

퀴즈: 스케줄링

LabHub 에서 이어서 보기

문항 7개. 정답과 해설은 풀어 본 뒤에 보여 드립니다.

  1. CPU 버스트가 각각 24, 3, 3 인 세 프로세스가 동시에 도착했다. FCFS 로 P1, P2, P3 순서로 실행할 때 평균 대기 시간은?

    1. 3 — P2, P3, P1 순서로 실행했을 때의 평균 대기 시간
    2. 10 — 세 프로세스의 버스트 시간을 평균한 값
    3. 27 — 마지막 프로세스 P3 의 대기 시간
    4. 17 — 대기 시간 0, 24, 27 의 평균
  2. SJF 가 평균 대기 시간 면에서 최적인데도 범용 스케줄러로 쓰이지 못하는 결정적 이유는?

    1. 구현이 너무 복잡해서
    2. 다음 CPU 버스트 길이를 미리 알 수 없어서
    3. 선점이 불가능해서
    4. 짧은 작업이 항상 손해를 보기 때문에
  3. 라운드 로빈의 시간 할당량을 지나치게 작게 잡으면 생기는 문제는?

    1. FCFS 와 동일하게 동작한다
    2. 기아가 발생한다
    3. 컨텍스트 스위치 오버헤드가 실제 작업 시간을 잠식한다
    4. 응답 시간이 길어진다
  4. 리눅스 CFS 에서 nice 값을 낮춰(우선순위를 높여) 실행하면 내부적으로 무엇이 달라지는가?

    1. 타임 슬라이스가 고정 길이로 두 배가 된다
    2. 가중치가 커져 vruntime 이 천천히 증가하므로 더 자주 선택된다
    3. 실시간 스케줄링 클래스로 승격된다
    4. 다른 태스크의 vruntime 이 강제로 증가한다
  5. 우선순위 스케줄링에서 기아(starvation)를 완화하는 표준적인 기법은?

    1. 에이징 — 대기 시간이 길어질수록 우선순위를 점진적으로 올린다
    2. 선점을 끈다
    3. 우선순위가 낮은 프로세스를 주기적으로 종료한다
    4. 시간 할당량을 늘린다
  6. 컨테이너의 CPU 몫(shares/weight)과 CPU 쿼터(quota)의 차이를 옳게 설명한 것은?

    1. 몫은 경합이 있을 때의 배분 비율이고, 쿼터는 주기마다 쓸 수 있는 시간의 절대 상한이다
    2. 둘은 같은 값을 다른 단위로 표현한 것이다
    3. 몫은 메모리에, 쿼터는 CPU 에 적용된다
    4. 쿼터는 경합이 있을 때만 적용된다
  7. CPU 평균 사용률은 낮은데 응답 지연의 꼬리만 주기적으로 튄다. CPU 쿼터가 걸린 컨테이너에서 가장 먼저 확인할 것은?

    1. 메모리 스왑 발생량
    2. 디스크 IOPS
    3. 스로틀링 횟수와 스로틀된 총 시간
    4. 네트워크 재전송률