1

當用戶應用程序執行系統調用時,程序進入內核模式,OS處理用戶請求。如果同時兩個進程執行系統調用,操作系統是否可以執行多線程?例如,可能有兩層內核,第二層將通過執行多線程處理用戶請求,第一層將控制第二層。這是不可能的嗎?或者它在實際使用中不夠好?內核可以通過多線程同時處理兩個系統調用嗎?

謝謝。

回答

2

這是按慣例完成的。當進程(進程的線程)陷入內核時,內核會「借用」用戶線程以運行內核代碼。它已經很長時間了(幾十年了),因爲我們仍然有一個「獨特的內核鎖」,強制在內核中順序執行線程。除了內核本身,它通常爲自己的工作運行多個線程(分頁,回寫......)。

+0

我在哪裏可以閱讀有關該技術? – user1289

+0

OS書籍。有很多選擇(例如,操作系統概念,現代操作系統等)。 –

+0

在閱讀現代操作系統時,我想到了這個問題...謝謝:) – user1289

相關問題