In situations like, where
the copy on write bit of a page is set and that page is shared by more than one
process, the Kernel allocates new page and copies the content to the new page
and the other processes retain their references to the old page. After copying
the Kernel updates the page table entry with the new page number. Then Kernel
decrements the reference count of the old pfdata table entry.
In cases like, where the copy on write bit
is set and no processes are sharing the page, the Kernel allows the physical
page to be reused by the processes. By doing so, it clears the copy on write
bit and disassociates the page from its disk copy (if one exists), because
other process may share the disk copy. Then it removes the pfdata table entry
from the page-queue as the new copy of the virtual page is not on the swap
device. It decrements the swap-use count for the page and if count drops to 0,
frees the swap space.
No comments:
Post a Comment