Notice
Recent Posts
Recent Comments
Link
«   2025/01   »
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
Archives
Today
Total
관리 메뉴

dongdorodongdong

가상기억장치의 성능(Working Set/Thrashing/Locality) 본문

Operating System

가상기억장치의 성능(Working Set/Thrashing/Locality)

d5ngs 2019. 3. 26. 19:12

워킹 셋(Working Set)

  • 정의
    - 프로세스가 일정 시간 동안 자주 참조하는 페이지들의 집합
    시점 t에서 W(t, w)는 해당 프로세스가 t-w 시간부터 t까지 참조한 페이지들의 집합

  • 특징
    - 데닝(Denning)이 제안
    - Locality의 특징을 이용
    - 워킹 셋은 시간에 따라 변함
    - 자주 참조되는 Working Set을 주 기억장치에 상주시킴으로써 Page Fault 및 Page Replacement 현상을 줄인다.



스래싱(Thrashing)
  • 정의
    프로세스의 처리 시간 < 페이지 교체 시간으로 CPU 이용률이 저하되는 현상이다.
    - 다중프로그래밍, 가상 기억장치 사용하는 환경에서 하나의 프로세스 수행 과정 중 자주 Page Fault가 발생함으로 인해 나타나는 현상
    - 전체 시스템의 성능이 저하

  • 방지 방법
    - 다중 프로그래밍의 정도를 적정 수준으로 유지
    "다중프로그래밍의 정도가 높아짐에 따라 CPU 이용률은 어느 특정 시점까지는 높아지지만 다중 프로그래밍의 정도가 더욱 커지면 스래싱이 나타나고, CPU 이용률이 급격히 감소"
    - CPU 이용률을 높인다.
    - Working Set 방법을 사용한다.


구역성(Locality)
  • 정의
    - 프로세스가 실행되는 동안 일부 페이지만 집중적으로 참조하는 성질
    - Denning이 증명

  • 시간 구역성
    - 최근에 참조된 기억 장소가 곧 다시 참조될 거야!
    - Loop, 서브루틴, Stack

  • 공간 구역성
    - 하나의 기억 장소가 참조되면 이 기억장소 근처의 기억장소들이 계속 참조될 거야!
    - 배열순회, 순차적 코드 실행


'Operating System' 카테고리의 다른 글

Linux/Unix 기본 명령어  (0) 2019.04.11
CPU Scheduling  (0) 2019.03.26
암호화 기법  (0) 2019.03.26
Process / Thread  (0) 2019.03.26
OS 발달 과정  (0) 2019.03.26