운영체제

스와핑 - Swapping

iksadnorth 2023. 7. 22. 21:16

👣 스와핑


가상 메모리에는 존재했지만 실제 RAM에 존재하지 않을 때, 페이지 폴트(Page Falut)가 발생한다.
이 때, 현재 메모리에서 잘 사용하지 않는 부분을 하드디스크로 옮겨서 메모리의 공간을 창출하는 것.
다음은 스와핑의 과정이다.

1. CPU는 물리 메모리[RAM]에 원하는 페이지가 없으면 Trap[Interupt]를 발생시켜 OS에 알림.
2. OS는 CPU의 동작을 일시 정지함.
3. OS는 페이지 테이블을 확인해 가상 메모리에 존재하는지 확인함.
4. 없다면 프로세스를 중단하고 물리 메모리에 빈 프페임이 있는지 확인하기.
5. 없다면 스와핑 발동.
6. 빈 프레임을 확보하고 Page Table을 최신화.
7. CPU를 재가동함.

👣 스레싱 - Thrashing

메모리의 Page Fault 발생률이 높은 현상을 뜻함. 이는 심각한 성능 저하를 야기함.
이는 메모리에 너무 많은 프로세스가 로드되었을 때 발생함.

해결 방법
1. 메모리 늘리기.
2. SSD로 교체
3. 작업 세트
-> 지역성을 이용해 페이지 집합을 만들어 미리 메모리에 로드.
4. PFF
-> 페이지 폴트 빈도의 상한선, 하한선을 만들고 
상한선에 도달하면 프레임을 늘리고
하한선에 도달하면 프레임을 줄인다.

'운영체제' 카테고리의 다른 글

페이지 교체 알고리즘  (0) 2023.07.22
메모리 할당 방법  (0) 2023.07.22
메모리  (0) 2023.07.22
컴퓨터 용어 정리  (0) 2023.07.21
운영체제 기초 정리  (0) 2023.07.21