2021. 2. 20. 23:04ㆍComputer(인강)/운영체제
안녕하세요 bannavi에요^ㅅ^
후.. 지난번 포스팅에서 프로세스 상태기반 스케쥴링 알고리즘 시간에서
씨게 얻어맞고 지금 약간 정신이 혼미하네요..
저도 솔직하게 말씀드리면 아직 확실하게 이해는 안된것 같습니다.
그래서 일단 진도대로 공부한 뒤에
다시 들으면서 이해해보려고 해요
일단 들을땐 흐름이 이해 됐으니까요!
지금 계속 잡고 있으면서 시간 끌기보단 좀 머리좀 환기시키고
다시 돌아오는게 낫겠다는 저만의 개인적인 생각^ㅅ^,,,,,하하
오늘 배워볼건 선정형과 비선정형 스케쥴러에요.
바로 시작해볼게요^ㅅ^
선점형 스케쥴러(Preemptive Scheduling)
: 하나의 프로세스가 다른 프로세스 대신에 프로세서(CPU)를 차지할 수 있음
-> 지금 실행하고 있는애를 선점해서 다른 스케쥴러로 바꿔주는것!
선점형 스케쥴러는 시분할 스케쥴러를 생각하면 됩니다.
위 사진은 A프로세스가 선점된 모습
비선점형 스케쥴러(Non-preemptive Scheduling)
: 하나의 프로세스가 끝나지 않으면 다른 프로세스는 CPU를 사용할 수 없음
다른 프로세스로 교체가능하다는 말은 ready상태를 running으로 바꿀 수 있다는 말임.
간단하게 말해서 시분할 스케쥴러가 불가능함.
프로세스A가 자체적으로 block이나 end를 거쳐야만 스케쥴러가 나타나 다른프로세스를 넣어줄때를
비선점형 스케쥴러라 한다.
스케쥴러가 CPU에 실행되고있는애를 점유, 선정하지 못한다
-> 비선점형 스케쥴러(Non-preemptive Scheduling)
원래는 비선점형 스케쥴러가 먼저 나왔고 후반부에 선점형 스케쥴러가 나왔다고 합니다.
근데 선점형 스케쥴러를 구현하는데 어려움이 있어서
선점형 스케쥴러를 지원하는 os와 지원하지 않는 os가 따로 있었다고 하네요.
중요한점은 비선점형과 선점형중에
응답속도가 더 빠르고 사용자 친화적인것은 선점형이다 라는 점이에요.
챕터 12프로세서와 스케쥴러의 이해 선점형과 비선점형 스케쥴러 14분 참조
시분할식이 2초로 나눠져 있다고 가정하기
위의 그림을 보면 비선점형의 경우 프로세스1이 길어지게되면 지연이되어 응답시간이 늘어나게 됩니다.
하지만, 선점형은 시분할식 시간 단위에 의해서 어느 특정 시점이 되면 다른 프로세스를 실행하게 하기 때문에
컴퓨터 응답시간이 무척 짧아질 수 있게됩니다.
자... 어떠세요? 선점형 비선점형까지 살펴봤어요
괜찮으신가요?
처음 보는 개념이라면 아직 어려우실수도 있을것 같아요(네 저는 아직 어렵습니다)
그치만 비선점형이 선점형보다 응답시간 측면에 있어서 비효율적이다 라는 점과
선점형이 비선점형에 비해 사용자 친화적이다 라는 점을 알 수 있었어요.
이렇게 조금씩 차곡차곡 쌓아가는거 아니겠어요.
이제 시작이에요 조금만 더 힘내봅시다(저 스스로에게 하는말^ㅅ^)
화이팅이에요!
'Computer(인강) > 운영체제' 카테고리의 다른 글
인터럽트 란? (0) | 2021.02.21 |
---|---|
스케쥴링 알고리즘 조합 (0) | 2021.02.21 |
프로세스 상태기반 스케쥴링 알고리즘 기본 (0) | 2021.02.20 |
프로세스 상태와 스케쥴러 (0) | 2021.02.20 |
스케쥴링 알고리즘 기본2 (0) | 2021.02.20 |