스래싱: Difference between revisions
From CS Wiki
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
[[분류:운영체제]] | |||
;Thrashing | |||
==개요== | ==개요== | ||
* 프로세스의 처리시간보다 페이지 교체시간이 더 많아지는 현상 | * 프로세스의 처리시간보다 페이지 교체시간이 더 많아지는 현상 | ||
* CPU의 이용률이 급격히 낮아진다. | * CPU의 이용률이 급격히 낮아진다. | ||
== 발생원인 == | == 발생원인 == | ||
Line 9: | Line 9: | ||
* 주기억장치가 감당할수 없을 정도의 다중 프로그래밍 | * 주기억장치가 감당할수 없을 정도의 다중 프로그래밍 | ||
* 페이지 교체 알고리즘의 비효율적인 동작 | * 페이지 교체 알고리즘의 비효율적인 동작 | ||
== 해결방법 == | == 해결방법 == |
Latest revision as of 11:19, 10 June 2019
- Thrashing
개요[edit | edit source]
- 프로세스의 처리시간보다 페이지 교체시간이 더 많아지는 현상
- CPU의 이용률이 급격히 낮아진다.
발생원인[edit | edit source]
- 과도한 프로세스들 간의 메모리 경쟁
- 주기억장치가 감당할수 없을 정도의 다중 프로그래밍
- 페이지 교체 알고리즘의 비효율적인 동작
해결방법[edit | edit source]
- 각 프로세스들에게 충분한 페이지 프레임을 할당할 수 있도록 다중 프로그래밍의 정도를 낮춘다.
- 주기억장치의 용량을 보강한다.
- 주기억장치 내 워킹세트가 유지되도록 소프트웨어 동작 구조나, 페이지 교체 알고리즘을 개선한다.
관련 개념[edit | edit source]
구역성(Locality)[edit | edit source]
- 특정 프로세스의 계산 영역은 지역화되는 경향이 있다.
- 1960년 Denning 교수에 의해 증명되었다.
- 구역성 자세히 보기
워킹세트(Working Set)[edit | edit source]
- 실행 중인 프로세스가 일정 시간 동안 참조하는 페이지들의 집합(Locality를 이루는 대상들)
- 페이지 교체가 많이 일어나지 않으려면 이 워킹세트가 주기억장치 내에 유지되어야 한다.