Content deleted Content added
→Examples: typo |
moved section |
||
Line 14:
for [[computer multitasking]] of computer programs.
A major area of research is the thread scheduler which must quickly choose among▼
the list of ready-to-run threads to execute next as well as maintain the read-to-run and stalled thread lists. ▼
An important topic are the different thread priority schemes that can be used by the scheduler. ▼
The thread scheduler might be implemented totally in software or totally in hardware or as a hw/sw combination.▼
Another area of research is what type of events should cause a thread switch - cache misses, inter-thread communication, ▼
[[Direct memory access|DMA]] completion, etc.▼
If the multithreading scheme replicates '''all''' software visible state, include priviledged control registers, TLBs, etc., then it enables [[virtual machine]]s to be created for each thread. This allows each thread to run it's own operating system on the same piece of hardware.▼
===Block Multi-threading===
Line 136 ⟶ 125:
[[Category:Parallel computing]]
[[Category:Microprocessors]]
===Implementation Specifics===
▲A major area of research is the thread scheduler which must quickly choose among
▲the list of ready-to-run threads to execute next as well as maintain the read-to-run and stalled thread lists.
▲An important sub-topic are the different thread priority schemes that can be used by the scheduler.
▲The thread scheduler might be implemented totally in software or totally in hardware or as a hw/sw combination.
▲Another area of research is what type of events should cause a thread switch - cache misses, inter-thread communication,
▲[[Direct memory access|DMA]] completion, etc.
▲If the multithreading scheme replicates '''all''' software visible state, include priviledged control registers, TLBs, etc., then it enables [[virtual machine]]s to be created for each thread. This allows each thread to run it's own operating system on the same piece of hardware. On the other hand, if only user-mode state is saved, less hardware is required which allows for more threads to be active at one time.
{{CPU_technologies}}
|