Categories: 未分類

C.mmp

C.mmp
C.mmpは早かった複数の命令、複数データ(MIMD)マルチプロセッサで開発したシステムカーネギーメロン大学で(CMU)ウィリアム・ウル(1971)。表記C.mmpはのPMS表記から来たゴードン・ベルとアレン・ニューウェル、ここで、中央処理装置(CPU)のように命名したC、変異体は、ドット表記法によって認められた、そしてMMPは放置マルチミニプロセッサ。2020年現在、9階のウィーンホールにあるCMUに展示されています。
クロスバースイッチのフロントパネルを含む3つのラックが見えるC.mmpメモリユニット。

コンテンツ
1 構造
2 オペレーティング・システム
3 信頼性
4 参考文献

構造
16台のDigitalEquipment Corporation PDP-11ミニコンピューターが、システム内のCompute Modules(CM)という名前の処理要素として使用されました。各CMには、8Kのローカルメモリと周辺機器のローカルセットがありました。課題の1つは、デバイスが固有の接続されたプロセッサを介してのみ利用可能であったため、入出力(I / O)システム(Roy Levienによって設計された)がデバイスの接続を隠し、要求をホスティングプロセッサにルーティングすることでした。プロセッサがダウンすると、Unibusに接続されているデバイスが使用できなくなり、システム全体の信頼性に問題が生じました。プロセッサ0(ブートプロセッサ)にはディスクドライブが接続されていました。
各コンピューティングモジュールは、次の通信経路を共有していました。
プロセッサ間バス–システム全体のクロック、割り込み、およびプロセス制御メッセージングをCM間で分散するために使用されます
16×16クロスバースイッチ–一方の側に16個のCMを接続し、もう一方の側に16個の共有メモリバンクを接続するために使用されます。16個のプロセッサすべてが異なるメモリバンクにアクセスしている場合、メモリアクセスはすべて同時に行われます。2つ以上のプロセッサが同じメモリバンクにアクセスしようとした場合、そのうちの1つは1つのサイクルでアクセスを許可され、残りは後続のメモリサイクルでネゴシエートされます。
PDP-11は16ビットの論理アドレス空間を持っていたため、共有メモリ空間のアドレス空間を25ビットに拡張するために別のアドレス変換ユニットが追加されました。UNIBUSのアーキテクチャは、18ビットの設けられた物理アドレスを、および2つの上位ビットは、メモリのバンクを選択された4つの再配置レジスタのいずれかを選択するために使用しました。これらのレジスタを適切に管理することは、オペレーティングシステム(OS)カーネルをプログラミングする際の課題の1つでした。
元のC.mmp設計は磁気コアメモリを使用していましたが、その存続期間中に、より高性能のダイナミックランダムアクセスメモリ(RAM)が利用可能になり、システムがアップグレードされました。
元のプロセッサはPDP-11 / 20 プロセッサでしたが、最終的なシステムでは、これらのうち5つだけが使用されました。残りの11個はPDP-11 / 40 プロセッサであり、書き込み可能なマイクロコードスペースを追加することで変更されました。これらのマシンへのすべての変更は、CMUで設計および構築されました。
11/20の変更のほとんどは、ワイヤラップ バックプレーンへのカスタム変更でしたが、PDP-11 / 40がマイクロコードで実装されたため、特定の命令をインターセプトして保護されたオペレーティングシステム要件を実装する別のproc-modボードが設計されました。たとえば、オペレーティングシステムの整合性のために、スタックポインタレジスタが奇数にならないようにする必要がありました。11/20では、これはスタックレジスタの下位ビットへのリードをクリップすることによって行われました。11/40では、スタックへのアクセスはproc-modボードによってインターセプトされ、下位ビットが1の場合、不正なデータアクセストラップが生成されました。

オペレーティング・システム
オペレーティングシステム(OS)が選ばれましたハイドラ。それは、機能ベース、オブジェクト指向、マルチユーザー、およびマイクロカーネルでした。システムリソースはオブジェクトとして表され、機能によって保護されていました。
OSとほとんどのアプリケーションソフトウェアはプログラミング言語 BLISS – 11で書かれており、PDP-10でのクロスコンパイルが必要でした。OSはほとんどアセンブリ言語を使用しませんでした。
システムで利用可能なプログラミング言語の中には、C.mmpをうまく利用するために、並列コンピューティングをサポートする拡張機能を含むALGOL68バリアントがありました。ALGOLコンパイラはHydraOSでネイティブに実行されました。

信頼性
システム全体の信頼性は16個のCPUをすべて実行することに依存していたため、ハードウェア全体の信頼性に深刻な問題がありました。1つのプロセッサの平均故障間隔(MTBF)が24時間の場合、システム全体の信頼性は16/24時間、つまり約40分でした。全体として、システムは通常2〜6時間実行されました。これらの障害の多くは、プロセッサに追加された多くのカスタム回路のタイミンググリッチが原因でした。ハードウェアの信頼性を向上させるために多大な労力が費やされ、プロセッサに目立った障害が発生した場合、プロセッサは分割され、数時間診断を実行していました。最初の診断セットに合格すると、I / Oプロセッサとしてパーティションに戻され、アプリケーションコードは実行されませんでした(ただし、周辺機器は使用可能になりました)。診断を実行し続けました。さらに数時間後にこれらを通過した場合、プロセッサセットの完全なメンバーとして復元されました。同様に、メモリのブロック(1ページ)に障害があることが検出された場合、使用可能なページのプールから削除され、別の方法で通知されるまで、OSはこのページを無視します。このように、OSは、必然的に発生したハードウェアの問題に対処できるフォールトトレラントシステムの初期の例になりました。

参考文献
^ ベル、C。ゴードン(1981)。コンピューターの構造:読みと例。マグロウヒル。ISBN 978-0070043572。OCLC  633760282。
^ 「PDP-11 / 20-コンピュータ履歴Wiki」。Gunkies.org 。
^ 「PDP-11 / 40-コンピュータ履歴Wiki」。Gunkies.org 。
^ 「ゆるく結合されたマルチプロセッサ」。www.edwardbosworth.com 。
ウルフ、WA ; ベル、CG(1972)。C.mmp:マルチミニプロセッサ (PDF)(レポート)。カーネギーメロン大学(CMU)。
ベル、CG ; Broadley、W。; ウルフ、WA; ニューウェル、A。; ピアソン、C。(1971年)。C.mmp:CMUマルチミニプロセッサーコンピューター:初期設計の要件と概要 (PDF)(レポート)。カーネギーメロン大学(CMU)。
ウルフ、Wm。A。; ハービソン、SP III(2000)。「プロセッサのプールでの反射:C.mmp / Hydraに関する経験レポート」。コンピュータアーキテクチャの読み。ガルフプロフェッショナルパブリッシング。pp。561–573。ISBN 9781558605398。
ウルフ、Wm。A。; ハービソン、サミュエルP. III; レビン、ロイ(1981年1月1日)。HYDRA / C.mmp:実験的なコンピュータシステム。マグロウヒル。ISBN 978-0070721203。)。

admin

Share
Published by
admin

Recent Posts

キャニオン–SRAM

Canyon%E2%80%93…

1か月 ago

キャニオン、ケノラ地区

Canyon,_Kenora_…

1か月 ago

Cantus Verkehrsgesellschaft

Cantus_Verkehrs…

1か月 ago

カントールキューブ

Cantor_cube 数学で…

1か月 ago

カントールの定理

Cantor's_theore…

1か月 ago

クレテイユ州

Cantons_of_Cr%C…

1か月 ago