What are the bits that support the demand paging?
Valid, Reference, Modify, Copy on write, Age. These bits
are the part of the page table entry, which includes
physical address of the page and protection bits.
Copy on write
How the Kernel handles the fork() system call in
traditional Unix and in the System V Unix, while
Kernel in traditional Unix, makes the duplicate copy of
the parentís address space and attaches it to the
childís process, while swapping. Kernel in System V
Unix, manipulates the region tables, page table, and
pfdata table entries, by incrementing the reference
count of the region table of shared regions.
Difference between the fork() and vfork() system call?
During the fork() system call the Kernel makes a copy of
the parent processís address space and attaches it to
the child process. But the vfork() system call do not
makes any copy of the parentís address space, so it is
faster than the fork() system call. The child process as
a result of the vfork() system call executes exec()
system call. The child process from vfork() system call
executes in the parentís address space (this can
overwrite the parentís data and stack ) which suspends
the parent process until the child process exits.
What is BSS(Block Started by Symbol)?
A data representation at the machine level, that has
initial values when a program starts and tells about how
much space the kernel allocates for the un-initialized
data. Kernel initializes it to zero at run-time.
What is Page-Stealer process?
This is the Kernel process that makes rooms for the
incoming pages, by swapping the memory pages that are
not the part of the working set of a process.
Page-Stealer is created by the Kernel at the system
initialization and invokes it throughout the lifetime of
the system. Kernel locks a region when a process faults
on a page in the region, so that page stealer cannot
steal the page, which is being faulted in.
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 :
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.