Haekt‘s log

[메모리] 페이지 폴트란? 본문

OS

[메모리] 페이지 폴트란?

Haekt 2022. 9. 20. 22:54

페이지 폴트를 알기 위해서는 메모리를 관리하는 기법인 페이징을 먼저 알아야한다.

 

- 페이징 

페이징 기법은 컴퓨터가 메인 메모리에서 사용하기 위해 2차 기억 장치로부터 데이터를 저장하고 검색하는 메모리 관리 기법이다.

즉, 가상 기억장치를 모두 같은 크기의 블록으로 편성하여 운용하는 기법이다.

이때의 일정한 크기를 가진 블록을 페이지라고 한다.

 

https://velog.io/@codemcd/%EC%9A%B4%EC%98%81%EC%B2%B4%EC%A0%9COS-13.-%ED%8E%98%EC%9D%B4%EC%A7%95

 

- 페이지 폴트

 

페이지 폴트는 메모리에 적재된 페이지중에 사용 페이지가 없을 때를 가리킨다.

시스템의 종류에 따라 약간 다를 수 있으나, 대체로는 빈 페이지가 하나도 없거나, 미리 정한 수보다 적을 때 발생한다.

 

 

** 만약 페이지 폴트가 발생했을 경우, 컨트롤 레지스터의 CR2 레지스터에

페이지 폴트가 발생한 부분의 선형 주소가 저장된다.

 

 

 


- 관련 레지스터 

 

CR0 레지스터 : 운영 모드를 제어하는 레지스터로, 페이징 기능을 활성화 시키는 레지스터 

CR4 레지스터 : 페이지 디렉터리의 물리 주소와 페이지 캐시에 관련된 기능을 설정하는 레지스터

CR5 레지스터 : 페이지 크기 확장이나 메모리 영역 확장 등 의 역할을 하는 레지스터

'OS' 카테고리의 다른 글

[메모리] 기억장치 관리 배치전략( + 단편화 )  (1) 2022.09.20
Comments