|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
n |
Advantages
|
|
|
|
u |
Thread switching
does
|
|
not involve the
kernel:
|
|
|
|
no mode switching
|
|
|
|
u |
Scheduling can be
|
|
|
application
specific:
|
|
|
choose the best
|
|
|
|
algorithm.
|
|
|
|
u |
ULTs can run on
any
|
|
|
OS. Only needs a
|
|
|
thread library
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
n |
Inconveniences
|
|
|
|
u |
Most system
calls are
|
|
|
blocking and the
kernel
|
|
|
blocks processes.
So
|
|
|
all threads
within the
|
|
|
|
process will be
blocked
|
|
|
u |
The kernel can
only
|
|
|
|
assign processes
to
|
|
|
processors. Two
|
|
|
|
threads within
the
|
|
|
same process
cannot
|
|
|
run
simultaneously on
|
|
|
|
two processors
|
|
|
|