4

MP が複数のプロセッサ内の複数のプロセスを管理することは知っていますが、それと SMP の間に違いはありますか? SMPでは同じプロセスから同時に複数のスレッドを実行でき、MPでは1つのプロセスしか1つのプロセッサを占有できないということですか?

違いは次のとおりだと思います:

SMP

P1 には、P1T1、P1T2、および P1T3 の 3 つのスレッドがあります。P2 には、P2T1 および P2T2 の 2 つのスレッドがあります。

3 つのプロセッサーを搭載したコンピューターでは、P1T1 をプロセッサー 1 に、P1T2 をプロセッサー 2 に、P1T3 をプロセッサー 3 に (すべて使用可能な場合) 同時に割り当てるか、P2T1 をプロセッサー 1 に、P2T2 をプロセッサー 2 に、P1T1 をプロセッサー 3 に割り当てることができます。

MP

P1 には、P1T1、P1T2、および P1T3 の 3 つのスレッドがあります。P2 には、P2T1 および P2T2 の 2 つのスレッドがあります。

3 つのプロセッサを搭載したコンピュータでは、P1T1 をプロセッサ 1 に割り当てることができ、 - P1 には 3 つのスレッド (P1T1、P1T2、および P1T3) があります P2 には 2 つのスレッド (P2T1 および P2T2) があります。

3 つのプロセッサを搭載したコンピュータでは、P1T1 をプロセッサ 1 に割り当てることができますが、P1T2 と P1T3 は、実行のために P1T1 が完了するまで待機する必要があります。一方、P2T1 はプロセッサ 2 に移動でき、P2T2 は P2T1 まで待機する必要があります。実行する前に実行が完了します。

これは理にかなっていますか?もしそうなら、私は正しい軌道に乗っていますか?Thx、今日OSの試験を受けて勉強中です。皆さんが提供できる助けをありがとう。

また、スレッドはどのようにスケジュールされますか? 非常に幅広い質問であることは承知していますが、具体的な方法はありますか?それとも、システムが実装したスケジューリングに基づいていますか? ラウンド ロビン スケジューリング、優先度の高い、タイム スライス、タイム シェアリング、最短時間などがあることは知っています。この質問が意味をなさない場合でも、心配はいりません。

4

2 に答える 2

2

実は、SMPはMPの一部門です。だから、違いの問題はあまり意味がありません。どの MP も、対称 MP または並列 (非対称) MP のいずれかになります。

あなたの場合、上記の理由により、これら2つを区別するために例を考慮することはできません。

また、SMP では、2 つの CPU またはプロセッサが異なるマシン上に存在するか、別々のプロセッサであるか、同じ共有メモリで作業して作業を行う異なるコアです。

ウィキペディアで言及されているようにSymmetric Multiprocessing:-

対称型マルチプロセッシング (SMP) には、2 つ以上の同一のプロセッサが単一の共有メイン メモリに接続され、すべての I/O デバイスへのフル アクセスがあり、処理する単一のオペレーティング システム インスタンスによって制御される、対称型マルチプロセッサ システムのハードウェアおよびソフトウェア アーキテクチャが含まれます。すべてのプロセッサを平等に使用し、特別な目的のために予約するものはありません。現在、ほとんどのマルチプロセッサ システムは SMP アーキテクチャを使用しています。マルチコア プロセッサの場合、SMP アーキテクチャはコアに適用され、コアを個別のプロセッサとして扱います。

于 2014-11-06T18:06:07.183 に答える
0

マルチプロセッシング システム (VAX 11/782 など) の昔は、1 つのプロセッサがマスターで、残りがスレーブでした。マスター プロセッサは、アイドル状態のときにタスクを他のプロセッサに割り当て、それ以外の場合は機能していました。

SMP システムでは、神は同等のプロセッサを作成しました。ロック機構を使用してタスクを選択します。

于 2014-11-07T16:26:35.660 に答える