Question: c) In Fig. 3 straight arrows represent scheduler activations, s-shaped symbols represent user-level threads, and the cluster of user-level threads to the right of

c) In Fig. 3 straight arrows represent scheduler activations, s-shaped symbols represent user-level threads,

c) In Fig. 3 straight arrows represent scheduler activations, s-shaped symbols represent user-level threads, and the cluster of user-level threads to the right of the pane represents the ready list. At time T1, the kernel allocates the application three processors. On each processor, the kernel upcalls to user-level code that removes a thread from the ready list and starts running it. At time T2 (where, T2 > T1), if the user-level thread (thread 2) blocks in the kernel (assuming that it is doing an I/O), how does the kernel handle this situation, i.e. what steps does the kernel take? At time T3 (where, T3 > T2), if thread 2 unblocks (completes the I/O) and thread 1 completes its' task, how will kernel handle this situation. Show two diagrams (like Fig.3) showing both the scenarios. [3] User level runtime system Add Processor Processors (3) (2) < User Program (1) - Add Add Processor Processor (1) Kernel (2) (3) (4) Fig.3 At Time T1, three processors are allocated to three threads (no more processor is available) (P.T.O)

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock

Lets consider the given questions in two cases ie Case 1 At time T2 when the userlevel thread thread 2 blocks ans Case 2 At time T3 when the thread 2 unblocks Below explaininganswering bothe the case ... View full answer

blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Programming Questions!