UNIX Memory Management - Interview Questions and Answers
Name two paging states for a page in memory?
The two paging states are:
- The page is aging and is not yet eligible for swapping,
- The page is eligible for swapping but not yet eligible for reassignment to other virtual address space.
What are the phases of swapping a page from the memory?
- Page stealer finds the page eligible for swapping and places the page number in the list of pages to be swapped.
- Kernel copies the page to a swap device when necessary and clears the valid bit in the page table entry, decrements the pfdata reference count, and places the pfdata table entry at the end of the free list if its reference count is 0.
What is page fault? Its types?
Page fault refers to the situation of not having a page in the main memory when any process references it. There are two types of page fault :
- Validity fault,
- Protection fault.
In what way the Fault Handlers and the Interrupt handlers are different?
Fault handlers are also an interrupt handler with an exception that the interrupt handlers cannot sleep. Fault handlers sleep in the context of the process that caused the memory fault. The fault refers to the running process and no arbitrary processes are put to sleep.
What is validity fault?
If a process referring a page in the main memory whose valid bit is not set, it results in validity fault. The valid bit is not set for those pages:
- that are outside the virtual address space of a process,
- that are the part of the virtual address space of the process but no physical address is assigned to it.
What does the swapping system do if it identifies the illegal page for swapping?
If the disk block descriptor does not contain any record of the faulted page, then this causes the attempted memory reference is invalid and the kernel sends a "Segmentation violation" signal to the offending process. This happens when the swapping system identifies any invalid memory reference.