1,776 views
0 votes
0 votes
A simplified view of thread states is Ready, Running, andBlocked, where a thread is either ready andwaiting to be scheduled, is running on the processor, or is blocked (for example, waiting for I/O). Assuming a thread is in the Running state, answer the following questions, and explain your answer:

 a. Will the thread change state if it incurs a page fault? If so, to what state will it change?

b. Will the thread change state if it generates a TLB miss that is resolved in the page table? If so, to what state will it change?

c. Will the thread change state if an address reference is resolved in the page table? If so, to what state will it change?

I know, for part a, the thread will change its state from running to waiting.

 

However, I am highly confused over answers to part b, and part c.

1 Answer

1 votes
1 votes
a) The thread will change it's state from running to blocked since there is a page fault and page fault requires I/O operation from disk

b) The thread will change it's state from running to waiting(ready), so that in the meantime(time to access page table) another thread could be scheduled.

c) Assuming there is no TLB, thread will not change it's state.

Related questions

0 votes
0 votes
0 answers
2
0 votes
0 votes
0 answers
3