티스토리 뷰

728x90

현재 방학때 하고 있는 Os 스터디에 사용된 ppt 입니다.

1일차는 저가 시작하였고 3장 process부분을 다루었습니다.

저가 생각하는 3장 process에서 가장 중요한 것은 아마

단기 스케줄러, 장기 스케줄러, 그리고 중기 스케줄러의 차이점이 아닐까 생각합니다.

 

처음 스케줄러를 접했을때 저는 프로세스의 종류에

따라 스케줄러가 각각 담당하는줄 알았습니다.

그러나 그게 아니더라구요

 

 

 

먼저 장기 스케줄러는 프로세스 상태의

New->Ready와 Running(or Ready) ->Terminated 일때를 관리합니다.

즉 메모리와 디스크 사이의 스케줄링을 담당하는 것이죠.

그렇기 때문에 상대적으로 호출되는 빈도가 적습니다.

 

반대로 단기 스케줄러 CPU와 메모리 사이의 스케줄링을 담당합니다.

프로세스 스테이트로 보자면 Ready->Running->waiting->Ready의

주기를 관리하는 것이죠.

그렇기 떄문에 장기 스케줄러에 비해 매우 많이 호출됩니다.

 

그러면 중기 스케줄러는 무엇일까요.

중기스케줄러는 CUP를 차지하기 위한 경쟁이 심해질 때 우선순위가 낮은

프로세스들을 잠시 제거한 후 나중에 경쟁이 완화됬을 때

다시 디스크에서 메모리로 불러와 중단되었던 부분부터 다시 실행시켜줍니다.

이러한 방법을 스왑핑이라고도 부른다고 하네요

 

총 정리를 하자면

장기 스케줄러와 단기 스케줄러의 가장 큰 차이점은 실행 빈도입니다.

프로세스는 무지 빠르게 실행되고 이러한 프로세스들을 처리하기 위해 즉 프로세스들간의 우선순위를 정하기 위해 단기 스케줄러가 동작합니다. 여기서 스케줄링의 시간이 지연되면 안되기 때문에 단기 스케줄러는 상당히 빨라야 하고 호출 빈도수가 많습니다.

그에 반해 시스템에 새로운 작업이 생성되어 들어오는 것은 분단위로 프로세스의 함수가 실행되는 시간에 비해 무지 깁니다.  추가로 시스템에서 이탈하는 프로세스도 관리한다 하지만  장기 스케줄러는 단기 스케줄러보다 호출 빈도수가 매우 적습니다. 그리고 장기 스케줄링은 스케줄링 시간이 꽤 걸리더라도 신중하게 프로세스를 선택합니다. 만약 장기 스케줄링이 I/O 프로세스나 CPU 중심 프로세스 중 한쪽으로 편중해서 프로세스를 받아온다면 ready queue와 device queue 한쪽에 프로세스가 집중되어 버리고 그렇게 되면 단기 스케줄러의 균형도 붕괴되어 버립니다. 

 

 

아래는 ppt 일부분과 pdf파일입니다.

 

Os-Process(jsy).pdf

 

 

 

 

 

 

 

 

'SoftWare > OS' 카테고리의 다른 글

OS - 2. Operating System Structures(1)  (0) 2016.03.28
OS - 1. Introduction(4)  (0) 2016.03.27
OS - 1. Introduction(3)  (0) 2016.03.26
OS - 1. Introduction(2)  (0) 2016.03.11
OS - 1. Introduction(1)  (0) 2016.03.08
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/03   »
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
31
글 보관함