in Operating System recategorized by
1,560 views
2 votes
2 votes

Which of the following is false?

  1. User level threads are not scheduled by the kernel.
  2. Context switching between user-level threads is faster than context switching between kernel-level threads.
  3. When a user thread is blocked all other threads of its processes are blocked.
  4. Kernel-level threads cannot utilize multiprocessor systems by splitting threads on different processors or cores.
in Operating System recategorized by
by
1.6k views

1 comment

option d
0
0

2 Answers

7 votes
7 votes
Best answer

There are two approaches to implement a thread package.

(1) User Level Threads

Threads which are created and handled by thread library are called user level threads.

  • OS is unaware of user level threads
  • Creation and handling is cheaper as no system calls are needed. Only CPU registers need to be stored and reloaded
  • But if one thread is blocked, whole process will get blocked.
  • Eg: Pthreads, Mach C-threads, and Solaris 2 UI-threads

(2) Kernel Level thread

Threads which are created and handled by OS are called Kernel Level Threads.

  • Managing is expensive as some system calls are needed.
  • Kernel Level scheduler schedules threads from all processes. Hence it can distribute threads on different processors/cores.
  • Even if one thread is blocked, process will be active. Hence useful if process gets blocked frequently
  • Eg: Windows , UNIX

D is false!!

selected by
by
0 votes
0 votes
Answer:

Related questions