2012-11-11 36 views
0

使用內核支持的線程與用戶級線程相比,上下文切換變得更快或更慢。上下文使用內核級線程切換

+0

不要認爲它很重要 - AFAIK,沒有人使用用戶級別的線程。 –

+1

哪個操作系統?哪個用戶線程庫?在哪種情況下? – didierc

+0

上下文切換的成本由重新加載各種處理器高速緩存所需的時間決定。這取決於切換到哪個線程。這完全是不可預測的。 –

回答

0

一般,沒關係。進程調度程序在兩種情況下都會執行相同的操作。正在被換出的線程或正在被換入的線程可能是用戶或內核線程。這不會影響執行上下文切換所花費的時間。上下文切換是保存當前運行進程狀態(各種寄存器值和其他數據結構,例如PCB)並恢復進程的保存狀態(恢復各種寄存器值和其他數據結構,例如PCB)的過程。數據的所有存儲和檢索都在內核空間中。

上下文切換不涉及選擇要執行的下一個進程/線程,這是進程調度程序的工作。