Virtual Memory

Virtual Address

D-OS-Ch10a-Virtual_Address

Shared Library Using Virtual Memory

像是 standard C library 這種會被不只一個 process 使用的 system library 我們可以用 share page 的概念讓它只需要在 memory 有一份複製就夠了

Virtual Memory Space can be Greater than Physical Memory

使用 demand paging 我們可以讓 virtual memory 大小大於 physical memory 本身

因為每個 process 雖然被分配了大量記憶體但實際上正在被使用的只有少量的部分


Demand Paging

Demand Paging

D-OS-Ch10b-Demand_Paging

Page Fault Handling

D-OS-Ch10c-Page_Fault_Handling

Demand Paging Optimzations

D-OS-Ch10d-Demand_Paging_Optimizations


Copy-on-Write (CoW)


Page Replacement

D-OS-Ch10e-Page_Replacement


Allocation of Frames

D-OS-Ch10f-Allocation_of_Frames


Allocating Kernel Memory

D-OS-Ch10g-Kernel_Memory