프로그램으로 인해 .so 파일이 메모리에 로드될 때 파일 전체가 로드됩니까, 아니면 필요한 "청크"만 로드됩니까?
답변1
습관. 먼저 .so 파일을 연 다음 mmap()
전체 파일 내용을 보관하는 데 필요한 가상 주소 공간을 만듭니다. 그러나 무언가가 공간의 특정 주소에 액세스하려고 시도하는 경우에만 해당 액세스로 인해 페이지 오류가 발생하고 커널은 해당 페이지의 오프셋에 해당하는 파일에서 (4k) 블록을 실제 메모리 중간으로 읽습니다. 실제 메모리에 있으면 액세스가 다시 시작됩니다. 요청 페이징입니다.