carg-os/karg

Support virtual memory

Opened this issue · 0 comments

The virtual memory mechanism is essential to various critical functionalities in Unix-like systems. Firstly, the fork system call heavily relies on the separation of address spaces and the copy-on-write (COW) functionality. Secondly, modern executables in formats like ELF possess their distinct address space, simplifying the linking process. Lastly, dynamic allocations in user space are facilitated by the sbrk() system call, which depends on virtual memory and page allocation.

Consequently, the implementation of the virtual memory system and the design of address space layouts are of utmost importance. While copy-on-write, fork(), and sbrk() are crucial, features such as page eviction are considered less critical.