스레싱과 프레임 할당 방식
페이지 폴트(위 링크 참고)가 발생하는
원인에는 교체 알고리즘의 성능 뿐 아니라,
프레임 부족으로 인해 프로세스의
실행 시간보다 페이징에 더 많은 시간을
소요하는 스래싱(Thrashing) 문제도 있다.
스레싱을 막기 위해 프로세스들에
적절한 수만큼 프레임을 할당할 수 있는
방법에는 다음과 같은 방식들이 있다.
균등 할당
균등 할당(Eqal allocation)은
모든 프로세스에 균등하게 프레임을
제공하는 방식이다.
실제로는 프로세스마다 크기가
다른데 무조건 균등하게 프레임을
분배하는 것은 비합리적인 방식이다.
비례 할당
비례 할당(Proportional allocation)은
프로세스 크기에 비례하여 프레임을
분배하는 방식이다.
그러나 이 방식을 실제로 적용해보면
프로세스의 필요한 프레임의 양을
실행하지 않고는 예측하기 어렵다는
한계를 가지고 있다.
앞서 언급한 균등 할당 방식과
비례 할당 방식은 모두 프로세스 실행 과정을
고려하지 않고 단순 크기만 비교했다는
점에서 정적 할당 방식이라고도 불린다.
작업 집합 모델 기반
작업 집합 모델(Working set model)
기반 프레임 할당 방식은
프로세스가 일정 기간 동안
참조한 페이지 집합을 기억하여
빈번한 페이지 교체를 방지하는 방식이다.
이때 역시 참조 지역성의 원리가 사용된다.
페이지 폴트 빈도(PFF) 기반
PFF(Page-Fault-Frequency)
기반 프레임 할당 방식은
임의의 페이지 폴트율 상, 하한선을
정하여 해당 범위 안에서만
프레임을 할당하는 방식이다.
작업 집합 모델 기반 프레임 할당 방식과
PFF 기반 프레임 할당 방식은 모두
프로세스 실행 과정에서 배분할 프레임을
결정했다는 점에서 동적 할당 방식이라고도 불린다.
'개인 학습 > 운영체제' 카테고리의 다른 글
21 - 페이지 교체 (0) | 2023.02.13 |
---|---|
20 - 페이지 테이블 엔트리 (0) | 2023.02.13 |
19 - 페이징 기법 (0) | 2023.02.13 |
18 - 메모리 할당 (0) | 2023.02.13 |
17 - 스와핑: 메모리 관리 기법 (0) | 2023.02.13 |