マシンに4コアがあり、4スレッドを生成するプロセスがあるとします。これは現在のプロセスがスケジュールされている間に、それらのコアの4つすべてがプロセスの4スレッド用に予約されていますか?プロセスが占有するコアの数はいくつですか?
0
A
答えて
1
これは非常に複雑な質問です。しかし、私は助けることができます。原則として、1つのプロセスは1つのコアのみを使用します。実際には、1つのスレッドは1つのコアでしか実行できません。あなたがデュアルコアプロセッサを持っているなら、文字通り同じCPUに2つのCPUが張り付いています。これらは物理プロセッサと呼ばれます。これらの物理プロセッサは1スレッドを実行します。ただし、いくつかのCPUは2つの物理コアを持ちますが、同時に4つのスレッドを実行することができます。これらの余分な2つのスレッドは、論理コア上で実行されます。それらは物理的には存在しませんが、論理的にはCPUに存在します。
スレッドによって処理されている場合は、はいはい1コア1プロセスです。また、4つの計算コア(1つのコアCPUに1つの計算コアしかないため、名前には物理コアと論理コアが含まれます)を使用して、CPU上で4つのスレッドを実行できます。
タスクマネージャのプロセスタブでプロセスまたはプログラムを意味する場合は、プログラムの書き方によって異なります。
あなたの質問で判断すると、プロセスが4つのスレッドを生成する場合、プロセスはプール内のどの場所にあるかによって異なります。実行待ちのスレッドは何千もあります。各プログラムまたは実行可能ファイルからのスレッドを同時に実行する必要はありません。
1
プロセスの4つのスレッドは個別にスケジュールされています。プロセス自体はスケジュールされていません。
すべての4つのスレッドが同時に実行可能で、システム内に優先度の高い実行可能スレッドがない場合、4つのスレッドすべてが4つのコアで同時にスケジュールされます。
関連する問題
- 1. スレッドがどれくらいのメモリを占有するかjava
- 2. コア数に応じて、UNIXで作成できる状態のプロセス数はいくつですか?
- 3. ノード:1つのコア、多くのプロセス
- 4. 作成される子プロセスの数はいくつですか?
- 5. このコードが生成するプロセスの数はいくつですか?
- 6. Python - 関数定義がメモリを占有していますか?
- 7. 変数が占有する領域は、いつC++で割り当て解除されますか?
- 8. postgresqlインデックス内でNULLsがスペースを占有するのですか?
- 9. C++ポインタは整数より多くのメモリを占有しますか?
- 10. ChromeのFirebugがウィンドウスペースを占有する
- 11. パスカルで変数が占有するメモリの量を計算するには?
- 12. Solaris 10のポートを占有するプロセスを取得する(pfilesの代替)
- 13. Sparkのコア数よりも多くのPythonプロセスが存在するのはなぜですか?
- 14. JavaのGrizzlyがバッファ用に多くのメモリを占有していますか?
- 15. このマシンにはいくつのコアがありますか?
- 16. この有向グラフの3エッジサイクル数はいくつですか?
- 17. PNGイメージはどのくらいのメモリを占有しますか?
- 18. 文字列データ型はどのくらいのデータを占有しますか?
- 19. Redis Setでメンバが占有していたバイト数
- 20. 行占有スペースを有効にする
- 21. 作成されるプロセスとスレッドの数はいくつですか?
- 22. Xcode/Simulatorが15GBの領域を占有するのは正常ですか?
- 23. Webpackが9GB以上のメモリを占有するのは正常ですか?
- 24. 多くのメモリを占有しているアイドル状態のポストグルプロセス
- 25. 複数のコアでプログラムを実行する際のいくつかの質問
- 26. 1つのドライブに最適なsolrコア数はどれくらいですか。
- 27. CUDAでの占有管理
- 28. 多くのデータスペースを占有しているAndroidレルム
- 29. メモリがスワイフで文字列変数で占有されています
- 30. OpenCLスレッド占有
Linuxは実際にはプロセスではなく、[スケジュールスレッド](http://stackoverflow.com/questions/15601155/does-linux-schedule-a-process-or-a-thread)です。プロセスのスケジューリングについては、通常、古典的で単純化されたシングルスレッドプロセスを参照しています。 –