지금까지 Anonymous Memory 타입에 대해서만 고려했다면 File-Backed memory를 고려해야 한다.
<aside> 💡 mmap : 디스크에 있는 파일에 대한 유저 가상 페이지를 미리 가상주소공간에 할당해 주는 것 munmap : 페이지와 물리메모리가 연결된 경우 그 연결을 끊어 주는 것
</aside>
<aside>
💡 프로세스의 가상주소공간 addr
에 fd
의 offset
에서 length
만큼 읽어와 매핑
전체 파일이 페이지단위로 나뉘어 연속된 가상주소 페이지에 하나씩 매핑
</aside>
do_mmap()
을 호출<aside> 💡 addr으로 부터 유저 가상 페이지들의 변경사항을 디스크의 파일에 업데이트 하고 매핑 정보를 지운다. Present Bit을 0으로 만듬
</aside>