[Site Map]  [운영체제 및 구조 목차]

 

연관토픽

  1. [연관] 워킹셋(Working Set)
  2. [연관] 페이지 부재 빈도(PFF, Page Fault Frequency)

 


기출문제

회차 문제
응용131-2 2. 프로세스 스레싱(Thrashing)의 정의, 발생 원인과 해결방법을 설명하시오.

 

 

 

개념 : 멀티 프로세싱 환경에서의 성능저하

  • CPU가 프로그램 실행보다 페이지 교체에 더 많은 시간을 소요하여 성능이 급격하게 저하되는 현상
  • 과도한 멀티프로그래밍 환경과 지역성 부족으로 인해 잦은 페이지 폴트가 발생함으로서 정상 연산 수행보다 페이지 교체에 더 많은 시간을 할당하게 되는 성능저하 현상
  • page fault가 연속적으로 발생하여 프로세스 수행시간 보다 페이지 교환시간이 큰 상태
  • 리소스 부족, 부적절한 페이지 교체 정책, 다중 프로그래밍의 정도가 심한 경우 발생하는 현상

 

 

 

쓰레싱 발생원인

구분 주요원인 결과
운영체제 프로세서의 이용률 감시 운영 이용률이 떨어지며, 새로운 프로세스 도입하여 다중 프로그램 정도를 높임
멀티 프로세스 프로세서가 요구하는 최소수 보다 페이지 프레임수가 적음 프로세스의 요구로 Page 부재 발생처리
다른 프로세스의 요청 계속 같은 경우(Page 부재) 발생
Paging으로 인한 Ready Queue가 Empty CPU 이용률 감소
CPU Scheduler가 다중 프로그래밍 정도를 높임 새로운 프로세스의 적재
새로운 프로세스는 수행중인 프로세스로부터 page를 뺏으려 함 Page Fault 발생
더 많은 page fault 발생 CPU 이용률 지속적 감소
  • 쓰레싱의 완벽한 예방은 어렵고, Working Set Model, Page Fault Frequency, 우선순위 교환 알고리즘을 통해 발생을 최소화 시키는 것이 최선의 방법임

 

 

 

페이지 부재 발생  절차

  1. 페이지에 대한 지역성을 이용하여 hit ratio를 높혀 디스크 접근을 최소화
  2. 멀티 프로그래밍의 경우는 지역성의 장점이 크게 감소
  3. 페이지 부재 연속적으로 발생하여 계속적으로 페이지 교환이 일어나는 현상

 

 

 

쓰레싱 해결방안

(1) 워킹셋 모델 

구분 설명 특징
원리 지역성의 가정을 기반으로 동작 지역성 기반 working set
동작특징 과도기, 안정기가 주기적으로 반복 프로세스 시작/이동에 변화
장점 multi programming 정도를 높임 page hit rate 증가
CPU 활용률을 최적화 임계치 극대화
단점 working set 추적관리가 복잡 WS 크기/구성의 변화 심함
working set window 사이즈 설정의 모호함 매개변수의 최적값을 모름
각 프로세스가 참조한 페이지 Queue 유지 관리 메모리 관리의 복잡

 

(2) Page Fault Frequency

구분 설명 특징
원리 스레싱은 페이지 부재에서 발생 페이지 부재비율 조절
동작특징 페이지 부재 비율이 높음 프레임 할당
페이지 부재 비율이 낮음 프레임 회수
장점 페이지 부재가 발생할 때만 실행 Overhead가 적음
직접적으로 페이지 부재율 조절 가능 부재비율에 따라 프레임 할당
단점 프로세스를 중지 시키는 과정 발생 가능 부재율 증가, 유효 프레임 없음
페이지 참조가 새로운 지역성으로 이동 작동 어려움

 

 

 

워킹 셋 vs. PFF

구분 워킹셋(working set) PFF(Page Fault Frequency)
개념
  • 특정시간에 실행되는 프로그램에 Locality가 포함되는 페이지들의 집합
  • 지역성(Locality)를 이용한 쓰레싱 감소
  • 페이지 부재율의 상한과 하한 설정을 두어 프레임 개수를 변경하여 쓰레싱 감소
구성도

특징
  • 오버헤드 발생
  • 기억장치 참조 후 페이지 집합 수정
  • 오버헤드 적음
  • 페이지 폴트 발생시 수정

 

 

 

모범답안

  1. [답안] 쓰레싱(1교시)
  2. [답안] 쓰레싱(1교시)

 

 

 

 

 

+ Recent posts