Recall & Review
beginner
What is a user-level thread?
A user-level thread is a thread managed by a user-level library, not by the operating system kernel. It runs in user space and the kernel is unaware of its existence.
Click to reveal answer
beginner
What is a kernel-level thread?
A kernel-level thread is a thread that the operating system kernel manages directly. The kernel knows about these threads and schedules them independently.
Click to reveal answer
intermediate
Name one advantage of user-level threads.
User-level threads are fast to create and manage because they do not require kernel intervention, making context switching quicker.
Click to reveal answer
intermediate
What is a major disadvantage of user-level threads?
If one user-level thread blocks (for example, waiting for I/O), all threads in the same process block because the kernel only sees one thread.
Click to reveal answer
intermediate
How do kernel-level threads handle blocking operations differently from user-level threads?
Kernel-level threads can block individually without stopping other threads because the kernel schedules each thread separately.
Click to reveal answer
Which type of thread is managed entirely by the operating system kernel?
✗ Incorrect
Kernel-level threads are managed directly by the operating system kernel.
What happens when a user-level thread performs a blocking system call?
✗ Incorrect
Since the kernel sees only one thread in user-level threading, all threads block if one blocks.
Which threading model typically has faster context switching?
✗ Incorrect
User-level threads switch faster because they do not require kernel intervention.
Which threading model allows true parallelism on multiprocessor systems?
✗ Incorrect
Kernel-level threads can run on multiple processors simultaneously because the kernel schedules them independently.
Why might an application choose user-level threads over kernel-level threads?
✗ Incorrect
User-level threads avoid kernel overhead, making thread operations faster.
Explain the main differences between user-level and kernel-level threads.
Think about who manages the threads and how blocking affects them.
You got /5 concepts.
Describe one advantage and one disadvantage of user-level threads.
Consider performance and blocking behavior.
You got /2 concepts.