假設我在我的機器上有4個內核,並且我有一個產生4個線程的進程,而這是當前進程安排的,這4個線程都保留了這4個內核?進程佔用了多少核心?
0
A
回答
1
這是一個非常複雜的問題。不過,我可以幫忙。通常,1個進程只使用1個內核。實際上,1個線程只能由1個內核執行。如果你有一個雙核心處理器,它實際上是2個CPU一起粘在同一臺PC上。這些被稱爲物理處理器。這些物理主管執行1個線程。儘管一些CPU有2個物理內核,但能夠同時運行4個線程。這些額外的2個線程在邏輯內核上運行。它們並不物理存在,但在邏輯上存在於CPU中。
如果按進程表示線程,則是1進程1核心。你可以在4個計算核心上運行4個線程(這個名稱包含物理和邏輯核心,因爲一個核心cpu可能只有1個計算核心)。
如果通過進程表示程序或過程在任務管理器的進程選項卡中,則取決於程序的寫入方式。
從你的問題來看,如果一個進程產生4個線程,它取決於它在池中的什麼地方。有成千上萬的線程在等待執行。來自每個程序或可執行文件的線程不必同時執行。
1
您的進程的4個線程是獨立調度的 - 進程本身沒有安排。
如果所有4個線程同時運行,並且系統中沒有其他更高優先級的可運行線程,則可以在4個內核中同時調度所有4個線程。
相關問題
- 1. 每個Apache進程佔用多少?
- 2. reducer佔用映射程序核心
- 3. 我有多少個核心?
- 4. 如何使用Nodejs多CPU核心進行多進程?
- 5. 缺少「ASP.NET核心Web應用程序(.NET核心)」模板
- 6. __vdso_time從核心實用程序缺少?
- 7. 找到多少個核心正在使用C#應用程序
- 8. 多線程和多核心
- 9. cpu佔用多少太多
- 10. .net核心 - 後臺進程
- 11. 我的GPU有多少核心?
- 12. 每個核心有多少CPU時間?
- 13. 減少Solaris上多個Java進程的內存佔用(UNIX)
- 14. x64進程可以佔用多少內存4GB RAM
- 15. 解釋創建了多少個進程?
- 16. Unix fork:創建了多少個進程?
- 17. 是Tcl的線程多進程/多核心
- 18. 核心數據凍結了多個應用程序的保存
- 19. AMD多核心編程
- 20. 多線程核心數據
- 21. 瞭解Drupal核心?
- 22. u-boot佔用多少DRAM?
- 23. 計算線程被搶佔了多少次?
- 24. 如何正確使用核心數據進行多線程?
- 25. Python多處理啓動比核心更多的進程
- 26. 如何減少多進程PHP應用程序的內存佔用
- 27. 過程利用多個核心?
- 28. 核心數據多線程使用
- 29. DOTNET核心 - 缺少csproj.metaproj
- 30. 缺少Rspec的核心
Linux實際上[進度線程](http://stackoverflow.com/questions/15601155/does-linux-schedule-a-process-or-a-thread),而不是進程。當我們談論調度過程時,我們通常會引用經典的,簡化的單線程過程。 –