
유저의 가상 주소 공간에 접근하는건 커널이다. 즉 운영체제가 접근해야 한다.리눅스에서는 유저 메모리와 커널 메모리가 독립적이다. 실제 주소 공간에도 분리되어 구현되어 있다.이는 각 프로그램이 하나의 메모리를 갖게 하는 환상을 줄 뿐만 아니라 각 주소 공간이 독립되어 있

책(페이지)을 빌린다고 생각해보자. => 가상메모리 사용우리는 도서관(물리 메모리)에서 책을 찾을것이다. => 맵핑된 물리주소 메모리 찾음그런데 도서관에 책이 없으면 우리는 국립 도서관(디스크)에서 책을 가져올 것이다. => 디스크에서 찾아서 물리 메모리로 만든다. 이
구현할 자료구조 :보조 페이지 테이블프레임 테이블스왑 테이블구현을 위한 가능한 선택지로는 배열, 리스트, 비트맵, 해시 테이블이 있습니다. 대개는 배열이 가장 단순한 접근법이지만, 밀도가 희박한 배열은 메모리를 낭비시킵니다. 리스트 또한 단순하지만, 특정 위치를 찾기

임의의 가상 / 물리 메모리 영역을 누가 사용했고, 어떤 목적으로 사용했는지 등을 다뤄야 함.1\. supplemental page table2\. 물리메모리 페이지 프레임include/vm/vm.h에 정의되어 있는 page는 가상 메모리에서의 페이지를 의미하는 구
우선 supplemental_page_table_copy 함수 입니다.init이랑 aux는 Lazy Loading에 필요하지만 지금 만드는 페이지는 기다리지 않고 바로 내용을 넣어줄 것이므로 init과 aux는 필요가 없습니다.때문에 file과 다르게 aux를 만들고