假設一個進程正在運行並且它調用了一個系統調用。這是否意味着這個過程現在將被阻止。所有的系統調用是否阻塞一個進程並將其狀態從運行改爲阻止?或者這取決於當時的情況?正在進行系統調用
Q
正在進行系統調用
4
A
回答
3
不,這並不意味着進程被阻止。有些系統調用是阻塞的,有些則不是。但是,請注意,在內核處理系統調用期間,當進程繼續運行時,您自己的用戶代碼不會執行,但內核代碼正在代表進程執行。
1
某些操作系統甚至會出現上電情況,用戶應用程序會在某些情況下注冊某些由內核(回到用戶空間)調用的函數。 Unix信號機器是一個非常簡單的例子,但是一些操作系統有更復雜的上傳。
我認爲有些系統調用會觸發某些內核處理,這可能會觸發用戶空間中的某些上調。
我忘了細節
相關問題
- 1. 如何在java中進行系統暫停進行調試?
- 2. 查找正在生成CAL中斷的進程(系統調用)
- 3. 系統調用正在終止
- 4. 正在運行的系統
- 5. 如何在Java/Groovy中進行系統命令調用?
- 6. 通過Windows上的MINGW32在Python中進行系統調用
- 7. 是否可以在iOS上進行系統調用?
- 8. read_char系統調用不是在命令行SPIM工作正常
- 9. 系統(「」)調用
- 10. 叉(系統調用) - 進程號
- 11. 調用系統從多個進程
- 12. perl ptkdb進入系統調用
- 13. fork() - 多個進程和系統調用
- 14. 使用ptrace進行系統調用跟蹤
- 15. Ruby對系統調用進行卷曲的正確語法是什麼?
- 16. 運行系統進程
- 17. 系統調用在C++中
- 18. 系統調用在Perl
- 19. 在C系統調用
- 20. Android操作系統查殺服務,通知正在進行
- 21. 問題進行系統調用與PHP腳本
- 22. 可以從Simulink進行系統調用嗎?
- 23. 使用Windows子系統爲Linux進行Visual Studio代碼調試
- 24. 在系統進程中執行代碼
- 25. Vfork系統調用
- 26. sigaction系統調用
- 27. Pipe()系統調用
- 28. python系統調用
- 29. fork系統調用
- 30. sys_execve系統調用
你可以問這裏http://unix.stackexchange.com – 2012-01-17 14:29:40
的問題是理論上的類型,而不是UNIX特別的。 SO是正確的地方。 – 2012-01-17 15:57:02