複数の処理とは何を意味し、どのように機能しますか? [閉鎖]

複数の処理とは何を意味し、どのように機能しますか? [閉鎖]

Linuxシステムのコア、CPU、スレッド、プロセッサの違いは何ですか?違いを説明してください

答え1

コアはCPU、プロセッサです。マシンは、シングルコア(CPU 1個)またはマルチコア(CPU複数)です。プロセッサはCPUの別の名前です。

コンピュータはCPUリソースを必要とする多くのプロセスを実行することが多いため、コンピュータは競合タスクを処理する方法をスケジュールする必要があります。シングルプロセッサ(シングルコア)システムでは、各プロセスに小さな時間を割り当てることでスケジューリングが行われます。コンピュータのパフォーマンスと各プロセスが実行される短時間(ミリ秒)のため、ユーザーはプロセスが同時に実行されていると感じます。

スレッドとプロセスの違いは、オペレーティングシステムによって異なります。この答えは基本的な説明だけを提供しようとします。通常、プロセスには多くのスレッドを含めることができます。オペレーティングシステムは各スレッドを個別に予約できます。各プロセスのスレッドはプロセスコードを共有し(各スレッドには独自のコマンドレジスタがあり)、プロセスデータを共有します。ただし、各スレッドには独自のスタックセグメントがあります。呼び出しスタックは、関数呼び出し後の戻り点を追跡します。

マルチコアシステム(2つ以上のCPU)は、時間分割でのみプロセスをスケジュールできます。また、各コアに対して別々のスレッドを実行することもできます。別のコアで実行されるスレッドは真の同時実行性です(時間分割同時実行性という印象を与える単一コアシステムとは異なり)。

マルチスレッドはより良いコンピュータ処理性能を提供します。数年前、CPU性能の継続的な改善が鈍化しました(ムーアの法則もはや適用されない) 以後、CPU性能技術は、マルチコア技術とマルチスレッド技術によって主導された。

答え2

  • プロセッサはソケットに接続される物理チップです。初期のプロセッサは主にCPUで構成されていました。後で、MMU(仮想メモリ管理)、FPU(浮動小数点)、キャッシュ、時にはGPU(グラフィックス)がプロセッサに追加されました。

  • コアはCPUです。プロセッサには1つ以上のコアがあります。 2コアCPUはほぼ2つのシングルコアプロセッサと同じですが、1つのコンポーネントがボトルネックを引き起こす場合、コンポーネントを共有すると利得が減少します。あるいは、逆にコア間の内部通信速度が速くなり、パフォーマンスが向上することがよくあります。

  • コアは複数のハードウェアスレッドをサポートし、複数の実行コンテキスト(主にレジスタ)を同時に処理できます。また、すべてのスレッドが同じCPUを共有してもパフォーマンスが向上します。このようなゲインは、メモリアクセス待ち時間による高速コンテキスト切り替えとほぼ同時実行によるものです。

関連情報