Use LEFT and RIGHT arrow keys to navigate between flashcards;
Use UP and DOWN arrow keys to flip the card;
H to show hint;
A reads text to speech;
11 Cards in this Set
- Front
- Back
What is CLONE_VM? What is it needed for? What if it is absent? |
It is a flag. it is needed to clone a thread if it is absent linux creates a regular process with its own address space |
|
What are user level threads managed by? |
the thread library, procedures within the task address space |
|
Is this a freebie? |
You bet it is. |
|
Is there any performance penalty when using user-level threads? Justify your answer, |
No, switching between two threads of the same task is done cheaply within the task and has the same cost as a procedure call. |
|
What programming issue can arise with user level threads? |
The programmer must use non-blocking system calls to ensure that each time the thread does a blocking system call the kernel doesn't move the entire process to the blocked state. Non-blocking system calls are complicated. |
|
What is a POSIX thread? |
userlevel thread that is managed by the POSIX thread library. They are ported to various UNIX and Windows systems, have names that start with pthread, and tend to have complicated syntax. |
|
Which is better for portability, user level treads or kernel threads? |
user level threads |
|
Which is better for multiprocessing, user level treads or kernel threads? |
Kernel threads |
|
Which is better for performance, user level treads or kernel threads? |
User level threads |
|
Which is better when considering ease of use, user level treads or kernel threads? |
Kernel threads |
|
What 4 things should a good scheduler do? |
1) minimize user response times of all interactive processes (major objective today!) 2) maximize system throughput 3) be fair 4) avoid starvation |