[Pintos-Kaist] Project3 - Anonymous Page
·
운영체제
이전 포스트에서는 프로젝트 3의 Memory Management부분에 대해 구현을 했습니다. 마지막 부분에 해당하는 vm_alloc_page_with_initializer라는 함수를 시작으로 나머지 Anonymous Page를 구현 시작해 보도록 하겠습니다. ✔️ Anonymous Page란? Anonymous 페이지는 파일 기반 페이지와 달리 이름이 지정된 파일 소스가 없기 때문에 Anonymous page라고 부릅니다. Anonymous 페이지는 스택 및 힙과 같은 실행 파일에 사용됩니다. Anonymous 페이지는 프로그램이 실행되는 동안 필요한 메모리 공간을 동적으로 할당하여 프로그램의 요구에 맞게 메모리를 사용할 수 있습니다. Anonymous 페이지는 가상 메모리 공간에서 실제 메모리로 데이터..
[Pintos-Kaist] Project3 - Memory Management
·
운영체제
핀토스 프로젝트 3에서는 Virtual Memory에 관한 내용들을 토대로 구현을 시작합니다. 우선 첫 번째 구현 요소인 Memory Management에 대해서 알아보겠습니다. Memory Management 가상 메모리 시스템을 지원하려면 가상 페이지와 물리적 프레임을 효과적으로 관리해야 합니다. 즉, 어떤 (가상 또는 물리적) 메모리 영역이 어떤 목적으로, 누가, 어떤 용도로 사용되고 있는지 등을 추적해야 합니다. 먼저 보충 페이지 테이블을 다룬 다음 물리적 프레임을 다룰 것입니다. 이해를 돕기 위해 가상 페이지에는 '페이지'라는 용어를, 물리적 페이지에는 '프레임'이라는 용어를 사용한다는 점에 유의하세요. Struct page struct page에 hash_elem 멤버를 추가해서 해당 페이지를..
yunchan^.^
'VM' 태그의 글 목록