새소식

반응형
밥벌이/운영체제

스래싱(Thrashing) 개요

  • -
반응형
  • 정의
    스래싱(Thrashing)이란 어떤 프로세스에 대해 계속적인 페이지 부재가 발생하여 프로세스의 처리 시간(프로그램 수행에 소요되는 시간)보다 페이지 교체 시간이 더 많아지는 현상으로, 시스템의 심각한 성능 저하를 초래하게 됨
  •    
  • 원인
    • 페이지 부재(Page Fault)
      • 운영체제는 항상 프로세서의 이용률을 감시하고 있으며, 만약 이용률이 떨어지면 프로세서의 이용률을 높이기 위해 새로운 프로세스를 도입하여 다중 프로그래밍의 정도를 높이게 됨
      • 새로운 프로세스가 수행 중인 프로세스로부터 페이지를 빼앗아 수행을 시작하려고 하면 더 많은 페이지 부재를 일으키게 되므로, 각 프로세스는 자신에게 필요한 프레임을 배당 받지 못하게 됨
    • 부재율의 증가
      • 프로세서가 요구하는 최소한의 수보다 페이지 프레임 수가 적을수록 페이지 부재율(PFF; Page Fault Frequency)이 증가함
      • 페이지 부재가 더 많이 발생하고, 페이징 처리 장치를 사용하기 위해 프로세스가 대기하는 동안, 프로세스 실행 준비 큐는 비게 되므로 프로세스의 효율성은 떨어짐
    • 이용률의 감소
      • 프로세서 이용률이 더욱 낮아지고 프로세서 스케줄러는 이용률을 높이기 위해 다중 프로그래밍의 정도를 점점 더 높이게 되지만, 프로세스의 실행은 점점 더 늦어짐
      • 페이지 부재로 프로세서 이용률은 감소하면서 스래싱이 일어나게 되고, 결국 페이지 교체시간만 낭비하게 되면서 아무런 일도 할 수 없게 됨
    • 다중 프로그래밍의 정도
      • 다중 프로그래밍의 정도가 높아짐에 따라 프로세서의 이용률도 최대값이 될 때가지 높아지다가 어느 임계치에 다다르면 결국 스래싱이 일어나게 되어 프로세서의 이용률은 급격히 낮아지게 됨
      • 프로세서의 이용룰을 높이고 스래싱을 중단하려면 다중 프로그래밍의 정도를 낮춰야 만 함
반응형

'밥벌이 > 운영체제' 카테고리의 다른 글

인터럽트의 구조 및 처리  (0) 2011.10.05
인터럽트 우선순위  (0) 2011.10.05
스래싱의 예방과 조치  (0) 2011.08.10
교착상태 개요  (0) 2011.08.10
교착상태 발생의 조건  (0) 2011.08.10
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.