OS Midterm
OS Midterm
OPERATING SYSTEM
MIDTERM
5. In a base-and-bounds model, the base tells where a segment (module) is loaded in memory.
6. Virtual memory space is always bigger than physical memory space.
7. In dual-mode processing, a user process does I/O by accessing the I/O device directly.
8. Kernel level threads, when blocking doing a system call, block all the threads associated with
that process.
9. In multicore systems, systematic multiprocessing uses one core to handle the scheduling for
all the other cores.
10. The kernel uses the Process Control Block to keep track of bookkeeping information about
processes, such as the program counter.
III. Instruction: fill in the correct answer in the space provided. (10 points)
_________________1. is a sequence of read-write operations to memory that are performed atomically.
_________________2. Messages are directed and received from mailboxes (also referred to as ________)
_________________3. In many to many model it allows the ____________ to create a sufficient number
of kernel threads.
_________________4. provides programmer with API for creating and managing threads
_________________5. ______ operation remove one of processes in the waiting queue and place it in the
ready queue.
_________________6. A high-level abstraction that provides a convenient and effective mechanism for
process synchronization.
_________________7. Creation and management of threads done by compilers and run-time libraries
rather than programmers.
_________________8. Solaris synchronization uses _________ for efficiency when protecting data from
short code segments.
IV.Logical Reasoning and Calculation: Carefully read and understand each question. Show your complete
solution, including all calculations and steps, to support your answer. Finally, encircle the correct answer
and provide a justification for your choice. (5 points each)
1. Consider three processes (process id 0, 1, 2 respectively) with compute time bursts 2, 4 and 8 time
units. All processes arrive at time zero. Consider the longest remaining time first (LRTF) scheduling
algorithm. In LRTF ties are broken by giving priority to the process with the lowest process id. The average
turn around time is: show you solution: (a) 13 units (b) 14 units (c)15 units (d) 16 units
2. Consider three processes, all arriving at time zero, with total execution time of 10, 20 and 30 units,
respectively. Each process spends the first 20% of execution time doing I/O, the next 70% of time doing
computation, and the last 10% of time doing I/O again. The operating system uses a shortest remaining
compute time first scheduling algorithm and schedules a new process either when the running process
gets blocked on I/O or when the running process finishes its compute burst. Assume that all I/O
operations can be overlapped as much as possible. For what percentage of time does the CPU remain
idle? Show you solution. (a) 0% (b)10.6% (c)30.0% (d)89.4%
III
1. memory transaction
2. ports
3. operating system
4. Thread library
5. wakeup
6. monitors
7. implicit threading
8. adaptive mutexes
9. Non-blocking
10. unbounded-buffer
Let the processes be p0, p1 and p2. These processes will be executed in following order.
p2 p1 p2 p1 p2 p0 p1 p2 p0 p1 p2
0 4 5 6 7 8 9 10 11 12 13 14
Turn around time of a process is total time between submission of the process and its completion.
Turn around time of p0 = 12 (12-0) Turn around time of p1 = 13 (13-0) Turn around time of p2 =
14 (14-0) Average turn around time is (12+13+14)/3 = 13.
2.Question 2 ‒ Explanation
Let three processes be p0, p1 and p2. Their execution time is 10, 20 and 30 respectively. p0
spends first 2 time units in I/O, 7 units of CPU time and finally 1 unit in I/O. p1 spends first 4 units
in I/O, 14 units of CPU time and finally 2 units in I/O. p2 spends first 6 units in I/O, 21 units of
CPU time and finally 3 units in I/O.
idle p0 p1 p2 idle
0 2 9 23 44 47
Total time spent = 47 Idle time = 2 + 3 = 5 Percentage of idle time = (5/47)*100 = 10.6 %