티스토리 뷰

반응형


 

연습문제

1. 시스템 내 전체 프로세스의 수를 조절하는 것으로, 장기 스케줄링 또는 작업 스케줄링이라 불리는 스케줄링 수준은 무엇인가?

    고수준 스케줄링

 

 

2. 어떤 프로세스에 CPU를 할당하고 어떤 프로세스를 대기 상태로 보낼지 등을 결정하는 스케줄링 수준은 무엇인가?

    저수준 스케줄링

 

 

3. 어떤 프로세스가 CPU를 할당받아 실행 중이더라도 운영체제가 CPU를 강제로 빼앗을 수 있는 스케줄링은 무엇인가?

    선점형 스케줄링

 

 

4. 현재 입출력을 진행하는 프로세스로, 사용자와 상호작용이 가능하여 상호작용 프로세스라고도 불리는 것은 무엇인가?

    전면 프로세스

 

 

5. 준비 큐에 도착한 순서대로 CPU를 할당하는 비선점형 스케줄링 알고리즘은 무엇인가?

    FCFS 스케줄링

 

 

6. 준비 큐에 있는 프로세스 중 실행시간이 가장 짧은 작업부터 CPU를 할당하는 비선점형 스케줄링 알고리즘은 무엇인가?

    SJF 스케줄링

 

 

7. SJF 스케줄링 알고리즘의 단점으로 크기가 큰 작업이 계속 뒤로 밀리는 현상을 무엇이라 하는가?

    아사 현상, 무한 봉쇄 현상

 

 

8. 아사 현상을 해결하는 방법을 설명하시오.

    에이징

 

 

9. 서비스를 받기 위해 대기한 시간과 CPU 사용시간을 고려하여 우선순위를 정하는 스케줄링 알고리즘은 무엇인가?

    HRN 스케줄링

 

 

10. 프로세스가 할당받은 시간(타임 슬라이스) 동안 작업하다가 작업을 완료하지 못하면 준비 큐의 맨 뒤로 가서 다음 자기 차례가 올 때까지 기다리는 선점형 스케줄링 알고리즘 중 가장 단순한 것은 무엇인가?

    라운드 로빈 스케줄링

 

 

11. 타임 슬라이스의 크기와 문맥 교환의 관계를 설명하시오.

    타임 슬라이스가 작으면 문맥 교환이 많아진다.

    타임 슬라이스가 크면 문맥 교환이 적어진다.

 

    따라서 타임 슬라이스의 크기와 문맥 교환의 관계는 반비례 관계다.

 

 

12. 기본적으로 라운드 로빈 방식을 사용하지만, CPU를 할당받을 프로세스를 선택할 때 남아있는 작업 시간이 가장 적은 것을 선택하는 스케줄링 알고리즘은 무엇인가?

    SRT 스케줄링

 

 

13. 우선순위에 따라 준비 큐를 여러 개 사용하며 고정형 우선순위를 적용하는 스케줄링 알고리즘은 무엇인가?

    다단계 큐 스케줄링

 

 

14. 우선순위에 따라 준비 큐를 여러 개 사용하며 프로세스가 CPU를 사용한 후 우선순위가 낮아지는 특성을 가진 스케줄링 알고리즘은 무엇인가?

    다단계 피드백 큐 스케줄링

 

 

15. 다단계 피드백 큐 스케줄링에서 마지막 큐에 있는 프로세스(우선순위가 가장 낮은 프로세스)의 타임 슬라이스 크기는 얼마인가?

    무한대

 

 

16. 다단계 피드백 큐 스케줄링에서 우선순위가 낮아질수록 타임 슬라이스의 크기는 어떻게 변하는가?

    커진다

 

 

17. 다단계 피드백 큐 스케줄링에서 마지막 큐(우선순위가 가장 낮은 큐)는 어떤 스케줄링 알고리즘처럼 동작하는가?

    FCFS 스케줄링

 

 

 

심화문제

1. 스케줄링의 단계와 그 특징을 설명하시오.

    스케줄링 단계 = 작업 대기, 보류 프로세스, 활성 프로세스, 실행 프로세스, 작업 종료

    CPU 스케줄링은 규모에 따라 고수준 스케줄링, 중간 수준 스케줄링, 저수준 스케줄링으로 구분된다.

 

    1️⃣ 작업 대기 ~ 보류 프로세스 과정

         => 고수준 스케줄링

    전체 시스템의 부하를 고려하여 작업을 시작할지 말지를 결정한다.

 

    2️⃣ 보류 프로세스 ~ 활성 프로세스 과정

         => 중간 수준 스케줄링

    시스템에 과부하가 걸려서 전체 프로세스 수를 조절해야 한다면 이미 활성화된 프로세스 중 일부를 보류 상태로 보낸다.

 

    3️⃣ 활성 프로세스 ~ 실행 프로세스 과정

         => 저수준 스케줄링

    CPU 스케줄러가 필요에 따라 준비 상태에 있는 프로세스를 실행 상태로 옮기기도 하고, 대기 상태로 보내기도 하며, 타임아웃으로 준비상태로 돌려보내기도 한다.

 

    4️⃣ 작업 종료 과정

         => 끝

 

 

 

