운영체제 기본/Linux의 파일 메모리 매핑
운영체제 기본 목차 · 관련 총론: 가상 메모리
read()는 사용자 버퍼로 파일 데이터를 읽어 온다. mmap()은 파일의 범위를 가상 주소 공간에 연결하고, 프로그램은 그 주소를 메모리처럼 읽는다. 매핑을 만드는 시점과 파일 데이터에 실제로 접근하는 시점은 다르다.
Linux v6.12의 x86-64에서 일반 파일을 읽기 전용으로 매핑하는 경로를 다룬다.
읽는 순서
- mmap과 주소 공간: 파일을 매핑하는 코드와 커널의 주소 영역 설정.
- 첫 접근과 페이지 폴트: 매핑된 주소의 첫 접근에서 파일 데이터를 읽을 수 있게 되기까지.