0

ガルビンで出会った

最後に、多くのオペレーティングシステムカーネルがマルチスレッド化されました。カーネルではいくつかのスレッドが動作し、各スレッドは特定のタスクを実行します。

質問1

与えられた時間に1つのプロセス/スレッドだけがプロセッサの制御を取得できるので、それらすべてが同時に実行されることを意味するのではありませんか?CPUでの作業や、バッファでのキーストロークの取得などのI / Oでの作業など、さまざまな作業を行うことができますが、そうではありませんか?

質問2

マルチスレッドは、マルチプロセッサシステムでのみより良いパフォーマンスを示しますよね?

4

1 に答える 1

3

回答1:CPUのすべてのコアは、いつでも1つのコマンドを実行できます。最新のCPUのほぼすべてがマルチコアであるため、アプリがマルチスレッドの場合、パフォーマンスが向上します。

回答2:マルチスレッドは、シングルコアCPUを搭載したシステムでも、ほとんどの場合、パフォーマンスが向上します。時間のかかるジョブを複数のスレッドにディスパッチすると、アプリはユーザー入力に対してより応答性が高くなります

並列化レベルは次のとおりです。

  1. Mutli Computers
  2. マルチプロセッサ
  3. マルチコア
  4. マルチスレッド

より高いレベルでは、スレッド化のメリットが大きくなります。たとえば、マルチスレッドアプリは、シングルコア(マルチスレッド)CPUと比較してマルチコアCPUでより適切に実行されます

于 2012-10-11T18:35:49.997 に答える