0
A
回答
0
兩種機制可用:自願或基於硬件。
http://lwn.net/Articles/95334/
從最近的補丁所產生的自願搶佔已被引入到內核:
http://kerneltrap.org/node/3440
這意味着CPU將明確放棄目前的工作,讓調度接手選擇活動任務列表中的下一個任務。已發現,在非自願搶佔自願搶佔性能改進這種方式(這是定時器時鐘爲主)
更多信息:
http://wiki.osdev.org/Context_Switching(軟件VS硬件上下文切換 - 類似於我們這裏所說的)
0
有在Linux內核中沒有調度線程。調用schedule()函數的具體情況。例如:
1)當進程或內核線程在內核模式下顯式調用它時。如果需要等待某個事件發生,則進程通常會調用schedule()函數;如來自輸入輸出設備的數據的可用性。
2)當優先級高於當前進程的進程正在等待某個事件併發生事件時。
3)當分配給當前進程的時間片到期時。
相關問題
- 1. 任何人都可以讓我知道C++中的以下語法?
- 2. 任何人都知道如何等待bash,直到linux內核完全啓動?
- 3. 任何人都可以讓我知道免費的RESTful服務來學習嗎?
- 4. 任何人都可以讓我知道關於appstore的評分和評論嗎?
- 5. 任何人都可以讓我知道爲什麼它發生在LINQ?
- 6. 任何人都知道ACTION_RF_FIELD_ON_DETECTED?
- 7. 任何人都知道Rhomobile?
- 8. 任何人都知道VRTX
- 9. 任何人都知道DirectoryEntry.Invoke
- 10. 任何人都可以知道如何使用JavaScript
- 11. Linux內核的schedule()+ switch_to()函數是如何工作的?
- 12. 任何人都可以知道Samsung Galaxy S7的HTTP_USER_AGENT嗎?
- 13. 任何人都知道關於OLAP內部的任何事情?
- 14. 解碼eval gzinflate base64_decode(任何人都知道我可以使用的解碼器)
- 15. 任何人都知道我可以如何運行Android示例應用程序?
- 16. 任何人都知道我可以得到MSBuild社區任務爲dotnet 2.0?或
- 17. 任何人都可以知道商店程序嗎?
- 18. 任何人都知道「Traceroute For Linux」的存儲庫?
- 19. 任何人都知道像PHP的RSPec?
- 20. 任何人都知道如何讓nicescroll插件水平工作
- 21. 我需要讓我的p-tag換上新線,任何人都知道?
- 22. 任何人都知道可可#的狀態?
- 23. 任何人都知道Click Framework?
- 24. 任何人都知道Objective-C Stylus Parser?
- 25. 任何人都可以幫助我知道我的應用程序是否可以將其加入App Store?
- 26. 任何人都知道我可以擺脫這個錯誤信息?
- 27. 任何人都知道我可以做一個「如果」在鐵軌?
- 28. 我可以使用模塊替換Linux內核函數嗎?
- 29. 任何人都可以點我在Angular2
- 30. jQuery - 任何人都可以幫助我......?