List reasons why a Mode switch between threads may be
cheaper than a Mode switch between processes.
Answer Posted / kumar
1. reason - the control blocks for processes are larger
than for threads (hold more
state information), so the amount of information to
move during the thread
switching is less than for process context
switching
2. reason - the major reason is that the memory management
is much simpler for
threads than for processes. Threads share their memory so
during mode switching, memory information does not have to
be exchanged/changed, pages and page tables do not have to
be switched, etc. This makes the thread context switch much
cheaper than for processes. In case of processes the memory
pieces (pages) need to be exchanged, etc. (Will talk about
the details in few weeks).
3. reason - threads do not have to worry about accounting,
etc, so do not have to fill
out all the information about accounting and other
process specific information in
their thread control block, so keeping the thread
control block consistent is much
faster
4. reason - threads share files, so when mode switch
happens in threads, these
information stay the same and threads do not have to worry
about it (similar to accounting information) and that
makes the mode switch much faster.
But the most expensive operation is truly the memory
aspect.
| Is This Answer Correct ? | 3 Yes | 0 No |
Post New Answer View All Answers
What are the pros and cons of using circuit switching?
How do I run chkdsk?
What is a safe state and its’ use in deadlock avoidance?
What is drawback of mvt?
How do I know if my ram is corrupted?
Explain the basic functions of process management.
How do you kill pid?
What is the safest computer operating system?
Can I change operating systems on my laptop?
What's the difference between x86 and x64?
What is memory-management unit (mmu)?
What is x32 and x64?
Explain busy waiting in operating system (os)?
What resources are used when a thread created?
What is the difference between folder and directory?