2. 스케줄링의 목적을 설명하시오.

    1️⃣ 공평성 : 모든 프로세스가 자원을 공평하게 배정받아야 한다.

    2️⃣ 효율성 : 시스템 자원이 유휴 시간 없이 사용되도록 스케줄링한다.

    3️⃣ 안정성 : 우선순위를 사용하여 중요 프로세스가 먼저 작동하도록 배정한다.

    4️⃣ 확장성 : 프로세스가 증가해도 시스템이 안정적으로 작동하도록 조치해야 한다.

    5️⃣ 반응 시간 보장 : 시스템은 적절한 시간 안에 프로세스의 요구에 반응해야 한다.

    6️⃣ 무한 연기 방지 : 특정 프로세스의 작업이 무한히 연기되어서는 안 된다.

 

 

3. 선점형 스케줄링과 비선점형 스케줄링을 비교하여 설명하시오.

    선점형 스케줄링 방식 = 실행 상태에 있는 작업을 중단시키고 새로운 작업을 실행 가능

    비선점형 스케줄링 = 실행 상태에 있는 작업이 완료될 때까지 다른 작업이 불가

 

중요도 = 선점형 > 비선점형

 

 

4. 스케줄링 알고리즘의 선택 기준에 대해 설명하시오.

    1️⃣ CPU 사용률 : 전체 시스템의 동작 시잔 중 CPU가 사용된 시간을 측정하는 방법이다.

    2️⃣ 처리량 : 시스템이 정상적으로 작동한다면 일정 시간 후 작업이 끝난다.

    3️⃣ 대기 시간 : 작업을 요청하더라도 실제 작업이 이루어지기 전까지는 대기 시간이 필요하다.

    4️⃣ 응답 시간: 대화형 시스템에서는 사용자의 요구에 얼마 만에 반응하는지가 중요하다.

    5️⃣ 반환 시간: 반환 시간은 대기 시간과 실행 시간을 더한 값이다. 

 

 

5. FCFS, SJF, HRN 스케줄링의 특징을 설명하시오.

    - FCFS 스케줄링 (비선점형)

      선입선출 스케줄링으로 한 번 실행되면 그 프로세스가 끝나야만 다음 프로세스를 실행할 수 있다.

 

    - SJF 스케줄링 (비선점형)

      작업 우선 스케줄링으로 준비 큐에 있는 프로세스 중에서 실행 시간이 가장 짧은 작업부터 CPU를 할당한다.

 

    - HRN 스케줄링 (비선점형)

      SJF 스케줄링에서 발생할 수 있는 아사 현상을 해결하기 위해 만들어졌다.

 

 

6. 라운드 로빈, SRT, 다단계 큐, 다단계 피드백 큐 스케줄링의 특징을 설명하시오.

    - 라운드 로빈 스케줄링 (선점형)

      타임 슬라이스 동안 작업을 하다가 작업을 완료하지 못하면 준비 큐의 맨 뒤로 가서 자기 차례를 기다리는 방식이다.

 

    - SRT 스케줄링 (선점형)

      기본적으로 라운드 로빈 스케줄링을 사용하지만, CPU를 할당받을 프로세스를 선택할 때 남아있는 작업 시간이 가장 적은 프로세스를 선택한다. 

 

    - 다단계 큐 스케줄링 (선점형)

      우선순위에 따라 준비 큐를 여러 개 사용하는 방식이다.

 

 

7. 아사 현상과 에이징에 대해 설명하시오.

    - 아사 현상

      작업시간이 길다는 이유로 작업이 계속 연기되는 현상

 

    - 에이징

      아사 현상을 해결하는 방법으로 프로세스가 양보할 수 있는 상한선을 정하는 방식이다.

 

 

8. 타임 슬라이스의 크기를 정하는 것과 시스템 효율성에 대해 설명하시오.

    타임 슬라이스는 되도록 작게 설정하되 문맥 교환에 걸리는 시간을 고려하여 적당한 크기로 하는 것이 중요하다. 타임 슬라이스를 너무 크거나 작게 설정하면 시간을 낭비하여 효율적이지 못하다.

 

 

 

 

좋아요는 로그인하지 않아도 누를 수 있습니다!

728x90
반응형
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함