다른 명령
새 문서: 분류: 메모리 관리 == 개요 == Demanding Paging은 프로그램이 필요한 파일의 모든 내용을 메모리에 적재하는 것이 아니라, Virtual Memory를 사용하여 필요한 순간에만 필요한 페이지를 Storage에서 읽어들여서 메모리에 올리는 기술이다. == 과정 == # TLB 미스 # 페이지 테이블 Walk # 페이지 폴트 # Trap to Kernel # Virtual Address를 File + Offset으로 변환 # Page frame할당 # Disk block을... |
(차이 없음)
|
2023년 2월 11일 (토) 02:53 기준 최신판
개요
Demanding Paging은 프로그램이 필요한 파일의 모든 내용을 메모리에 적재하는 것이 아니라, Virtual Memory를 사용하여 필요한 순간에만 필요한 페이지를 Storage에서 읽어들여서 메모리에 올리는 기술이다.
과정
- TLB 미스
- 페이지 테이블 Walk
- 페이지 폴트
- Trap to Kernel
- Virtual Address를 File + Offset으로 변환
- Page frame할당
- Disk block을 읽어서 Frame에 작성 시작 (즉 DMA 시작)
- Disk read가 끝나면 Disk Interrupt
- 완료된 페이지를 Valid하다고 표기
- Process를 Page Fault가 난 지점부터 수행
- TBL 미스
- 페이지 테이블 워크 -> 정상적으로 페이지가 반환됨