User-Level Thread (ULT)
User-Level Threads In a pure ULT facility, all of the work of thread management is done by the application. The kernel is not aware of the existence of threads.
Advantages of ULT
- Less switching overhead (save 2 mode switches)
- Scheduling is app specific
- ULT can run on any OS (no changes to underlying kernel)
Disadvantages
- In a typical OS, many system calls are blocking. As a result, when a ULT executes a system call, not only is that thread blocked, but all of the threads within the process are blocked as well.
- A multithreaded application cannot take advantage of multiprocessing in ULT