a. A binary semaphore takes on numerical values 0 and 1 only.
b. An atomic operation is a machine instruction or a sequence of instructions
that must be executed to completion without interruption.
c. Deadlock is a situation in which two or more processes (or threads) are waiting for an event that will occur in the future
d. Starvation is a situation in which a process is denied access to a resource
because of the competitive activity of other, possibly unrelated, processes.
e. While a process is blocked on a semaphore's queue, it is engaged in busy waiting.
f. Circular waiting is a necessary condition for deadlock, but not a sufficient
condition a condition for the deadlock to occur.
g. Mutual exclusion can be enforced with a general semaphore whose initial value is greater than 1
h. External fragmentation can occur in a paged virtual memory system.
i. External fragmentation can be prevented (almost completely) by frequent use of compaction, but the cost would be too high for most systems.
j. A page frame is a portion of main memory.
k. Once a virtual memory page is locked into main memory, it cannot be written to the disk.
l. Pages that are shared between two or more processes can never be swapped out to the disk.
m. The allocated portions of memory using a buddy system are all the same size.
n. Demand paging requires the programmer to take specific action to force the
operating system to load a particular virtual memory page.
o. Prepaging is one possibility for the fetch policy in a virtual memory system.
p. The resident set of a process can be changed in response to actions by other processes.
q. The working set of a process can be changed in response to actions by other processes.
r. The translation lookaside buffer is a software data structure that supports he virtual memory address translation operation.
s. In a symmetric multiprocessor, threads can always be run on any processor.
t. Thrashing will never be a problem if the system has 1 GB of real memory.






