JPS602693B2 - マルチプログラム・コンピユ−タ・システム - Google Patents

マルチプログラム・コンピユ−タ・システム

Info

Publication number
JPS602693B2
JPS602693B2 JP9220483A JP9220483A JPS602693B2 JP S602693 B2 JPS602693 B2 JP S602693B2 JP 9220483 A JP9220483 A JP 9220483A JP 9220483 A JP9220483 A JP 9220483A JP S602693 B2 JPS602693 B2 JP S602693B2
Authority
JP
Japan
Prior art keywords
address
processes
cpu
segment
register
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired
Application number
JP9220483A
Other languages
English (en)
Other versions
JPS59121443A (ja
Inventor
ビエンブニユ−・ジヤツク・ミツシエル・ジヤン
ベルデイエ・アンリ・ロワ
ル・トオン・デユク
アペル・マルク・ミツシエル
ブラドレイ・ジヨン・ヨゼフ
フランクリン・ベンジヤミン・サミユエル
ボゲ−ル・ジヤン・ロワ
ド・リブ・フイリツプ・ウベ−ル
カレ・クロ−ド・フレデリ−ク
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ANTERUNASHONARU PUURU RANFUORUMATEIKU SEE I I HANIIUERUBURU CO
Original Assignee
ANTERUNASHONARU PUURU RANFUORUMATEIKU SEE I I HANIIUERUBURU CO
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ANTERUNASHONARU PUURU RANFUORUMATEIKU SEE I I HANIIUERUBURU CO filed Critical ANTERUNASHONARU PUURU RANFUORUMATEIKU SEE I I HANIIUERUBURU CO
Publication of JPS59121443A publication Critical patent/JPS59121443A/ja
Publication of JPS602693B2 publication Critical patent/JPS602693B2/ja
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Control By Computers (AREA)

Description

【発明の詳細な説明】 本発明は、一般的には、コンピュータシステムに関する
ものであり、更には、マルチプログラミング/多量処理
の状況において、コンピュータプロセスを制御するシス
テムおよび方法に関するものである。
・第四世代システムは、下記の必要条件を満たすことが
できる。
1 当該システムは、コミュニケーションおよびコント
ロールシステムとして分類される。
2 当該システムは、以前の機械の如く、主として、プ
ログラムによるよりはむしろデータにより制御される。
3 ハードウエアは、コミュニケイシヨンとコントロー
ルの手順を制御する;システムコントロールプログラム
の使用は、実質的に減少あるし、一 は除去される4
大部分の処理は、実時間で実行される:オペレーション
は、必要な応答時間内にアウトプットを供給する速度で
、インプットに実施される。
5 当該システムは、容易に拡大する。
ハードウェアとソフトウェアは、デザインでは機能的な
モジュールである。第一世代のハードウェアーソフトウ
ェアコンピュータシステムにおける処理は、比較的簡単
なも一のであった。
そこでは、ジョブあるいはプログラムは、基本的処理ユ
ニットと考えられていた。各ユーザが始めたジョブある
いはトランザクションに関しては、プログラムは通常、
そのジョブあるいはトランザクションが完了するまで、
割込みをほとんど伴わないか、あるいは、まったく伴わ
ずに進行した。高度のランゲージプログラムの編集およ
び実行で、フオートランのような簡単なジョブの多くは
、シングルプロセスとして進行することができたし、ま
た、進行した。しかしながら、更に驚かしいジョブは、
マルチタスクオペレーションを必要としたし、また、進
行するにつれて、他の諸プロセスを作りだすのが常であ
った。(プロセスとは、ある活動の進行を意味する概念
であり、プログラムの概念と混同しないように注意され
たい。何故ならば、プログラムは活動の記述であり、一
つあるいはそれ以上のプロセスにより使われることがで
きる。われわれは、プ。グラムを実行するとき、プロセ
スあるいはプロセッサのどちらかについて話して差し支
えない。基本的処理ユニットであるプロセスの概念は、
第三世代のコンピュータのマルチプログラミング/多量
処理状況の必要を満たすために発展した。
多くのユーザが、同時にサービスを要求する、そのよう
な状況において、コンピュータシステム内で、リソース
のために匹敵するマルチプルプロセスを思いつくことは
当然のことである。
各プロセスは、コンピュータにより実行されるプログラ
ムで、データに作用しユーザのジョブあるいはそのジョ
ブのある段階を実施するプログラム(すなわち、命令の
整理された収集と命令に関連する他のデータ)よりなる
。多くの当該プロセスが、システムから同時の注意を要
求する場合、当該プロセスと、および当該プロセス間の
コミュニケーションタスク、および、特に、第四世代シ
ステムの必要条件のゆえに、リソースを制御しそしてリ
ソースを当該プロセスにアロケーションするタスクは、
きわめて複雑になっている。バロウズB−6500およ
びB−7500コンピュータは、「バロウズB−650
0/8一7500雀積〆カニズムー手順・AFI的春季
合同コンピュータ会議・19総べ−ジ245一251・
トンブソン、ワシントンDC」と題する、E.A.ホウ
チとB.A.デントによる記事の中でも検討され「また
、「バロウズB−650氏手山頂‘こ関するプロセスハ
ンドリング・第四回オーストラリアコンピュータ会議・
アダリド、南オーストラリア、1969」と題する、J
G.クレアリによる記事の中で検討されており、堆積メ
カニズムを利用することにより、プロセス制御の、ある
種の方法を提供している。
基本的には、“各プロセスは、堆積のために選定された
メモリであり、その中には、ローカル変数、プログラム
手順の照合、データアレイ、および現行のプロセスの状
態が記憶されている・・・・・・・・・堆積は、はじめ
技少量として、ストレージヱリアの外に働く・・・…・
・・活動的プロセスは、活動的堆積により表わされるゾ
(J.G.クレアリ上記ページ231一232)、従っ
て、堆積は実行中のプログラムの動的歴史を記憶する能
力を有する。オベレーテイグシステに関するACMの第
2シンポジウム(60〜70頁、1969年)で発表さ
れた、A.J.ベルンシュティン、G.D.デトレフセ
ン、およびR.日.ケルによる、“プロセスコントロー
ルとコミュニケィション”と題する論文は、“一般目的
のオペレーティングシステムの内部に実施されたプロセ
スの構造およびプロセス間のコミュニケーションの設備
”を記述している。このシステムにより、一つのプロセ
スは、その論理セグメントとよばれる四つの部分にいた
るまで、その部分より成っている。
これらのセグメントは、プロセスが記憶されているとき
、物理的に分離したロケーションにあってもかまわない
。これらのセグメントの再配置と保護は、四つのレジス
タにより達成される。一般的に、諸プロセスは、プロセ
スにより発せられる原語(すなわち、擬似命令)を実施
するオペレーティングシステムと、それによって諸プロ
セスが相互に連絡するメカニズムを利用することにより
制御される。
最初に、コミュニケーションは、共有事象がファイルを
共有するのと同じ方法で共有事象を含む。各プロセスは
、各々の現行のオープンファイルにとって独特なェント
リを含む同じMT(活動アイテムテーブル)を指すKI
T(既知アイテムテーブル)ェントリを有する。この構
造により、一つのプロセスは、事象が発生するとき通知
(NOTIFY原語を発することにより)を必要とする
かもしれない。その結果として、オペレーティングシス
テムは、通知を持っている依頼プロセスを確認する事象
と関連する事象キューの上にェントリを作り出す。この
点において、依頼プロセスは実施を継続してもよいし、
あるいは、BLOCK原語を発して中断してもよい。こ
の事象は、ある他のプロセスがその事象に対しCAUS
E原語を発するときに発生するとゆわれており、同じ原
語を用いる指令機構においてカタログされ処理されるこ
とができる。その後、情報は、一方のプロセスから他方
のプロセスに、あるし、は、さもなければ、一定のタス
クを実施することに協力するプロセスに転送されること
ができる。オペレーティングシステムにおける他の原語
は、諸プロセスを作りだしたり生んだりし、あるいはそ
れらを破壊する。プロセスコミュニケーションとコント
ロールのこの技術は、実行中のプログラムの規則正しい
動的歴史を提供しないが、プロセスと事象マネジメント
のソフトウェアマルチプレキシングの幾つかの概念を導
入する。
この技術は、特権により一方から他方のプロセスの保護
の準備をしない。また、この技術は、一方から他方のプ
ロセスヘメッセージを送る効果的な方法をも準備しない
。その上、アドレスプロセスとりロケーションは、第四
世代システムでは不十分のようにおもえる。第四世代シ
ステムに必要なものは、プロセスを有効にアドレスし、
リロケートし、そして、プロセスの状態を確認する情報
機構を提供するファームウェア/ハードウェアシステム
であり、更に、これらの状態を制御し、また、特権によ
り他のプロセスおよびそれ自体から保護のためにプロセ
スをサポートする情報機構を提供するファームウェア/
ハードウェアシステムであり、また、有効にプロセスを
送り、他のプロセスと同時に起こり、また、モジュール
の方法でプログラムを作成したユーザが、一方のプログ
ラムモジュールから別のプログラムモジュールに進むこ
とを認めるファームウェア/ハードウエアシステムであ
る。オペレーション費用を減少させるプロセスコントロ
ールのためのシステムと方法を提供することが、本発明
の別の目的である。
その中で、プロセス状態情報とコントロール情報が集中
化しているプロセスコントロールのためのシステムと方
法を提供することが、更に別の目的である。
ランニングの状態のみならず準備および待ちの状態で、
一つのプロセスが消費する時間を報告するシステムと方
法を提供することが本発明の別の目的である。
本発明の、これらのあるいは他の目的は、本書の中に含
まれている製図に関連して読まれるとき、本発明の選択
された実施態様の記述から明らかになるであろう。
発明の概要 マルチプログラミングの環境における諸プロセスは、四
つの可能な状態を有する。
即ち、進行、準備、待ち、および中断。プロセスは、中
央処理装置(CPU)の制御を有するとき、進行の状態
にある。
準備の状態は、そのプロセスがCPUの制御を有しない
場合を除いて、ランニングに等しい。プロセスは、特殊
な事象が生じるまで、そのプロセスが継続することがで
きぬ場合、待ちの状態にある。中断状態のプロセスは、
ある時間止まっていて、後に回復するプロセスである。
コンピュータシステム内の各プロセスは、プロセスコン
トロールブロック(PCB)とよばれるハードウェア機
構に関連しており、このプロセスコントロールブロック
は、ナルスピ−ドをもつバーチュアルプロセツサとして
作動し、また、論理的プロセッサにより要求されている
コントロール情報、即ち、プロセス実行のために必要な
ハードウェアリソ−スとコントロール情報の収集を含ん
でいる。
プロセッサの唯一のジョブが、信号が到着したとき、あ
るいはその後、プロセスにより送られた信号を聞くこと
であるときはいつでも、バーチユアルプロセツサ(PC
B)は、リアルセントラルプロセッサユニット(CPU
)におきかえられる。プロセスが単に聴取装置として、
プロセッサを用いはじめる環境は次の通りである。W
プロセスの状態が、ランニングの状態から待ちの状態に
スイッチされるとき、あるいは、【〇ー プロセスの状
態が、ランニングの状態から中断の状態にスイッチされ
るとき。
両方の場合に、CPUは、PCBに譲歩し、PCBにお
きかえられる。
PCBの絶対アドレスは、時には、プロセスの論理名で
よばれる2つの整数、JとPにより限定される。ファー
ムウェアにより知られている絶対ロケーションには、J
テーブルとよばれるテーブルがある。Jテーブルの記入
Jは、Pテーブルとよばれるテーブルの絶対アドレスp
jを含んでいる。Pテーブルの記入Pは、論理的名称(
J、P)により限定されるPCBの絶対ロケ−ションを
含んでいる。選択された実施態様の説明 一般的検討 本発明は、典型的に、ハードウェア/フア−ムウエアノ
ソフトウエアオベレイテイングシステムにより調整され
、この後で記述されるハードウェアシステム環境におい
て有効に作用する。
図1に関連して、サプシステムは、プロセッササプシス
テム101、ストレージサブシステム102、および一
つあるいはそれ以上一32まで−の周辺サプシステム1
03である。各周辺サブシステムは、周辺コントロール
ユニット(PCU)106、多くの装置アダプタ(DA
)107、および256にいたる周辺インプット/アウ
トプット装置108とから成っている。ストレージサブ
システムは、各々32から512キロバイトの、1から
4個の半導体記憶モジュールから成っている。1プロセ
ッササブシステム プロセツササブシステム101において、CPUI04
は、このシステムのために基本的な処理オペレーション
を実施し、記憶装置102とインタフェイスする。
IOCI 05は、ストレージサブシステム102と周
辺装置106との間のすべての情報交換を制御する。ィ
中央処理装置 CPUは、主要記憶同時装置109、バッファーストア
110、計算菱魔111を含む種々な素子、および任意
のエミュレーション設備112を含む。
主要記憶同時装遭109は、計算装置111、バッファ
ーストア110、およびIOCIO9間で主要記憶菱直
の使用に関する衝突を解決する。衝突は、優先順位ベー
スで解決される。IOCは、記憶書き込み(計算装置か
ら)および、その後、記憶読み取り(バッファーストア
)が従う最高の優先順位を有している。主要CPUは、
また、主要記憶アドレツシングを制御し、もっとも最近
に使用された主要記憶アドレスを記憶するために用いら
れる君度想記憶装置を制御するアドレス制御装置ACU
131を含む。バッファーストア110は、主要記憶の
選択した部分を再生し、平均記遠アクセスタイムを減少
するため計算装置とインターフェイスする小型の高速バ
ッファ記憶装贋である。各記憶読み取り中、バッファー
ストアと主要記憶袋贋の両方が呼び出される。引き出さ
れるべき情報が、既にバッファーストアにある場合、主
要記憶読み取りは、終了しており、情報は、バッファー
ストアから引き出される。
さもなければ、主要記憶装置102は、読み取られる。
このことがおこなわれるたび毎に、CPUは、求められ
ている情報を含む32バイトを引き出す。この情報は、
将釆の記憶照合のためにバッファーストアにとどまる。
バツフアーストアが、ソフトウエアにとって明白なもの
であるので、一定の時点でコンピュータを制御するプロ
グラムは、コンピュータが処理している情報が、バッフ
ァーストアから引き出されるのか、あるいは、主要記憶
装置から引き出されるのかを決定することができない。
計算装置111は、CPU内で、すべてのデータ処理と
アドレスジェネレイションを行う。
計算装置内における典型的なコントロールストア130
(マイクロプログラミング:原理と実施と題する書物を
参照のこと。サミルS・ハツソン、ブレンティスホール
社)は、システムをイニシヤライズし、CPUU04と
IOCI05を制御し、定められた命令を解読するファ
ームウェアを含んでいる(示めされていない)。
随意に、コントロールストアは、科学的命令、検査ルー
チン、ェミュレイシヨンパツクケージ、あるいは、プロ
セッササブシステムの能力を拡大する特殊目的の特徴を
提供するかもしれない。選択として、CPUは、インス
タントシステム以外に、システムのェミュレィションを
提供する。
ェミュレータ112は、ファームウェア、ソフトウェア
、そして、ある場合には、ハードウェアの部品である。
ロ インプットーアウトプツト制御装置プロセッササブ
システムのIOCI05部分は、周辺サブシステム10
3とストレージサブシステム102間のデータ通路を提
供する。
この通路は、周辺の指令の開始を考慮し、そして、その
結果として生ずるデータ転送を制御する。
IOCは、典型的に、32チャンネルにいたる制御装置
をあつかうことができる(示めされていない)。ハ 周
辺サブシステム 図1の周辺サブシステム103において、PCUI06
は、i/oオペレーション中にi/o装置108を制御
することによって、CPUI04上のロードを救援する
唯一のマイクロプログラミングプロセッサである。
このPCUは、チャンネルプログラム中に含まれている
命令を実施することによりこれを行う。このプログラム
は、PCU内で実施されるので、結果的には、算術演算
、論理演算、転送オペレーション、シフトオペレーショ
ン、およびブランチオペレーションとなる。
装置の各制御の種類に応じて、PCUの幾つかの種類が
ある。即ち、単位記録、大量(磁気ディスク)記憶装置
、磁気テープ、コミュニケーション、その他。装置アダ
プター107は、あらゆるPCUとPCUが制御する装
置との間を調整する。
各々は、特殊なタイプの装置で「 コミュニケーション
を実施するに必要な、ゆだねられたファームウェアと論
理とを含んでいる。そのタイプにより、DAI07は一
つあるいは幾つかの装置を制御する。PCUは、主要記
憶のために、それに付属する装置間の衝突を解決する。
しかし、IOCは、PCU間の衝突を解決する。ニ ス
トレージサプシステム 主要記憶装置102は、酸化金属半導体 (MOS)チップの形態の容量性ストレージ媒体から成
る。
この媒体は、情報を維持するため記憶更新原理において
作用する。各々の記憶ロケーションは、1000分の2
秒毎にすくなくとも一度、典型的に、記憶更新される。
デザインは、記憶更新タイミングとメモリアクセスとの
間に衝突がほとんど発生しないことを保証している。(
衝突の場合、記憶更新は優先する。)主要記憶の初めに
おいて、ある部分がハードウエアとファームウエアのた
めにリザーブされる。
この部分の上限は、システムソフトウェアにとって明ら
かな境界アドレスレジスタ(BAR−後に記述)の内容
により限定される。BARの内容は、システム初期設定
時に設定される。
BARにおいて規定されるアドレスの下の記憶エリアは
、周辺サプシステム、CPUを制御するファームウェア
、あるいは、エミュレーションのためのマイクロプログ
ラムおよびテーブルのコンフイギユレーションを限定す
るIOCテーブルを含む。
BARにおいて規定されるアドレス下の部分の規模は、
システムコンフィギュレーションにより異る。
マイクロプログラムが主要記憶にあるか、あるいは、コ
ントロールストアにあるかは、システムコンフイギユレ
ーシヨンにより異る。そして、アプリケーションは、シ
ステム上で実施する。
D 基本機械機構 このハードウェアに利用されている代表的な3つの基本
的なデータ機構がある。
即ち、データフオーマット、ソフトウェア可視レジスタ
、および命令フオーマット。イデータフオーマツト 情報は、8パラレルビットの倍数におい て、記憶位置とCPUの間に転送される。
情報の各8−ビットユニットは、1バイトと呼ばれてい
る。パリティあるいはエラー訂正データは、また、デー
タと共に転送される。しかし、ソフトウェアにより影響
されることはできない。それ故に、この特許明細におい
て、データの用語は、連合パリティあるいはエラー訂正
データを除外する。
。 ′ゞイト1バイト内のビットは、左から右へ、0から
7まで教えられる。
バイトは、別々にあるいは群で処理される。2バイトは
ハーフワードを構成し、4バイトは、1ワードを構成し
、8バイトはダブルワードを構成し、そして18ゞィト
は7オードワードを構成する。
これらは、命令を含めて、すべてのデータのための基本
的フオーマツトである。ハ デ−タ表示 すべてのデータは、2進形の中にあり、2進、IQ隼、
あるいはアルファニューメリツクで説明されても良い。
データビットは、2進化IQ隼データとして、4の群;
すなわち、アルファニューメリツクとしては8、2進数
としては16からMの群で説明される。後者は、2進法
における符号化、固定化、あるいは浮動小数点数として
説明される。ダブルワ−ドにいたる隣接ビッツの数は、
また、ストリングとして操作されることができる。設定
されるアルフアニユーメリツクのキヤラクタは、EBC
DICで表示される。ASCIIは、代替の交換コード
として支持されている。ニ ノゞイトアドレス 主要記憶装置におけるバイトロケーションは、ゼロから
始つて、連続的にバイトの群は、もし左バイトのアドレ
スが、各々2、4、8あるいは16の1倍数であるなら
ば、ハーフワード、ワード、ダブルワード、クオードワ
ードの1列に整列させられていると云われている。
ハーフワード、ワード、ダブルワード、あるいはクオー
ドワードが、そのように1列に整列しているときはいつ
でも、そのユニットは、そのアドレスから引き出される
ことができる。主要記憶菱直におけるデータのロケーシ
ョンは、アドレスの発展中に、間接的にアクセスされる
データデスクリプターによって明らかにされる。ホ 可
視レジスタ CPUI04には、33のユーザ可視レジスタがある。
図1において、その内容がCPUの状態を集合的に限定
している。
4つのタイプがある。
(図2参照)1ジエネラルレジスタ 2 ベースレジスタ 3 科学的レジスタ(任意) 4 多方面レジスタ へジエネラルレジスタ ジェネラルレジスタ(GR)は、固定小数点2進数字と
ビットストリングを操作するために用いられる。
CPUI04−GROからGR・ 15に、代表的に1
6の32−ビットジェネラルレジスタがある。ジエネラ
ルレジスタGR8からGR15は、また、指標レジスタ
として用いることができる。指標レジスタとして用いら
れたとき、それらは、ここでは×0から×7と呼ばれる
。指標化は、レジスタに含まれている32−ビット2の
桶数整数を用いて実施される。ト ベースレジスタ ベースレジスタ(BR)は、命令カウンタおよび堆積レ
ジスタ202一203と同様なフオーマツトを有してい
る。
ベースレジス外ま、記憶の部分を限定するためアドレス
計算中に用いられる。
代表的に8個の32ービツトベースレジス夕、BROか
らBR7がある。チ 科学的レジスタ 科学的レジスタ(SR)は、浮動小数点2進数で計算の
ための任意の装置である。
SROからSR3と呼ばれる代表的な4個の8ーバイト
科学的レジスタがある。科学的レジスタは、図2のフオ
ーマツト204−205を有している。リ 多方面レジ
スタ 5個の他のレジスタがある。
すなわち、・フオーマツト202−203を有する命令
カウンタ、 ・フオーマツト207を有するステータスレジスタ ・堆積レジスタ(Tレジスタと呼ばれ る)、 ・フオーマツト202−203を有する境界アドレスレ
ジスタ ・フオーマツト208を有するハードウェアコントロー
ルそしてマスクレジスタ。
命令レジスタは、実施される命令のアドレスを含む32
ービットのレジスタである。
ステータスレジスタ(STR)207は、目下実施され
ている手順に関する事実、例えば;アンダフローが、も
っとも最近オペレーションにより発生したのかどうかを
記憶する8−ビットレジスタである。Tーレジスタとし
て知られている堆積レジス外ま、目下の活動的な手順に
関連している降下堆積のトップを示すポインターを含む
32ービットのレジスタである。下に記述される堆積群
は、ワークスペースを提供し、ローカル変数を貯わえ、
そして手順記入とIJターンィンフオメーションを保存
するメカニズムを提供する。
境界アドレスレジスタ(BAR)206は、ソフトワヱ
フがアクセスすることのできる最低の絶対主要記憶アド
レスを指定する28−ビットレジス夕である。このレジ
スタは、システム初期設定中に移送され、ソフトウェア
により読み取られることができるにすぎない。ハードウ
エアコントロールマスクレジスタ208は、機械状態情
報を記憶する8−ビットのレジスタである。ヌ 命令フ
オーマツト 多少とも利用されているとしても、約200の命令があ
る。
各命令は、四つの異なれる長さの一つであるが、常に、
バイトの長さの偶数である。命令は、連続的ストレージ
ロケーションの中に記憶される。一番左のバイトのアド
レスは、2の1倍数であり、命令のアドレスである。命
令の8個のもっとも重要なビット(そして、幾つかの場
合には、8から11、あるいは1幼)ら15)は、オペ
レーションコードを表示し、一方、残存するビットは、
一つあるいはそれ以上の演算数を表示する。
演算数は、レジスタデゼィグネ−夕、変位デゼィグネー
タ、アドレスシラブル(論理的アドレス)、リテラル値
、直接リテラル値であるかもしれない。演算数の種類と
数は、命令フオーマットにより決定される。
m システムオルガニセーシヨン イジョブステップとタスク コンピュータシステムで実施される作業 は、ジョブコントロールランゲージ経由で一連のジョブ
ステップにより外面的に限定される。
ジョブステップは、ハードウエアリソースが割り当てら
れる作業単位である。典型的に、ジョブステップは、幾
つかのタスクより成っている。タスクとは、平行せずに
実行される命令の流れより成る、ユーザが限定する作業
の最少単位である。○ プロセス タスクとジョブステップのユーザ可視概念は、各々プロ
セスとプロセス群により、ハードウェアの中に表示され
る。
プロセスとは、CPUにより非同期的に実行されること
のできる整理された一連の命令として定義される(すな
わち、幾つかのプロセスは、活動的で共有のリソースで
あることができるが、ただ一つのプロセスは、実際には
、ある一つの時点で進行している。
)プロセス群とは、一つのジョブステップを実施するた
めに必要な、関連する一組のプロセスである。
ハ ブロセスコントロールブロツクとシステムべ−スプ
ロセスは、その実施中に、種々な点で、CPUのコント
ロールをやめることができるので、主要記憶装置におけ
る、ストレージェアリアは、CPUの状態情報は、プロ
セスがCPUのコントロールを再開する前に、あらかじ
めCPUの条件を整えるために利用される。
プロセスに指定されたストレージェアリアは、表4にお
いて、プロセスコントロールブロック(PCB)400
と呼ばれている。
PCBに含まれるデータは、そのプロセスに指定された
記憶ェアリアのアドレス(アドレススペース)、すべて
の適切なしジスタの内容、およびプロセスの状態を含ん
でいる。かくして、PCBは、情報ロスないこ、プロセ
スを開始あるいは再開する必要な情報のための一時的ス
トレージェアリアとして役立っている。
各々のPCBは、ハードウェアにとって可視的なもので
あり、そして、システム初期設定中に発展し、システム
オペレーション中に修正された一組のハードウェアを経
由して、オペレーティングシステムによりアドレスされ
るこてができる(表5)。システムベース(表5および
6)と呼ばれる絶対主要記憶ェアリアがある。
このェアリアは、ファームウェアによって発展させられ
、そして、読みとられることができるが、書き取られる
ことができないベースアドレスレジスタ(BAR)50
1を経由して、アクセスされることができる。
システムベース502は、目下進行中のプロセスのため
に、各々ジョブステップナンバーとプロセスグループナ
ンバー(J・P)を含む、多くのシステムの属性を含ん
でいる。システムベースにおけるもう一つの属性は、J
テーブル503として知られているハードウェア限定デ
ータ機構を指す指針である。このテーブルは、目下、シ
ステム中にある、あらゆるジョブステップのためのェン
トリを含んでいる。Jテーブル503における各ヱント
リは、ハードウェア限定データ機構である、関係Pテー
フルを指している。このテーブルは、プロセスグループ
を限定し、プロセスグループにおけるあらゆるプロセス
のためのェントリを含む。各Pーテーブルのェントリは
、PCB400を指している。表5に関して、コミュニ
ケーションユニット506経由で、Jナンバーにより指
標されたJテーブル指針505は、Jーテーブルェント
リ503にアクセスを提供する。
このェントリは、コミュニケーションユニット506経
由でPナンバーにより指標化されたとき、Pーテーブル
エントリ504にアクセスを提供するp−テーブル指針
を含む。
P−テーブルェントリは、目下進行中のプロセスのPC
Bを指す指針507を含む。かくして、オベレーテイン
グシステムは、BAR501の内容を用いている活動的
PCBをアクセスすることができ、そして、その関係す
る論理的名称(J・P)があたえられている他のPCB
に接近することができる。
ニ メモリセグメンテーシヨン マルチプロセス環境において、本書の中で記述する如く
、一定の時点で記憶装置の中に多くのプロセスがある。
これらのプロセスは、規模において異なり、記憶割当て
問題を生ずる記憶を要求する。
オペレーティングシステム(本書中には示めされていな
い)と協力して本書中に記述されるハードウェアは、動
的にメモリスペースを割当てることによって問題を解決
する。
記憶必要条件のランダムな性質の故に、記憶は、可変的
サイズセグメントの中で割当てられ、そして記憶割当て
は、プロセス進行タイム中に再構成されることができる
かくして、プロセスは、多くの非隣接記憶セグメントを
割当てられる。
この記憶割当方法は、セグメンテーションと呼ばれてい
る。セグメンテーションは、あるプロセスの一部あるい
は、すべてがリロケイトされるときはいつでも、記憶ア
ドレスが修正されなければならないという点において、
付加的問題を提示する。
この問題を緩和するために、本書中に記述されているシ
ステムは、技術を提供する。それによって、プロセスが
用いるアドレスは、絶対主要記憶アドレスよりはむしろ
、論理的である。
これらの論理アドレスは、絶対アドレスを発展させるた
めに用いられる。
セグメンテーションにより、また、セグメントデスクリ
プタ−のシステムを経由して、各プロセスが、それ自体
の、あるいは、関連する記憶セグメントをアクセスする
ことを許す。
セグメントデスクリブターをアクセスすることによって
、プロセスは、セグメントのアドレスを得る。
セグメントデスクリプターは、主要記憶装置の中に含ま
れており、オペレーティングシステムにより維持される
各プロセスは、2068にいたる記憶セグメントのアク
セスを有するかもしれない。
通常、これは、各プロセスにつき等しい数のセグメント
デスクリプターを必要とするであろう。しかし、セグメ
ントは、共有されることができるので、オペレーティン
グシステムグループは、デスクリプターをセグメントテ
ーブルに分ける。このグループ化は、一つのプロセス(
タスク)、プロセスグループ(ジョブステップ)、ある
いは全体的に(システムの広さ)、アクセス能力にもと
ずし、ている。各プロセスは、それに関連する、15に
いたるセグメントテーブルを有しているかもしれない。
この技術は、各セグメントのために、セグメントテーブ
ル経由で、プロセスがアクセスすることができる、ただ
一つのセグメントデスクリプターを必要としている。
かくして、セグメントデスクリプターに要求されている
記憶スペースは、減少する。リロケーション中の記憶更
新は、減少し、そしてなんらかのプログラム保護が提供
される。(プログラム保護のための主要メカニズムはリ
ングシステムである。)プロセスは、それがどのセグメ
ントをアクセスするかを決定することができるものでな
ければならない。
従って、システムは、プロセスに、2つのセグメントテ
ーブルワードアレイ(STWA)をあたえる。これらの
アレイは、プロセスをアクセスすることのできる、すべ
てのセグメントテーブルのアドレスを含む。
2つのセグメントサイズ、大と小、があるので、各プロ
セスにつき2つのセグメントテ−ブルワードアレイがあ
る。
大のセグメントは、最大サィザZ2バイトを有する。一
方小のセグメントは、最大規模〆8バイトを有する。す
べてのセグメントは、最大限にいたるまで、16ーバィ
ト増大において、サイズで異る。システムは、典型的に
28にいたる大のセグメントおよび2040の小のセグ
メントを収容することができる。
セグメントテーブルワードアレイはオペレーティングシ
ステムによりリロケイトするかもしれない。
それ故に、プロセスは、その関連STWAの絶体アドレ
スを知らなければならない。プロセスのためのPCBは
この情報を含み、表4上では、アドレススペースワード
ASWO−1として知られている2つのワ−ドを含む。
各ワードは、セグメントテーブルワードアレイSTWA
を指している。オペレーティングシステムは、関連する
STWAがリロケイトするときはいつでも、ASWの内
容を更新する。指針のチェーンを除々に進めること、そ
してセグメントデスクリプターをデコードすることは、
ファームフェアの機能であり、かくして一度開始されれ
ば、オペレーティングシステムにとってすらも不可視で
ある。セグメンテーションは、プロセスにとって利用で
きるものであるので、アドレススべ−スの2億バイト以
上を限定する。
この数は、主記憶の能力を越える。従って、2次ストレ
ージ(磁気ジスクあるいは磁気ドラム)は、主記憶に関
連して用いられる。オベレーテイングシステムは、シス
テム がt実際に得られるよりもはるかに大きな主記憶を有す
るという錯覚を作り出す。
この概念は、仮想記憶と呼ばれる。ある特定の時点で、
限定されたセグメントは、物理的に主記憶装置にあるか
、あるいは、ないかもしれない。
セグメントデスクリプターの内容は、関連するセグメン
トが主託億装置にあるかどうかを示めす。ハードウェア
は、主記憶装置にないセグメントをアクセスする、プロ
セスの試みを看破し、そして、オペレーティングシステ
ムに通知する。オペレーティングシステムは、希望する
セグメントを、二次ストレージから主記憶装置の中へ転
送させる。次に、オペレーティングシステムは、セグメ
ントの絶対アドレスがみし、出されることのできる唯一
の場所であるセグメントデスクリプターの中へ、セグメ
ントの記憶アドレスをおく。このオペレーションはプロ
セスにとって不可視であり、かくして、そのセグメント
が主記憶装置の中にないのか、あるいは、そのセグメン
トが主記憶装置中でリロケィトされなければならないか
は気ずかれていない。本書中で記述されているコンピュ
ータシステムは、プロセスが相互に干渉すること、およ
び、独断で相互のアドレススペースを共有することを防
ぐことによって、データと手順の保護を提供する。
この保護は、記憶セグメンテーション経由でアドレス能
力を限定することにより、また、リングシステムにより
達成されることができる。セグメントテーブルは、シス
テム内の種々なプロセスのアドレススペースを分離する
プロセスは、常に、実施中に、セグメントされたアドレ
スを用いる。セグメントされたアドレスは、そのセグメ
ント内で、セグメントナンバーおよび関連するアドレス
よりなる。ハードウエアは、プロセスにより用いられた
アドレスが、そのプロセスに与えられたアドレススペー
スの一部であることを検査する。アドレスが所定のアド
レススペースの外にある場合、例外が発生する。
ハードウェアは、照合プロセスのセグメントテーブルを
用いるので、プロセスは、他のプロセスのアドレススペ
ース内でデータを照合することができない。
かくして、プロセスあるいは、プロセスグループが、他
のプロセスグループに属している実体を照合する可能性
はない。一般に、システム内のアドレススペースにおけ
る重復は、すべてのプロセスにより共有される、これら
のセグメントのために発生する。
これらの周知のセグメントは、アドレス衝突に対して保
証するために検査するシステムブログラムにより作り出
される。かくして、セグメンテーションは、ユーザプロ
グラム相互を保護し、オペレーティングシステムをユー
ザプログラムから保護する。
幾つかのプロセスが共有するセグメント は、これらのプロセスの一つによって、誤用から保護さ
れない。
この問題を解決するために、リングシステムが利用され
る。これにより手順とデータのセグメントは、4ークラ
スハイアラーキの中へ一団とされる。4つのりングクラ
スは0から3までの番号が付される。
各リングは、最大の特権を有するレベル0(最つとも内
部のリング)および最小の特権を有するレベル3(最つ
とも外部のリング)で、システム特権のレベルを表示す
る。
システム内のあらゆる手順は、それにあたえられた、最
小と最大の実行リングナンバーを有しており、そして、
そのナンバーは誰れが手順をコールしているかを明らか
にする。手順は、他の手順をコールすることができ、パ
ラメータを他の手順にパスすることのできるサブルーチ
ンである。リングシステムの一般的ルールは下記の如く
である。
1 内部リングにおける手順は、外部リングにおけるデ
ータに自由なアクセスを有する。
逆に、外部リングにおける手順は、内部リングにアクセ
スできない。
2 外部リングにおける手順は、内部リングにおける手
順にブランチすることができる。
しかし逆はみとめられない。3 データを含む各セグメ
ントは、2つのりング値を与えられている。
1つは読み取り (RO)のためであり、他は書き込み (WR)のためである。
これらのリング値は、最大のリング値を規定している。
この場合、手順は読み取りあるいは書き込みのどちらか
の方法で、データをアクセスするとき、実行することが
できる。
手順命令が実施される度毎に、その手順のりングナンバ
ー(有効アドレスリング、 EAR)は、照合されるデータを含むセグメントにあた
えられたリングナンバーに対し検査される。
EARは、命令カウンターにおけるプロセスリングナン
バーの最大数であり「そしてアドレス通路にみし、ださ
れるベースレジスタとデータデスクリブターにおける、
すべてのりングナンバーの最大数である。デ−夕のアク
セスは、リングナンバーの比較にもとずきみとめられる
か、あるいは、拒否されるであろう。例えば、3の最大
読み取りリング値および1の最大書き込みリングを有す
るセグメントに、システムテーブルが存在する場合、リ
ング3におけるユーザ手順実行は「そのテーブルを読み
取るかもしれないが、しかし、そのテーブルを更新しな
いかもしれない。ブレデザインによって、リング0およ
び1は、オベレーテイングシステムのためにリザーブさ
れリング2および3は、ユーザのためにリザーブされる
リング0は、全システムオペレーションにとって重大な
これらのセグメントを含んでいる。リング1は、大量の
システムセグメントを含み、そのシステムセグメントの
失敗は、破滅的とならず、回復を許すであろう。ユーザ
は、チェックアウトプログラムのためにリング2を利用
してもよいし、また、手直しされたプログラムのために
リング3を利用してもよい。
へ 手順コール 手順コールは、本書中に記述されているシステムにおい
て重要なオベレ−ションである。
手順コールは、一方の手順から他方の手順へパスするた
めに用いられ、ユーザ手順がオペレーティングシステム
サービスを用いることを許可するために、用いられ、オ
ペレーティングシステム内で、モジュール機構を達成す
るために用いられる。手順コールは、命令によって、ま
た堆積(図7A)と呼ばれるハードウェアの承認された
実体によって実施される。堆積は、あと入れ先出いこも
とずし、て、データの検索を受け入れ、貯蔵し、許すメ
カニズムである。
堆積は、堆積セグメントと呼ばれる特別なセグメントの
中にある。堆積セグメントは堆積フレーム701(図7
Aおよび,B)と呼ばれ、動的に各手順に割当てられて
いる、多くの隣接部分から成っている。第一の堆積フレ
ームは、セグメントのトップに移送され、次のフレーム
は、そのあとに移送される。移送される最後のフレーム
は、堆積のトップとみなされる。T−レジスタ702は
、目下の活動的なプロセスのため堆積のトップをロケー
トする。
仮想Tーレジスタは、システム内において、他のすべて
のプロセスのPCBに存在する。図7Bの堆積フレーム
701は、3エリアより成る。
即ち、変数を貯蔵する作業エリア702、レジスタの内
容を貯えるセーブエリア703、手順間でパラメータを
パスするコミュニケーションエリア。手順コールの前に
、ユーザは、貯蔵することを欲する、これらのレジスタ
を規定しなければならない。
ユーザは、コールされる手順へパスされるパラメータを
コミュニケーションエリアの中へ移送しなければならな
い。
コールが為される時、ハードウェアは、命令カウンタI
Cの内容を貯蔵し、そして、コールされた手順からリタ
ーンを容易にするためベースレジスタを規定する。各手
順コールは、堆積セグメント701内で堆積フレームを
作り出し、その後のネステイングしたコールは、付加的
フレームを作り出す。
これらのコールされた手順の一つからの各退去は、堆積
フレームが堆積から消去される原因となる。かくして、
コールの歴史が維持され、それは順序正しいリターンを
容易にする。異るリング内で実行している手順間の保護
を保証するため、異る堆積セグメントが用いられる。
各プロセスにつき各保護リングに相当する一つの堆積セ
グメントがある。PCBは、各プロセスに関連するりン
グ0,1および2のため堆積セグメントのスタートを指
す3の堆積ベースワードを含んでいる。リング3堆積セ
グメントは、内部コールによって入れられることは決し
てあり得ない。それ故に、その堆積スタートアドレスは
、PC離村で必要とされない。
N プロセスマネジメントと同期性 本書におけるシステムは、ソフトウェア・ハードウェア
、およびファームウェアの結合を用いて、オペレーティ
ングシステムにより制御される多量処理オペレーション
を提供するものである。
ソフトウェアは、システム内でプロセスを作り出し消去
する。一方ハードウェアとファームウェアは、CPU上
のプロセスを倍数にする。その上、ソフトウェア、ハー
ドウェア、およびファームウェアの結合は、プロセス間
の同期を提供する。プロセスは、通常、しかし常にでは
ないが、関連するジョブハンドリング中にインプット/
アウトプットオペレーションの開始および終了時に、お
よび、他の場合には、オペレーティングシステムにとっ
て必要とみなされる目的で、開始されたり、また中止さ
れたりする。
従って、コミュニケーションシステムは、有効に、関連
するプロセスを開始したり中止したりすることが必要で
あり、また、有効にプロセス間に情報をパスすることが
必要である。本書中のハードウエアは、プロセス間のコ
ミュニケーションリングを提供するために、信号機と呼
ばれる内部メッセージを提供する。ィ プロセス状態 プロセスは、常に、四つの可能な状態の一つにある。
即ち、進行、準備、待ち、あるいは中断。ハードウェア
は、これらの四つのプロセスの状態を認識し、そして、
プロセス発信、状態変更を実施し、プロセス状態にもと
ずくデータ機構を維持するために種々なファームウェア
手順を実施する。PCBは、その関連プロセスの現行状
態をフィールドを含む。プロセスは、CPUの制御を有
するとき、進行状態にある。
この状態は、CPUにアドレススペースとスターティン
グアドレスを供給することを含む。その後、CPUは、
プロセスの手順セグメントにおいて、命令を実施する。
現在進行中のプロセスのために、PCBのプロセス名J
テーブルワード(論理アドレス)は、システムベース(
図6)内で、進行プロセスワード(BAR+60)に維
持される。(注意:図5に示めされているシステムベー
スは、幾つかの詳細の省略のほかは、図6に示めされた
システムベースと同じである。
)準備状態は、プロセスがCPUに認識されていないの
で、CPUの制御を受けていないということを除き、進
行状態に等しい。
準備状態におけるプロセスは、他の準備状態を伴うCP
Uと進行プロセスにとって論争の中にある。プロセスが
、信号機を経由するメッセージのような特殊な事象が生
じるまで継続することができない時、それは、待ち状態
にある。
待ちプロセスは、CPU‘ことつて論争の中にはない。
しかし、それは、要求されている事象にとって、他の待
ちプロセスとの論争の中にあるかもしれない。中断プロ
セスは、ソフトウェアにより、ある時間中止されていて
、後に再開されるかもしれないプロセスである。
プロセスの中止および再開の決定は、プロセスにとって
外部的である。かくして、中断プロセスは活動的でなく
、従って、事象発生の通告を受けることができず、また
、CPUを利用することができない。プロセスは、下記
の状態で中断する: (1’終了命令を実行することによる(すべてのその機
能完了の結果として)。
■ オペレーティングシステムによる中断命令の実施に
よる。
【3} 例外状態の発生による。
これによって、制御は、オペレーティングシステムに移
転する。
ロ プロセス発信 プロセスは、進行しながら、随意にプロセスの作用によ
り、ある状態から他の状態に動く、あるいは不随意に、
他のプロセスの作用により、ある状態から他の状態に動
く。
デスパッチャーとして知られているCPUファームウェ
アは、状態間のプロセスの処理を制御する。デスパッチ
ヤーは、準備あるいは待ち状態にあるプロセスを操作す
るため、−組のキュー(後に記述)を使う。中断プロセ
スは、ソフトウェアにより制御される。
図6,8および9に関して、準備あるいは待ちプロセス
は、PCBおよびプロセスリンクと呼ばれる特殊キュー
ェントリにより表示される。
図9は、GOセグメント802の内容物の分解図を示め
し、また、活動プロセスのプロセスリンク803a一8
03bおよび803c一803g、中断プロセスのフリ
−プロセスリンク805a−805cを含む。各プロセ
スリンクは、プロセス名(J・P)、プロセス優先順位
、およびキューにおける次のプロセスリンクの指針を規
定する。待ちキュー803a−bおよび準備キュー80
3c−gのような種々なタイプのキューがある。Jテー
ブルに類似し、Gテーブルとして知られているハードウ
ェア装置(図6と8)は、すべての一般的セグメント8
02−802n(既知のシステム中)に対する指針を含
む。
Gテーブル80 1の技初の素子、GOは、デスパツチ
ヤキユーを含むセグメント802を指す。Gテーブル8
01に対するGテーブル指針は、図5上でシステムベー
ス502にみい出される。また、GOセグメント802
において、準備キュー803c一803gのヘッド80
5を確認する内部プロセスキューワード(IPQW)と
呼ばれるヱントリは、システムベースにある。かくして
、デスパツチヤは、準備キュー803c‐803gに相
談することによって、すべての準備プロセスを試験する
ことができる。
現在進行中のプロセスが、状態を変えるとき、デスパツ
チヤは、準備キューのヘッドで、プロセスリンクを除去
し、そのPCBをアクセスするためにJ・P名を使う。
その後、PCBにより限定されるプロセスは、新しい進
行プロセスとなる。一つ以上のプロセスが、同じ事象上
で待っているかもしれないので、待ちプロセス803a
一803bのキューは、各事象のために存在する。
また、諸待ちプロセスは、GOセグメントに存在するプ
ロセスリンク805経由して、共にストリングされる待
ちキューのヘッドに対する指針は、信号機903(後に
記述される)に存在する。プロセスが待っているかもし
れない多くの事象が存在する。それ故に、多くの待ちキ
ューがあり、その各々は関連する信号機903,904
を有する。準備あるいは待ちプロセスの数は、動的に変
化する。
かくして、準備および待ちキューに要求されているプロ
セスリンクの数もまた変化する。この事実は、デスパッ
チャのために記憶マネジメント問題を導入する。問題は
、フリープロセスリンクキュー805a−cと呼ばれる
他のキューによって解決される。
このキューは、準備あるいは待ちキューにより使用され
ていず、そして、準備あるいは待ちプロセスの特殊なキ
ューを拡大するために用いられることのできる、セグメ
ントGOにおけるプロセスリンクのすべてを一緒に連絡
する。
フリープロセスリンクキュー805のヘッド902に対
する指針901は「GOセグメント802の初め近くに
存在する。
ハ プロセス同期性 プロセス同期性は、同じタスク上で作業する2プロセス
の活動を調整することが要求されている。
同期性は、コミュニケーションするプロセスのアドレス
スペースに存在するデータ機総である信号機903一9
04を用いて達成される。信号機は、事象発生を信号し
、メッセージのキューを処理するために用いられる。
この文中における事象とは、プロセスによつつて観察さ
れ、他のプロセスにとって関心ある事柄である。事象は
、非同期オペレーションの完了であるかもしれず、ある
いはリソースの有用性であるかもしれない。プロセスは
、事象発生を信号するために2つの信号機オペレーショ
ンを用いる。
一つのオペレーションは、信号を信号機に送り、他は、
信号機から信号をとらえる。(発信オペ′レーションは
、度々Vーオベレーションと呼ばれ「受信オペレーショ
ンは、Pーオベレーションと呼ばれる。)発信オペレー
ションは、プロセスにデータあるいはデータの準備がで
きているという信号を送らせる。
信号機は、他のプロセスが信号をとらえる準備のできる
まで、その信号を貯蔵する。かくして、発信プロセスは
、それがデータを送ったので「進行することが自由にで
きる。受信オペレーションは、規定の信号機を試験し、
そして、信号をとられる。信号がある場合、受信プロセ
スは実施を続ける。
しかし、信号機上に信号がない場合は、受信プロセスは
、待ち状態に入る。その後、信号機は、待ちキューのヘ
ッドに対する指針の役目をする。このプロセスは、他の
プロセスが、ある特殊な信号機に信号を送るまで、信号
機で待ち行列している待ち状態にとどまる。かくして、
信号機は、あるプロセスが信号をとらえるまで、その信
号を保持することができる。あるいは、信号機は、信号
がプロセスに送られるまで、そのプロセスを保持するこ
とができる。メッセージは、また、プロセスからプロセ
スへパスされることができる。
メッセージは、信号および付加的情報と同じ現行の質を
有するか、あるいはそのような質を有しない。
情報のある部分は、ハードウェアにより供V給され、ま
た、ある部分はメッセージを送ったプロセスの手順によ
り供孫台される。メッセージは、発信プロセスのプロセ
ス名を伴う。
かくして、多くのプロセスは、信号機を通して、発信者
の名称を付した情報を送ることができる。メッセージ信
号機は、プロセスによりとらえられるべく待つているメ
ッセージのキューを有するかもしれない。
信号機に関しては記憶マネジメント問題を提示しながら
「記憶スペースの必要条件が増減する。再び、問題は、
自由メッセージリンクのキューで解決される。
それらのリンクは、メッセージリンクを供給したり吸収
したりすることが必要であるとき、容易に見し、出され
ることのできるセグメントの既知の場所に存在する。信
号機および信号機上に作られるキュー は、異なるプロセスにより共有されるので、全信号機機
構は保護される。
このことは、信号機を含んでいるセグメントのアクセス
を制限するハードウェアとソフトウェアの規定により達
成される。かくして、信号機は、信号機デスクリブター
セグメントの中になければならず、そのセグメントの幾
つかは、Gセグメントであるかもしれない(もしシステ
ムコミュニケーションが必要であるならば。)しかしな
がら、すべてのGセグメント(GOを徐く)は、信号機
デスクリプタセグメントである。各信号機デスクリブタ
は、信号機に対する指針を含む。
かくして、信号機に対する付加的保護を提供しながら、
信号機アドレスは、信号機デスクリプタを経由して発展
させられる。信号機セグメントは、セグメント内でセグ
メントナンバーおよび関連ロケーションを用いて、ある
いは直接にG、Dナンバ−を用いて、論理的にアドレス
されることができる。
プロセスコントロールブロック機構 図4に関して、プロセスコントロールブロック(PCB
)のフオーマツトが示めされている。
プロセスコントロールブロック400は、CPU地位を
貯蔵するため、プロセスが利用することのできる主記憶
装置におけるストレージヱリアである。PCBをアドレ
スすることは、表5に関連して上記に記述したようにし
て実施される。PC母旨針507(表5)は、表4の記
憶ロケーション0でプロセスコントロールブロックPC
Bを指している。下方向への進行において、記憶ロケー
ションは、4バイトだけ増加し、一方記憶ロケーション
0から上方向への進行では、記憶ロケーションは、8バ
イトだけ増加していることに注目されるであろう。下方
記憶ロケーションは、0から正であるとみなされる。一
方、0から上方向のロケーションは、負の方向とみなさ
れる。上方向のロケーションは、任意であり、プロセス
コントロールブロックに含まれるかもしれないし、ある
いは含まれないかもしれない。また、148から176
のロケーションもまた任意である。(注意:記憶ロケー
ションのもとでの数字は、プロセスコントロールブロッ
クPCBの0照合ロケーションから、バイトでの変位を
規定する。)バイト0から16にいたる(但し16を含
まず)バイトでスタートし、長さで4バイトである各プ
ロセスメインワードPMWを伴い、四つのプロセスメイ
ンワードPMWOからPMW3が貯蔵されている。プロ
セスメインワード0は、バイト0を占め、4部より成っ
ている。すなわち、能力バイト、優先バイト、順位バイ
ト、状態バイト、デコーダ延長バイトDEXT。
図10aから10dに関しては、図10bに示めされた
能力バイト1001の追加の詳細と共に、プロセスメイ
ンワードPMWOの詳細が示めされている。図10bに
関しては、最初のビツト1005は、タイムアカンテイ
ング機能が、そのプロセスのために実行されているか否
かを示めすためのアカウンテイングモードビツトである
。アカウンテイングモード1005が、2進数0にセッ
トされるとき、タイムアカウンテインング機能は、プロ
セスのために実施されない。一方、アカウンテイングモ
ード1005が2進数1にセットされるとき、タイムア
カウンテイングは実施されている。科学的モードビット
1006は、ゼロにセットされたとき、機械の科学的レ
ジスタの貯蔵は実施されず、図4で148から176の
バイトでロケイトしている科学的レジスタの貯蔵エリア
は、プロセスコントロールフロックPCBに存在しない
。科学的モードビット1006が2進数1にセットされ
るとき、科学的任意の特質が存在し、プロセスにおいて
用いられる。そして、科学的レジスタ貯蔵エリアは、必
要なとき、科学的レジスタの内容を貯蔵するために用い
られる。標準コードセットが用いられていることを示め
す位置における2進数0を伴い、コードモードビット1
007は、標準コードセットあるいは適性コードセット
が、プロセスにより用いられているかどうかを示めす。
一方、第3ビットポゼション1007における2進数1
は、適性コードセットが用いられていることを示めす。
能力バイトのビットの残りは、ゼロにセットされる。優
先順位バイト1002の詳細は、図10cに示めされて
いる。
図10cに関して、優先順位バイト1002の最初の4
つのビット1008は、一定のプロセスコントロールブ
ロックPCBと関連するプロセスの優先順位レベルをセ
ットするために利用される。各プロセスは16レベルの
優先順位の一つが与えられており、それは競合プロセス
を順序だてるために用いられる。即ち、イ 準備プロセ
スの中で進行されるプロセスを選定するため。
ロ プロセスをキューにおくためである。
優先順位は0から15に減少する。一定の優先順位レベ
ルのためにFIF0(先入れ先出し)ルールが適用され
る。次の優先順位バイト1002の4ビット1009は
ゼロである。
図10dに関しては、状態バイト1003の詳細が示め
されている。
状態バイトは、プロセスコントロールブ。ックPCB4
00‘こ組み合せられているプロセスに関する情報を提
供するために用いられる。活動的フィールドビットAI
OIOは、プロセスが活動的であるとき、2進数1にセ
ットされる。中断フィールドSIOIIは、プロセスが
中断しているとき、2進数1にセットされる。サブステ
ートフイールドSSIO12は、2ビットフィールドで
あり、プロセスの下記のサブステートを限定する。ィ
2進数00にセットされるとき、プロセスは不活発であ
る。
ロ 2進数01にセットされるとき、プロセスは、準備
プロセスのキュー(Q/PR/RDY)で待機している
ハ 2進数10にセットされるとき、プロセスは、信号
機のキュー(Q/PR/S)で、信号機上で待機してい
る。
ニ 2進数11にセットされているとき、プロセスは、
プロセッサにより実施されている。
中間オペレーションフィールド(MOI)1 013は
、ィンタラプトが生じるとき、2進数1にセットされ、
命令の実施中−すなわち、プロセスの完了前に備えられ
る。
拡大した装置モードビットEXTDIO14は、プロセ
スが機械のエミュレーションモードである拡大した装置
モードで操作されるとき、1にセットされる。ビット1
015と1016は、0にセットされる。プロセスメイ
ンワードPMWOの第4バイトは、装置拡大数を含み、
システムがエミュレーションモードにあるとき利用され
る。プロセスメインワードPMWIは、プロセスコント
ロールブロックPCBの、バイト4一7に貯蔵される。
PMWIの詳細は、図10eに示めされている。ステー
タスバイト101 6は、PMWIにおける最初のバイ
トであり、ステータスレジスタ内容を貯蔵する。マルチ
プロセッサバイトMPIO18は、マルチプロセッサ構
造において重要である。さもなければ、このフィールド
は0である。プロセスメインワードの第2および第4バ
イトは、それぞれM旧2フィールド1 0 1 7およ
び1019であり、それは通常のオペレーションのため
には0でなければならない。
プロセスメインワードPMW2は、プロセスコントロー
ルブロツクのバイト8から11を占め、図10fでより
詳細に示めされている。
図10に関しては、ビット4からビット31のフイ−ル
ドは、プロセスが待ち状態あるいは中断状態にあるとき
、PCBが結合する信号機の論理名SEG,SRAI0
21を含む。例外クラスおよびタイプ1023は、プロ
セスが例外のあとで中断状態に入る原因となるィンタラ
プト様の例外のクラスとタイプを含む。ビット4から1
5のフィールドは、プロセスが、上記にのべたビットに
先立って「異る状態にあるとき、無意味な1022であ
る。プロセスメインワードPMW3は、PCB400に
おいて、バイト12から15を占め、装置拡大テーブル
を指している。
PMW3の詳細に関する図10gに関して、DETSZ
フィールド1024は、テーブルにおけるェントリの数
を限定し、そして、もしこのフィールドがゼロであるな
らば、装置拡大はプロセスに許されない。DETAフイ
−ルド1025は、1んゞィトの単位で装置拡大テ−ブ
ルの絶対アドレスであり、DETSZが0でない場合に
のみ重要である。装置拡大テーブルは、DETSZェン
トリより成り立っている。各ェントリは1バイトサイズ
である。テーブルのDE×Tthヱントリは、プロセス
が装置拡大モードDE×Tで活動する能力を限定する。
DE×T比バイトが0であるとき、装置拡大ナンバーD
X×Tは許されず、一方もしDE×T仇バイトが1であ
るならば、装置拡大ナンバーDE×Tは許される。0と
1以外のDE×Tの値は、違法である。
(図10a DE×Tナンバー1004参照)PCB4
00のバイト16から23は各々2つのアドレススペー
スワードASWOとASWIを含む。
各ASWはセグメントテーブルワードのアレイを指す指
針を含む。ASWOとASWIの両方は、それぞれ、図
10hで示めされている同じフオーマツトを有する。
セグメントテーブルワードのアレイのサイズは、アレイ
におけるセグメントテーブルワードの数により限定され
、典型的に、ASWOのためには6、およびASWIの
ためには8を含む。STWSZフイールド1026は、
セグメントテーブルワードのアレイのサイズを表示する
。セグメントテーブルワードアレイフイールドSTWA
I 0 2 7は、1ふゞィトの単位でアレイの絶対ア
ドレスを含む。即ち、アレイの絶対アドレスは、バイト
で16倍のSTWAである。バイト24から27は、図
10iで更に詳細に示めされている例外ワードEXWを
含む。
例外ワードは、プロセスメインワードPMW2に貯蔵さ
れているように、そのクラスに応じて、プロセス例外に
つづいてとられる行動を限定する例外クラステーブルを
指す指針(SEG,SRA)1029を含む。(図10
f参照)例外ワードEXWのMBZフィールド1028
は0でなければならない。PCBの31を通してバイト
28に位贋する堆積ワードSKWは、プロセスが進行し
ていないとき、プロセスの堆積のTレジスタのトップの
値を含み、図10jで更に詳細に示めされている。
図1 0iに関しては、バイト0と1は、TAGフィー
ルド1031を限定する。TAGは、その内容によって
デスクリプタのタイプを表示し、SKWにとって0でな
ければならない。SKWのビット2と3は、保護の目的
で、堆積の区別したアドレスに組み合わされたりングナ
ンバーを含むRWGフィールド1031を含む。
ビット4から31は、セグメントナンバーSEGを含み
、セグメント関連アドレスSRAI032は、セグメン
トテーブルに記述されるセグメントを確認し、そして、
セグメント内のセグメント関連アドレスを確認するフィ
ールドである。堆積ワードSKWは、プロセスが進行状
態を去る度毎に更新される。堆積ワードは、プロセスが
進行状態になる度毎に、Tレジスタの内容を回復するた
めに用いられる。この最後の場合において、TAGI0
31とR瓜GI031はゼロになるように試験される。
さもなければ、違法PC財例外が発生する。PCB40
0のバイト32から35は、時々ICCと呼ばれる。
命令カウンタ内容ワードICWを含む。図10kに関し
ては、命令カウンタワードICWの詳細が示めされてい
る。その中でTAGフィールド1033は、2進数00
を含まなければならない。(即ち、ゼロ以外の値は、命
令カウンタでは違法でである。ビット2と3を占める現
行R皿Gフィールドは、メインストレージに対するアク
セス権利の決定に利用されるプロセスの現行のりング数
を限定する。ビット4から31は、実施される次の命令
のアドレスを限定するセグメントナンバーとセグメント
関連アドレス(SEG,SRA)1036を限定する。
バイト36から39におけるMBZフイールドは、0で
なければならない。
(注意:M旧Zフィールドは、常に0でなければならな
いフィールドを表示する。)M旧Zを、名称J・Pから
アクセスされる度毎に試験される。もしそれが0でなけ
れば、違法なPC財例外が発生する。堆積ベースワード
SBWO−2は、プロセスコントロールブロック400
でバイト40一51を占める。
これらのワードは、図101でより詳細に示めされてい
る同じフオーマツトを有する。これらは、堆積オペレー
ション中に利用される。そして、用いられるときはいつ
でも、それらのTAGフイールド1036とRINGフ
イールド1037は、ゼロでなければならない。さもな
ければ違法なPCB例外が発生する。ビット4から31
は、各々リング0,1、および2のために堆積セグメン
トの最初のバイトの区分されたアドレス(SEC,SR
A)1038を含む。プロセスコントロールブロック4
00のバイト52から83は、ベースレジスタ貯蔵エリ
ア(8ワード)のためにリサーザされたスペースである
バイト84から147はすべての一般的レジスタの値(
16ワード)を貯蔵するために利用される貯蔵エリアで
ある。バイト148から179は、科学的レジスタ(8
ワード)を貯蔵するために利用される貯蔵エリアである
。5個のダブルワードは、PMWOワードにおけるアカ
ウンテイングモードビツトがセットされたとき、タイム
アカンテイング目的のために、PCBゼロアドレス上の
PCB400で与えられる。
これらのワードは、PCBアドレスマイナス8からPC
Bアドレスマイナス40にロケィトする。各ワードは、
ゼロで満たされるビット52−53を伴い、最初のその
52ビットにおいて、100企分の1秒単位で表示され
るタイム、あるいはタイムインターバルを含む。残余の
タイムアウトダブルワードRT0(PCBにおいて0よ
り上の最初の8バイト)は、タイムアウト例外が発生す
る前に、プロセスに代って、プロセッサにより実際に消
費される時間量を含む。PTOワードは、下記の方法に
より更新される。即ち、プロセスが、進行状態を退去す
る度毎に、プロセスタイマー値は、RTOワ−Hこ貯蔵
される。プロセスが進行状態に入る度毎に、プロセスタ
イマー値は、RTOから移送される。バイト7から15
における進行時間アカウンティングRUAダブルワード
は、プロセスが進行状態にあるとき、プロセッサタイム
の全量を規定するタイムカウンターである。
アカウントされる時間は、プロセスに代って、独占的に
プロセッサにより実際に消費される時間である。RUA
ワードは、下記の方法により更新される。プロセスが進
行状態を退去する度毎に、プロセスタイマーPTの値は
、読み取られる。RTOとRTの内容の相違は、RUA
に加えられる。
(従って、PT値は、RTOに貯蔵される。)プoセス
が中断中の時間は、計算されないことに注意すること。
RTOとRUAワードは、もしアカウンテイングモード
ビツトが0にセットされたとしても更新される。しかし
、CET,RTA、およびWTAワード(後に記述され
る)は、プロセスメインワードPMWOが1にセットさ
れる場合にのみ、プロセスコントロールブロックに提供
される。これらは、この場合にのみ更新される。バイト
17から23における待ち時間アカウンティングWTA
ワードは、プロセスが待ちの状態にあるときリアルタイ
ムの全量を規定するりァルタィムカウンターである。W
TAワードは、下記の方法で更新される。プロセスが待
ちの状態退去する度毎に、日時計値の時間TODが読み
取られ、TOD値マイナスCET値ワードは、WTAワ
ード‘こ加えられる。バイト24から31に位置する準
備タイムアカウンティングRTAは、プロセスが準備の
状態にあるとき、リアルタイムの全量を規定するりアル
タイムカウン夕−であるダブルワードであるRTAは、
下記の方法で更新される。
即ち、プロセスが準備の状態を退去する度毎に、日時計
時間値TODが読み取られる。そしてTODの内容マイ
ナスCETの内容がRTAに加えられる。バイト32か
ら39における現行ェソトリタィムCETダブルワード
は、プロセスが下記の状態の一つに入る日時を含む。
即ち、準備、待ち、進行、および中断。システムべ−ス
機構 図6に関して、システムベース600のフオーマツトが
示めされている。
システムベースは、絶対主記憶装置中に存在し、ファー
ムウェアにより発展させられ、読み取ることができるが
、書き込むことのできない境界アドレスレジスタ(BA
R)を経由して、アクセスすることができる。
境界アドレスレジスタBARは、ハードウェアのために
リザーブされた主記憶装置中のエリアの下にあり、そし
て、ハードウェアとシステムベース600のためにリザ
ーブされた記憶装置中でこのエリアを分解する。
現在の図6に関しては、システムベース600は、現在
進行中のプロセスのために、ジョブステップナンバーと
プロセスグループナンバー(J・P)を含む多くのシス
テム特性を含む。プロセスJ・Pの論理名から対応する
プロセスコントロールブロックPCBの絶対アドレスが
得られる。Jテーブルのサイズとアドレスは、Jテーフ
ルワード(JTW)の内容によって限定される。
このワードは、BARレジスタにより限定されるアドレ
スに位置する。JTWのフオーマツトは図11aに示め
されている。図12上のサイズ(JTSZ)1101あ
るいはJテーブル1204は、255にいたるヱントリ
であるかもしれないJテーブル1204において、ェン
トリの数を限定する。
JTSZIIOIは、8ビットの正の整数である。もし
JがJTSZより大きければ、Jテーブル例外のアウト
が発生する。Jテーブル1204の絶対アドレスは、J
テーブル指針1102を16で掛けることにより得られ
る。
Jテーブル1204はJテーブルエントリを含み、その
フオーマットは図1 1bで更に詳細に示めされている
。各Jテーフルェントリは、Jテーブル指針1104を
16で掛けることによって得られるPテーブル1205
絶対アドレスを限定する。PテーブルのサイズPTSZ
I I 03は、Pテーブルにおけるェントリの数を限
定する。PTSZは、Pテーブルにおいて、ェントリの
数を示めすために、典型的に0から255に変化するか
もしれない8ビット正の整数である。もしPが、PTS
Z0より大きければ、Pテーブル例外のアウトが発生す
る。Pテーブル1205の各ェントリは、プロセスコン
トロールブロック指針1107を16で掛けることによ
って、プロセスコントロールブロック(PCB)120
6の絶対アドレスを限定する。現在ィンジケィ夕PII
05は、2進数0にセットされたときPCB1206の
不在を表示し、2進数1にセットされたとき、PCBの
存在を表示する。現在インジ.ナィタPII05が0で
あることがわかるとき、空位のPテーブルェントリ例外
が発生する。
Pテーブルインジケイタ(図11c)のビツトーから7
は、0(MBZ)1106でなければならない。さもな
ければ、違法なPテーブルェントリ例外が発生する。シ
ステムベース600のアドレスBARブラス4で、図1
1dで更に詳細に示めされているGテーブルワード(G
TW)のフオーマツトバイトがある。
図1200のGセグメントテーブル1212のサイズと
アドレスはGテーブルワード(GTW)の内容によって
限定される。
Gテーブル1212のサイズ(GTSZ)1 108は
、典型的に、255にいたるェントリであるかもしれな
いGテーブルにおけるエントリの数を限定する。GTS
Zは、8ビット正の整数である。もしGナンバーがGT
SZより大きければ、Gテーブル例外のアウトが発生す
る。Gテーブル1212の絶対アドレスは、Gテーブル
指針1109を16で掛けることによって縛られる。G
セグメントテーブルェントリのフオーマツトは、2ワー
ドサイズ(8バイト)を有しており、Gセグメントデス
クリプタと呼ばれる。Gセグメントデスクリプタのフオ
ーマツトは、図11eと11fに詳細に示めされている
。すべてのGセグメントデスクリプ外ま直接的であり、
それ故に、間接ビット1,1111は0でなければなら
ない。さもなければ、違法セグメントデスクリプタ例外
が発生する。現在ィンジケイタPIIIOは、2進数1
にセットされたとき、セグメントが、当該デスクリプタ
が対応するセグメントナンバーのために、主ストレージ
で限定されることを表示する1ビットフィールドである
。一方、もし現在インジケイタPIIIOが0にクリア
したとすれば、セグメ:/トは、限定されず、セグメン
トデスクリプタへの照合は、行くえ不明のセグメント例
外を生じる。得られるビットAII12は、セグメント
が得られるか否かを表示する1ビットフィールドである
。それは、もしこのセグメントが限定されるとするなら
ば(即ち、Pは2進数1に等しい)、検査されるにすぎ
ない。さもなければ、それは無視される。もちいられる
フラッグフィールドUII13は、セグメントがアクセ
スされているか否かを表示する。もしUビットが2進数
0にセットされていない。一方もしUフィールドが2進
数1にセットされていれば、セグメントはアクセスされ
ている。書き込まれた、フラッグフィールドWII14
は、セグメントが書き込まれているかどうかを表示する
。もし、Wが2進数01こセットされていなければ、セ
グメントは書き込まれていない。一方もしWが2進数1
にセットされていれば、セグメントは書き込まれている
。GセグメントデスクリプタのゲートインジケイタGS
I I 15は、2進数01にセットされなければなら
ない。さもなければ、違法なセグメントデスクリプタ例
外が発生する。このことの理由は、Gセグメントは、常
に、信号機を含まなければならないということである。
(即ち、逆は真実ではないとしても、すべての信号機が
しGセグメントの中にあることは必要でない。)そして
信号機上の命令は、GSコードは2進数01であること
を要求している。セグメント1214のベースの絶対ア
ドレスは、図11eのGセグメントデスクリプトにおい
て、24ビットベースフィールド1116によって限定
される。このフィールドの内容は、絶対アドレスを得る
ために16倍増される。図11fのGセグメントデスク
リプタの第2のワードは、Gテーブル1212において
、ビットポゼシヨン32から63を占める。RSUフイ
ールド11 17、ビット32から39はソフトウェア
使用のためにリザーブされ、そして、この場合における
ように、Gセグメントデスクリブタとして用いられた時
は、一般的に無視される。MBZフィールド1 1 1
8は、0でなければならない。
さもなければ、違法なセグメント例外が発生する。MB
Zフィールド1118は、ビット40から50を占める
ので、それは、小さいセグメントSIZNのためのフィ
ールドであるSIZNフイールド1119をセットする
。従って、すべてのGセグメントは、づ・さし、セグメ
ントタイプでなければならない。セグメントSIZNI
I I 9は、セグメントにおいてバイトの数を限定
する12ゞィト正の整数であり、セグメントサイズは、
16の倍数として説明される。それ故に、Gセグメント
1214のためのセグメントサイズは、公6バイトを越
えることができない(小セグメント)。再び図6のシス
テムベース600に関連して、BARプラス8とBAR
プラス44の間に位置する9システム例外セスワードが
ある。
システム例外セルワードEXCのフオーマツトは、図1
1gに示されている。信号機は、システム側外が発生す
るときメッセージを、目的のプロセスに伝送するために
用いられるので、これらの信号機に対する指針は、シス
テム例外セルと呼ばれているロケーション毎にーシステ
ム例外のクラスにつき一つ−記憶装置の9ロケーション
に見し、出される。MBZフィールド1120は、2進
数0にセットされなければならない。さもなければ、シ
ステムチックが発生する。各例外セル(E×C)は各々
システム名G、DI121と1122を含む。システム
ベース600のBARプラス44に位置するチャンネル
例外セルは、前に検討したシステム例外セルに類似する
フオーマットを有し、チャンネル例外が発生するとき、
目的のプロセスヘメツセージを伝送するために用いられ
る信号機のシステム名GOを含む。
内部プロセッサキューワードIPQWは、BARプラス
48ではじまり、位置する。
そのフオーマットの詳細は、図1 1hに示めされてい
る。IPQWワードは、照合数字905および805で
図9に示めされているように、準備プロセスキュ−(Q
/PR/RDY)のペットを指している。準備プロセス
のキュー(Q/DR/ROY)は、準備状態にあるすべ
てのプロセスを結合する。それは準備プロセスキューの
トップを指すことにより、IPQWワードのQ/PR/
RDYーフイールド1 124のHEADにより照合さ
れる。Q/PR/RDYーフイールド1 1 24のH
EADは、GOセグメントと呼ばれるGセグメントナン
バー0のベースから、Q/PR/RDYの最初のバイト
への変位である16セット正の整数を含む。もしこのQ
/PR/RDYビットフイールドが0であるならば、準
備キューは、空席であるとみなされる。
MDZフィールド1 123は、0でなければならない
。さもなければ、システムチェックが発生する。システ
ムベース6 0 0のBARプラス5 2で・、初期と
現行のリトラィカウントのストレージが示されている。
そして、そのフオーマツトは、図11iで詳細に示めさ
れている。NFSフィールド1125は、非機能ストレ
ージフィールドであり、システムベースにより利用され
ない。初期リトライカウントフイールド1126と現行
リトラィカウントフィールド1127は、機械エラーが
なされて、機械フェール例外条件を生ずる前に、自動命
令リトラィが実施される回数を制御するために用いられ
る。それらは、リセットリトライカワント(ここでは示
されていない)により同じナーンバーで移送される。図
11jで示されているように、進行プロセスワード(R
PW)は、システムベース600のBARブラス56に
貯蔵され、モノプロセツサ構造の場合に、その優先順位
を伴い、進行プロセスの名称を貯蔵するために用いられ
る。
NFSフィールド1128と1131は各々非機能スト
レージフイールドであり、どの施設によっても、どんな
目的にも用いられることができるが、一般に、システム
ベースによっては用いられない。進‐行プロセスの優先
順位レベルは、PRIフィールド1129に貯蔵される
。非同期トラツプビツトは、ABフィールド11301
こ貯蔵される。一方、非同期的トラップリングは、AR
Nフィールド1132に貯蔵される。モノプロセツサ構
造の場合、進行プロセス論理名J・Pは、J・Pフィー
ルド1133に貯蔵される。図11klこ示されている
絶対テーブル指針ワ−ドは、システムベース600のB
ARプラス60に位直し、そして、BARの内容をIS
Lプログラム’におけるすべての絶対アドレスに加える
ことにより、初期システム、ロード(ISL)プログラ
ムにおいて、絶対アドレスを初期設定するために、初期
システムロードにおいて用いられる。
絶対テーブル指針1135は、絶対テーブル(示されて
いない)の位置を限定する。絶対テーブルサイズは、A
TSZフィールド1134により示されている。図1
1 1に示されているCPUシリアルナンバーワードは
BARプラス64に位置する4バイトワ−ドであり、C
PUシリアルナンバーフイールド1 136において、
CPUのシリアルナンバーを含む。
図11mに示されている主ストレージ上限ワードは、B
ARプラス藤に位贋し、主ストレージにおいて最後に縛
られるワードの絶対アドレスを与えることにより、主ス
トレージ上限1139を表示する。BARプラス72で
、初記システムロードISLデバイスチヤンネルナンバ
ー(CN)1140とハードウエアデバイスチャンネル
ナンバー(CN)1141を提供するため、図11nに
示されているワード位道する。
コンピュータシステムにおいて用いられる装置のタイプ
とサブタィプは、各々フィールド1143と1144に
おけるハードウエアデバイスタイプワード(図11o)
によって示めされており、そこでは、RSUフィールド
1142が、ソフトウエアのためにリザーブされている
このワードは、BARプラス76で、システムベースに
おいて見し、出される。図11pに示されている同様な
タイプフオマートを有する同機なワードは、初期システ
ムロード‘こおいて用いられる装置のタイプとサブタイ
プを含む。このワードは、BARブラス801こ位置し
ている。コンピュータのリスタートポタンが押されたと
き、シミユレーシヨンしたVーオベレーシヨンが、信号
機上で実施され、準備状態に入る。
この信号機に対する指針は、システムベース600のB
ARプラス84でみい出され、リスタートセルコールと
呼ばれ、図11qに示されているフオーマットを有する
。このフオーマットは、上に記述されたシステム例外セ
ルに類似しており、各々Gフイールド1149と〇フイ
ールド1150における信号機のシステム名G、Dを含
む。MDZフィールド1148は0でなければならない
。コンピュータシステムに一つ以上のプロセッサがある
場合には、マルチプロセス拡大のためにBARプラス8
8で、システムベース600でワードが提供されている
。このワードの詳細は、図11rに示めされている。シ
ステムベースとプロセスコントロールブロック使用の例
図12に関連して、いかにシステムベースがユーザセグ
メント、システムセグメント、あるし、は、プロセスキ
ュー準備(Q/PR/RDY)セグメントをアドレスし
、アクセスするために、プロセスコントロールブロック
との組み合せで利用されることができるかに関する1例
が示されている。
主記憶装置1200は、ハードウェア使用のためにリザ
ーブされたポーション1200を有している。境界アド
レスレジスタBAR1 202は、ハードウェアのため
にリザーブされたメモリ1203のポーシヨンからシス
テムベース1215を分離する。境界アドレスレジスタ
BAR1202は、境界アドレスレジスタの内容を、シ
ステムベースで要求されている。アイテムの4バイト単
位で転位に加えることにより、システムベース1215
でアイテムをアドレスするために利用される。このアド
レスは、その後、要求されているシステムベースにおい
てアイテムの最初のバイトを指す。図12において、B
AR1202は、Jテーブルワード(JTW)を指して
いる。Jテーブルワードは、前に検討したように、Jテ
ーブル1204を指す指針を有する。図5に示されてい
るJナンバーにインデックスすることによって、Jテー
ブルヱントリ1216が得られる。Jテーブルェントリ
で、Pテーブル1205の絶対アドレスを指すPテーブ
ル指針がある。Pテーブル1205内でPナンバー(図
6参照)にインデックスすることにより、プロセスコン
トロールブロック1206の絶対アドレスが得られる。
プロセスコントロールブロックPCB1206で、前に
示された如く、二つのアドレススペースワードASWO
とASWIがある。
ベースレジスタ1201におけるセグメントテーブルナ
ンバーフイールドSTWの高額位ビットは、これらの二
つのアドレススペースワードの一つにアクセスするため
に用いられる。この場合において、ASWIであり、そ
れは、セグメントテーブルワードアレイSTWA120
8を指すセグメントテーブルワードアレイSTWA指針
を有する。ベースレジスタ1201のセグメントテーブ
ル・ナンバーSTNと共に、8セグメントテーブルワー
ドの一つは、8セグメントテーブル121 0の一つを
指すSTWA1208で、アクセスされる。その後、ベ
ースレジスタ1201からのセグメントテーブルエント
リSTEは、セグメントデスクリブタが位置しているセ
グメントテーブル1201で、256エントリの一つの
ェントリをするために利用される。その後、セグメント
デスクリプ外ま、ユーザセグメント1211をアクセス
するために利用される。信号機を貯蔵するために利用さ
れるシステムセグメント1214をアクセスするために
、GテーブルワードGTWは、システムベース1 2
1 5で利用される。Gテーブルワードのアドレスは、
システムベースにおけるGテーブルワードの転位を境界
アドレスレジスタBAR1202に加えることにより得
られる。(図6参照)GテーブルワードGTWは、Gテ
ーブル1 2 12を指すGテーブル指針を含む。
システムに得られるGナンバーを利用し、そしてGテー
ブルにおいてインデックスすることにより、Gセグメン
トデスクリプターはアクセスされる。そして、それは、
システムセグメント1214をアドレスするために利用
される。同様に、システムベース1215は、準備プロ
セスキューセグメント(Q/PR/RDY)セグメント
1213を指す内部プロセッサキューワードIPQWを
ロケイトすることによりQ/PR/RDY1213をア
クセスするために用いられる。
制御装置図13a−13cに関して、制御装置の詳細が
示される。
制御装置は、たとえ中央処理装置(CPU)から分離し
て示されているとしても、実際には、CPUの1部分で
あり、コントロールアトアユニツトCSU1301、コ
ントロールアトアィンターフェィスアダプタCIA13
02と付属サブユニツト、コントロールストアローダC
SL1383、およびコントロールユニットCLU13
04から成っている。コントロールアトアユニツトCS
U1 30 1は、コントロールとロードユニットCL
U1 304およびコントロールストアインターフェイ
スアダプタCIA1302を経由して、コントロールス
トアローダCSL1303からマイクロ指令を受ける。
通常のオペレーティング条件下では、マイクロプログラ
ムは、システム初期設定中に外部ソ−スから移送され、
機械の永久的コントロール機能となる。しかしながら、
コントロールストアユニットCSU1301は、種々な
中央処理装置CPU1306のオペレーションモードを
提供する方法で、再移送され初期設定される能力を有す
る。CSU1301の制御のもとでCPUのオペレーシ
ョンの下記のモードが得られる。の ネイテブモード 仲エミュレーションモード レ一 同時的ネイテブおよびエミュレーションモード6
診断モード この能力は、CSUに存在するマイクロ命令が、エミュ
レーションユニット1316、演算論理ユニットALU
1317、命令取り出しユニットIFU1318、アド
レスコントロールユニットACU1319およびデータ
マネジメントユニットOMU1321の如きすべての他
のCPU機能ユニットのオペレーションを制御するため
に用いられるマイクロオペレーションのソースである。
また中央処理装置CPU1306の中には、前に記述し
た一般レジスタ1307、ベースレジスタ1308、科
学レジスタ1309、T−レジスタ1310〜ステータ
スレジスタ1311、命令カウンタIC1312、およ
びハードウエアコントロ−ルマスクレジスタ1 31
3力ミラ示される。典型的に、コントロールストアユニ
ットCSU1301は、読み取り/書き込み、ランダム
アクセスストア(RAM)と結合した駅2極式集積回路
プログラム読み取りのみの記憶装置(PROM)である
。それは、典型的な150十1セコンド読み取りサイク
ルと450十1セコンド書き込みサイクルを有する。コ
ントロールストアの各位層は、一つの84ビットマイク
ロ命令ワード(後で更に十分に記述する)を貯蔵し、各
マイクロ命令ワードは一つのCPUサイクルを制御する
。コントロールストアユニットCSU1 301のコン
トロールストアの各位層が読みとられるので、その内容
は、各シグナルがCPU内で特定のオペレーションを生
じさせる原因となる。マイクロオペレーションコントロ
ールシグナルを提供するマイクロオペレーションデコー
ダにより解読される。マイクロ命令ワード内でロケーシ
ョンをグループにすることにより(後で詳細に記述する
)、特定のCPUオペレーションあるいは命令を実施す
ることのできるコントロールストアシーケンスが得られ
る。
各命令がCPUで開始されるにつれて、オプーコード内
の一定のビットは、コントロールストアスターティング
シーケンスを決定するために用いられる。命令解読機能
によりセットまたはリセツトされる一定のフロッブ(示
めされていない)の試験は、コントロールストアメモリ
ーが、必要なとき、更に特定のシーケンスにブランチす
ることを許可する。
コントロールストアインターフェースアダプタCM13
02は、図13bのコントロールストアメモリ1333
のオペレーションを指示するために、コントロールスト
アユニット1301、データマネジメントユニットDM
U1 32 1、アドレスコントロールユニットACU
1319、および演算論理ユニットALU1317と通
信する。
CM1302は、コントロールストアアドレス変更、試
験、エラー検査、およびハードウェイアドレスジェネレ
ーションの論理を含む。ハードウェイアドレスジェネレ
ーションは、一般に、ェフーシーケンスの開始アドレス
を発展させるため、あるいは、初期設定シーケンスのた
めに利用される。データマネジメントユニットDMU1
32 1は、CPU1306とメインメモリおよび/
あるいは、図1に示めされているバッファストアメモリ
間のインタフェィスを提供する。
どのユニットが、他のユニットが必要とする情報を含ん
でいるかを認識し、その情報を適当な時に、CPUレジ
スタの中にストロークすることは、データマネジメント
ユニットの責任である。データマネジメントユニットD
MUは、また、部分的書き込みオペレーション中にマス
キングを実施する。命令取り出しユニットmU1318
は、DMU1 32 1、ACU1 3 1 9、AL
U1 3 1 7およびCSU1301とインタフェイ
スし、命令を与えられるCPUを維持する責任がある。
命令取り出しユニットは、現在の命令の完了前に、その
レジスタ内で得られる次の命令を有する。この能力を提
供するために、命令取り出しユニットびU1318は、
通常一つ以上の命令を含む一つの12バイト命令レジス
タ(示めされていない)を含む。更に、IFUは、CS
Uの制御のもとで、命令が実際に必要とされる前に、メ
インメモリから情報(命令)を要求する。かくして、そ
の12ゞイト命令レジスタを絶えず更新し続ける。命令
はかくして、通常使われていないメモリサイクルの手段
で実施される。命令取り出しユニットは、また、各命令
を解読し、命令の長さとフオーマットを他のユニットに
知らせる。アドレスコントロールユニットACU1 3
19は、CIAを経由してびU、ALU、DMUおよび
CSUと通信する。
ACU1319は、CPUにおけるすべてのアドレス発
展に責任がある。ACUのすべてのオペレーションは、
ユニット間の、およびユニット内の転送も含めて、ユニ
ットにおけるCSUマイクロオペレーションとロジック
により指示される。ACUの通常サイクリングは、命令
のタイプによるよりはむしろ、命令におけるアドレスタ
イプにより異る。アドレスタイプに応じて、ACUは、
命令において、各アドレスのために種々なオペレーショ
ンを実施することができる。ACUは、また、そのセグ
メントナンバーと共に、8個の最も最近用いられたメモ
リセグメントのベースアドレスを典型的に貯蔵する連想
記憶袋贋1319aを含む。
メモリリクエストがなされる度毎に、セグメントのベー
スアドレスがすでに発展され貯蔵されたかどうかを決定
するため、セグメントナンバーは、連想記憶装置に対し
て検査される。もしベースアドレスが連想記憶装置13
19aに含まれるとすれば、このアドレスは、絶対アド
レス発展において用いられ、そして相当の時間量が節約
される。もしベースアドレスが連想記憶装置1319a
に含まれていなければ、それは、メインメモリテーブル
をアクセスすることにより、発展させられる。しかしな
がら、セグメントのベースアドレスが発展させられたあ
とで、それは、将釆の照合のために、セグメントナンバ
ーと共に、連想記憶装置の中に貯蔵される。演算と論理
ユニットALU1 31 7は、ACU、IFU、DM
U、およびCSUとインタフエイスしている。
その第一の機能は、CPUにより要求されている演算オ
ペレーションとデータマニピュレーションを実施するこ
とである。演算論理ユニットオペレーションは、コント
ロールストアユニットCSU1301からのマイクロオ
ペレーションコントロールシグナルに完全に依存してい
る。スクラツチパツドメモIJユニツトLSU1 3
15は、ALU1317とCSU1 301と組合せら
れている(度々ローカルストアユニットと呼ばれる。)
それは、典型的に、256ロケーション(ロケーション
につき32ビット)ソリドステートメモリ、および当該
メモリのためのセレクションと読み取り/書き込みロジ
ックより成る。スクラツチパツドメモリ1 3 1 5
は、CPUコントロールインフオメーションと維持可能
情報を貯蔵するために用いられる。更に、スクラツチパ
ツドメモリ1315はデータマニピュレーション中にオ
ペランドと部分的結果を一時的に貯蔵するために主とし
て用いられるワーキングロケーションを含む。また、コ
ンピュータシステムのその他の状態を貯蔵するため、典
型的に64フリップフロツプより成る補助メモリ131
7aは、ALU531 7と組合せられている。CP
Uは、また、クロツキングユニツト1320を有してお
り、本質的に、1において2ク。
ッキングシステムである。第1のクロツキングシステム
は、コートロールインターフェイスアダプタCM130
2のためのタイミングを発生させ、第2のクロッキング
システムは、中央処理装置内で、機能ユニットのオペレ
ーションのためのタイミングパレスを発生させる。図1
3cに関連して、コントロールストアワ−ド1325の
フオーマツトが示めされる。
コントロールストアワードは、典型的に、8ビットワイ
ドであり、6フィールド‘こ分けられる。イシーケンス
タイプフイールド1326(3ビツト)ロ ブランチン
グおよび/あるいは、マイクロオペレーション1327
(23ビツト)ハ コンスタントジェネレーシヨンおよ
びデゼグネーシヨン1328(14ビット)ニ バスに
対するデータ1329(8ビット)ホ マイクロオベレ
ーシヨン1330(32ビット)、およびへチエツキン
グ1331(4ビット) コントロールストアワード1325の3ビットEフイー
ルドは、シ−ケンスコントロールフイールドとして用い
られる。
インスタントコンピュータシステムのために、七つの異
るシーケンスタィプと一つのりザーブされたタイプが典
型的にある。図13bのブロック1335に関連して、
Eフィールドが2進数0、1、あるいは2に等しいとき
、マイクロ命令1325のブランチングフイールドA,
B,C,D,Eは、次のアドレスを発生させるために利
用される。KSレジスタ1337の最初の6ピッチは、
アドレスレジスタKS1337におかけた次のマイクロ
命令の次のアドレスを、提供するために、Bフィールド
、Cテストリザルド、Dテストノリザルト、およびLフ
イールドと共に利用される。8フィールドが2進数4(
ブロック1335参照)にセットされたとき、選択され
る次のアドレスは、ィンタラプトリターンレジスタKA
1339から得られる。
KAレジス外こ貯蔵されるアドレスが、ハードウェアィ
ンタラプトが発生したとき、次のアドレスジェネレーシ
ョンロジックにより発生されるアドレスである。Eフィ
ールドが2進数5にセットされるとき、ブランチは、マ
イプログラムサブルーチンからサブリターンを開始させ
るために用いられる。用いられるとき、リターンレジス
タKR1346の内容は、次のコントロールストアアド
レスとして用いられる。リターンレジスタ1346は、
インクレメンタ1338から、KRレジスタ1346へ
、KSレジスター337プラス1における現在のコント
ロールストアアドレスを移送するコントロールストアコ
マンドを発することにより移送される。1レベルネスラ
イングサプルーチン能力は、KTリターンブランチレジ
スター347を経由して提供される。
KRレジスター346が移送される度毎に、KRレジス
タの古い内容は、マイクロプログラムリターンがコール
される度毎に「KTレジスタ1347に転送される。。
KTレジスタの内容は、KRレジス夕に転送するであろ
う。第3レベルネスティングサプルーチン能力は、KU
レジスタ1340‘こより供給される。第4レベルネス
テイングサブルーチン能力は、KVリターンブランチレ
ジスタ1349により提供される。コントロールストア
ワードのBフイルドが、2進数6にセットされるとき、
アドレスされる次のコントロールストアロードは、イン
クレメンタ1338におけるKSレジスタ1337プラ
ス1での現行アドレスに等しい。Eフィールドが2進数
7にセットされるとき、CSU1301は、診断モード
‘こ入り、次のアドレスは、現行アドレスプラス1にな
るまでであろう。上に記述され、ブロック1335に示
めされた次のコントロールに対するブランチングのシー
ケンスコントロール加えるに、図13bのブロック13
36に示めされている。
ハードウェア発生シーケンスコントロールがある。
(注意:ブロック1335と1336は、実際には、マ
イクロィンストラクションワ−ドがとる種々なフオーム
を描くように引き出されたハードウェアレジスタである
。)ハードウェア発生ブランチは、Eフィールドを無効
にし、固定アドレスをコントロールストアアドレスレジ
スタKS1337の中に押しやる無効条件(ェラ−・イ
ニシヤライズ、コントロールストアスキャン、その他そ
の如き)である。ブランチは、インタラプトラインハィ
(示めされていない)を1クロツク期間KAィンタラプ
トリターンレジスタ1339に押しやり、Eフィールド
のコントロールのもとで発生するアドレスをKAインタ
ラプトリターンレジスタ1339の中へ貯蔵することに
よりおこなわれる。ハードウェア発生アドレスは、コン
トロールストアアドレスレジスタの中におかれるである
つ。一定のハードウェア/ファームヱア発生ィンタラプ
トは、ィンタラプト条件が満たされるまで、そのクラス
における付加的ィンタラプトが実行されるのを阻止する
インタラプトーブロツクフリップーフロツプ(示めされ
ていず)のとき、優先順位をとる。ファームウェアマイ
クロオペレーションは、ファームウェアコントロール下
にあるシーケンスのためにインタラブトーブロツクフリ
ップーフロックのリセットを制御するために存在する。
ハードウェアの制御下のこれらのシーケンスは、シーケ
ンスの終りに、ブロックーフロツブのリセットを自動的
に発生させる。優先順位で挙げられた下記の条件は、こ
のカテゴリーこ存在する。(イ) コントロールストア
ロード 仰 コントロールストアスキヤソ バ ハードウエアエラー 9 ソフトウエアエラー 残存のハードウェア条件は、インタラプトブロックーフ
ロツクをセットしないが、発生時に、直接作用を発生さ
せる。
優先順位で挙げられる下記の条件は、このカテゴリーに
存在する。Wイニシヤライズ 仰ソフトークリア し一 エンタメインテナンスパネル 日 エンタメインナナンスパネル 的 ハ−ドウエア退去 イニシヤライズシグナルは、CSU1301に2進数0
をアドレスさせ、ハードウェアリセットエラ−をクリア
させ、コントロールストアロードオペレーションを実施
させ、それに、ハードウェアコントロールのもとで、コ
ントロールストアスキャンシーケンスが続く。
それは、また、システムイニシャライズを実施する。ソ
フトークリアシグナルは、CSU1301に2進数0を
アドレスさせ、ハードウエアリセットエラーをクリアさ
せ、インタラプトプロツクーフロツクをセットさせる。
エンターメインテナンスパネルシグナルはCSUをメイ
ンテナンスパネル(示めされていない)上のCSUアド
レススイッチに存在するアドレスにブランチさせる。エ
ンタメインテナンスチヤンネルシグナルは、メインテナ
ンスチヤンネル(示めされていない)経由で、発生させ
られたアドレスに、CSUをブランチせる。
移送されるアドレスは、メインテナンスチヤンネルの1
部であるメインテナンスバスQMB1344からであり
、そして、正当化されている。ハードウェア退去シグナ
ルは、CSUを2進数アドレス2にブランチさせる。こ
のシーケンスは、メインテナンスフアシリテイとして用
いられる。シーケンスの終りで、リターンは、2進数4
にセットされた8フィールドを伴うEフィールドブラン
チを発生することによりイニシャライズされる。コント
ロールストアロードシグナルは、CSUをアドレス2進
数0にブランチさせる。
それは、また、CSU読み取りサイクルフロツブ(示め
されていない)、システムクロツク1320を止め、C
SUをロードストアに直く。ロード状態で、CSUは、
コントロールストアローダCSU1303、IOC13
05、メインメモリ102、あるいは、メインテナンス
1355から移送されることができる。CSUから移送
されるとき、自動スキャンは、ロードの終りまで発生さ
せられる。ある他のメデアから移送されるとき、スキャ
ンは、メインテナンスパネル上でマイクロオペレーショ
ンシグナルを発生させるか、あるいは、スキャンスイッ
チをセットするかのどちらかで発せられることができる
。コントロールストアスキャンシグナルは、CSUをア
ドレス2進数0にブランチさせる。コントロールストア
スキャンは、シーケンスの期間中ハードウェアコントロ
ールのもとにある。スキャン中、システムブロック13
20は、オフであり、従って、コマンドあるいはテスト
は実施されない。スキャンシーケンスの終りで、ハード
ウエアは、インタラプトリターンレジスタKAの内容を
アドレスレジスタKSに転送する。システムクロツクが
かけられ、そしてコントロ−ルはファームウェアにもど
される。ハードウエアエラーシグナルは、CSUをアド
レス2進数4にブランチさせる。
通常の処理モード‘こおいて、CPU機能ユニットにお
いて検出されるハードウェアエラーは、ハードウエアエ
ラーライン(示めされていない)を活動的にする。発生
させられるコントロールストアシーケンスは、取られる
べき行動を決定するためにシステム条件をテストする。
診断モードにおいて検出されるハードウェアであるエラ
ー条件は、マイクロ診断にとって可視的である。マイク
ロ診断は、取られるべき行動を制御する。一方、ソフト
ウェアエラーシグナルは、コントロールストアをアドレ
ス2進数1にブランチさせる。このアドレスは、マイク
ロプログラムコントロールのもとにあるソフトウェアエ
ラーレポーラィングシークェンス開始である。再び図1
3cに関連して、Eフィールド1326は、前に記述し
たように、ブランチコードのための3ビットフィールド
である。
ブランチングおよび/あるいは、マイクロオペレーショ
ンフイールド1327は、A、B、C、D、L、フイー
ルドより成る(図13bのブロック1335に示めされ
ている)。その中で、Aフィールドは、次のアドレスの
上6ビットであり、Bフィールドは、64一方向ブラン
チ上のマスクフィールドの次のアドレスの中4ビットで
あり、Cフィールドは、私テストの一つのための6ビッ
トテストフイールドであり、Dフィールドは、鼠テスト
の一つのためのもう一つの6ビットテストフィールドで
あり、Lビットは、もっとも重要でないビットである。
Kフイールド1328は、14ビットフイールドであり
、そのうちの6ビットは、コンスタントフイールドのた
めであり、4ビットはコンスタントあるし、は操作フィ
ールドのためであり、そして、4ビットはコンスタント
のための操作フィールドである。バスフイールド132
9に対するデータは、QMBバス1344のQA部分に
対し情報を制御するために4ビットを有するQAより成
り、QBフィールド‘ま、QM旧バス1344のQB部
分に対し情報を制御するための4ビットを有する。Fフ
イールドは、マイクロオペレーションサプコマンドを発
生させるためにコードされた32ビットフィールドであ
る。Pフィールド1331は、検査のためにリザーブさ
れた4ビットより成る。オペレーションにおいて、マイ
クロ命令ワードは、コントロールスィアアレィ1333
に貯蔵される。
オペレーションのサイクル中に、コントロールストアア
レイは、KSアドレスレジスタ1337の内容によりア
ドレスされる。これは、アドレスにより規定されるロケ
ーションの内容を読み取りラッチのグループの中へ読み
取らせる。読み取りラツチのワード内容の部分は、CP
Uの機能ユニットの各々の中で、ストレッジレジスタに
配分あるいは転送される。各機能ユニットは、システム
クロツクソ−スの制御のもとで、コントロールストアワ
ード‘こより規定される必要なサブコマンドを発生させ
るためのデコード。ジツクサーキツトを含む。一般的に
、デコーデイングは、もしデコーデイングが中心的に実
施されれば、コマンドシグナルを転送するために通常要
求される解読時間を最少限にし、また、ケーブルの数を
減少させるために、中心的に実施されるよりはむしろ、
CPUの各機能ユニット内で実施される。従って、デコ
ーディングは、ケーブル遅延における相違から生ずるタ
イミングプロプレムを避けるために、各ユニット内でお
こなわれる。更に、各ユニットでサブコマンドをデコー
ドすることにより、機能ユニット内に存在する一定の条
件を代表するこれらのシグナルは、シグナルがCIAユ
ニット1302にもどされるべきではないという一定の
サプコマンドの発生のために必要である。典型的なデコ
ーダュニツト1359は、マイクロ命令ワードから種々
なフィールドを受け入れ、かつ、マイクロオペレーショ
ンシグナルa,b,c,d……・・・q,rを発生させ
ているように、図13bに示めされている。典型的なマ
イクロオペレーション1359は、マイクロ命令ワード
からコマンドを受け取る。マイクロ命令ワードからのフ
ィールドは、デコードされ、そして、複数のラインs,
t,u,…・…・・y,z高度の一つをセットする。マ
トリクスは、ポイントQ,8,y………◇,■でs−z
ラインに結合されたコントロールラインインピーダンス
を予め決定することにより形成される。その後、典型的
に、マイクロ命令からのフィールドがデコードされたと
き、ラインs−zの一つは、高くなる。ギリシャ文字Q
からの1こよりマトリクスに示めされているブラック点
は、2セットのライン間のインピーダンスカプリングを
表示しているので、水平ワイヤに沿って電気シグナル増
加は、インピーダンスカプリング(ブラック点)が表示
されている垂直ワイヤa−rに沿って増加するように結
合されるであろう。各垂直ラインa−rは、その後、A
NDゲート1360−1365の各一つに対する一つの
インプットとして結合されることができる。他のインプ
ットシグナルは、また、セントラルタイミングユニット
からタイミングシグナルtsを含むANDゲート136
0−1365の各一つに対する一つのインプットとして
結合されることができる。従って、各々タイミングシグ
ナtsが高くなるにつれて、すべての他のインプットシ
グナル高度を有するこれらのゲートが可能にされ、そし
て、CPUにおける予め決定された機能ユニットに、マ
イクロ命令シグナルを与えるであろう。例えば、もし読
み取りラッチ1357からのコマンドが解読され、水平
ラインが高ければ、a、b、c、およびq垂直コントロ
ールラインが高くなり、そして、tsタイミングシグナ
ルが、引き続きこれらのゲートに適用されるので、AN
Dゲート1 360,1 361,1362および13
64が可能にされる。従って、垂直コントロールライン
が、ギリシャ文字「 から 」であらわされる各点で水
平コントロールラインに結合されるコンビネーションは
、コントロールストアアレイ1333から提供されるマ
イクロ命令により中央処理装置内で機能ユニットを制御
するために、中央処理装置にマイクロオペレーションシ
グナルを供給するための永久的スイッチングマトリスを
表示する。かくして、変更性の特徴を有する永久的ファ
ームウェアは、コンピュータシステムの能力として要求
されているマイクロオペレーションのシーケンスを単に
規定することにより、本発明の機械の中に建設されるこ
とができる。通常の条件下で、デー外ま、ローカルレジ
ス夕YO1343として知られているCPU書込みデー
タレジスタを経由して、コントロールストアアレイ13
33の中に書き込まれる。
コントロールフロツブ(示されていない)は、ストレー
ジアレイの上半分あるいは下半分が書き込まれなければ
ならないかどうかを限定する。コントロールとロードユ
ニット(LU1304からのデータは、メインテナンス
バスQM旧1 3 4 4を経由して、CM/CSUに
到着し、コントロールストアアレイ1333の中に書き
込まれる前にストレージローカルレジスタYO1343
によりバッファされる。ストレージローカルレジスタ1
343は、読み取りおよび書き込みローカルレジスタの
両方として共有されるタイムである。マルチプレクサK
QM1345は、メインテナンスパネル1355あるい
はマイクロ診断のどちらかにより制御されることができ
、それに結びついたレジスタから読み取りアウトパスを
提供する。コンペアレジスタKP1350は、非機能的
使用のために提供され、主として、メインテナンス目的
のために使用され、コンベア論理1352とデコード論
理1351と共に利用される。デスパツチャにより実施
される機能の説明がフローチャート図14a−14iに
示されている。
例えば、図14aのブロック1402デスパツチャによ
り実施される機能の説明であり、その中で、マイクロプ
ログラムワードは、コントロールストアユニットによっ
て与えられ、デコーダ1359で解読するとき、ストレ
ージサブシステム102におけるシステムベースからI
PQMを検索し、それをスクラツチパツドメモリ131
5に転送するために、適当なシリーズのマイクロオペレ
ーションシグナル1360,1361、その他を経由し
てCPUの適応部分を制御する。同時に、デスパツチヤ
は、システムベースにおけるGテーブルワードGWによ
って、指し示めされるセグメントデスクリプタのGテー
ブルから、1404GOセグメントデスクリプタ(図1
2参照)を取り出す。
IQWワードのビット16−31は、GOセグメントと
呼ばれるGセグメントナンバー0のベースから、Q/P
R/RDY、準備プロセスのキューのヘッド(最初のバ
イト)への転位である10ゞィト正の整数を含む。もし
、IPQWワードのビット16−31が0であるとすれ
ば、1403準備キューは空位であると考えられる。も
し準備キューが空位であれば、それは目下Q/PR/R
DYにおいて待機しているプロセスがなく、準備キュー
は空位であることを示めす。デシジョンブロック140
5において決定されなければならない次の問題は、ベー
カントインジケータがセットされているかどうかを測定
することによって、プロセスが現在機械内で進行してい
るかということである。(ベーカントインジケー夕は、
補助メモリi317aに位置するフリツプフロップであ
る。それは、プロセッサ内で進行しているカレントプロ
セスCJPがないとき、セットされる。)もしべーカン
トインジケータがセットされるならば(即ち、現在進行
しているプロセスがなければ)、そして、プロセッサを
使用するために待機している準備キューにプロセスがな
いということが、前もって確定しているので、機械はア
イドル状態1406もこおいて進行する。しかしながら
、もし、現在機械内で進行しているプロセスがないが、
機械を使用するために待機しているプロセスがなければ
、カレントプロセスは、その次の命令1407をアクセ
スする。図14aのフローチャートのデシジヨンブロツ
ク1403に関連して、もしIPQW(即ち、ビット1
6一31)のポィンタェリアにおいて正の整数があれば
、GOセグメントにおける12QWワード}こより指し
示めされる準備キューのヘッドは、スクラッタベッドメ
モ川こ取り出される。
(注意:繰りかえしを避け明瞭にするために、コントロ
ールユニットとCPUに関連するデスパッチャの中間機
能は省略されるであろう。しかしながら、実例によって
前に記述されたような中間機能が典型的に存在すること
が理解されている。)この点にいたり、準備サューで待
機しているプロセスがあることが確定された。更に行動
がなされる前に、セントラルプロセッサに現在進行して
いるプロセスがあるかどうかを測定することが必要であ
る。これは、フローチャート説明のデシジョンブロック
1410で測定される。もし、セントラルプロセッサに
現在進行しているプロセスがなければ(即ち、CJPが
なければ)、滋豚キューのへツドは進行される1412
。しかしながら、セントラルプロセッサに進行している
プロセスがあれば、デスパツチャは、誰れが優先順位を
持つかを決定しなければならない・・・・・・…現在進
行しているプロセスか、あるいは、準備キューのヘッド
か?従って、システムベース600の進行プロセスワー
ドあるいは、PCB400のプロセスメインワード岬M
WOに位置しているカレントプロセス(CJP)の優先
順位バイトは、取り出される1413。その後、現在進
行しているプロセスCJPが、準備キュ−のヘッドで待
機している新しいプロセスNJPよりも低い優先順位で
あるかどうかについての決定がなされる1414。(デ
シジョンブロツク1414参照)もしCJPがNJPよ
りも低い鰻先順位でなければ、CTPは、セントラルプ
ロセッサのコントロールにとどまり、コンテストィンジ
ケータがリセットされる1415。(最後の命令のはじ
めが、CJPに代って実行され、それによって衝突の可
能性が生れるので、コンテストィンジケータは、一つ以
上の新しいプロセスが準備キューにおかけるときを除い
て、常に0にセットされる。このような条件のもとで、
コンテストィンジケータは2進数1にセットされる。)
しかしながら、カレントプロセスCJPが継続すること
が許可され、更に命令を実行することが許可される前に
、CJPがデコーダェクステーションモード1415で
進行しているかどうかの測定がなされる。もしCJPが
デコーダエクステーシヨンモードが進行しているならば
、次の命令は、エミュレーションモードで実施される(
即ち、デコーダェクステンション)。そして、もしそれ
がデコーダェクステインションモードが進行していなけ
れば、次の命令は、ネイテブモードで実施される。再び
デシジョンブロック1414にもどって、もし準備キュ
ーのヘッドのNJPが、CJPよりも高い優先順位をも
っていれば(即ち、その濠先順位ナンバーが、CJPの
優先順位ナンバーより低ければ)、現在進行中のCJP
は機械の“ロールアウト”であり、新しいプロセスNJ
Pは、機械にとって“ロ−ルイン”である。従って、フ
ァームウェアサブルーチンRLL01419の指令のも
とで最初CJPを“ロールアウト”することにより、L
IFの憂先順位と優先順位ナンバーによってカレントプ
ロセスCJPを準備キューの中にキュー化することを指
令するRLLOサブルーチンは、一般レジスタ、ベース
レジスタ、科学的レジスタ、Tーレジスタ、ステイタス
レジスタ、命令カウンターの中に貯蔵されているCJP
の情報を、メインメモリのプロセスコントロールブロッ
クの適当なストレージヱリアに書き込むことを指令する
。そして、それは、RUAの更新を指令する。更に、P
CB400におけるプロセスメインワード○の(PMW
O)のDEXTナンバーが更新される1420。新しい
プロセスNJPは、現在、“ロールイン”されるように
準備される。
境界アドレスレジスタBARは取り出される1422。
そして進行プロセスワードPRWが、システムベースの
アドレスBARプラス56から取り出される。ブロック
1423を参照。新しいプロセスNJPの名称は、次に
進行プロセスワードRPWの中に書き込まれる。新しい
プロセスNJPの名称がQ/PR/RDYのプロセスリ
ンクPLの中に書き込まれるので、プロセスリンクPL
における名称は、それ故に、現在、RPW、ブロック1
424におかれる。それ故に、準備キューからのNJP
は今CJPとなり、セントラルプロセッサを制御する権
限が与えられ、従って、Q/PR/RDYでもはや待機
せず、Q/PR/RDY、ブロック1425のプロセス
リンクPLから、その名称を取ることによってキューが
解かれなければならない。これがなされたとき、準備プ
ロセスキューQ/PR/RDYは、ファームサブルーチ
ンUQLK、1425aによって更新される。従って、
機械から取り出されたプロセスのJPナンバーはQ/P
R/RDYのプロセスリンクの中に置かれる。何故なら
ば、それは、現在もはや′、機械の制御をうけず、それ
を待たなければならないからである。1426。
この点でセントラルプロセッサのこのコントロールを新
しいプロセスに与え、準備キューに古いプロセスを置く
転換が達成される。そして、セントラルプロセッサのコ
ントロールにプロセス(新しいCJP)があるので、べ
−カントインジケータは0、1427にセットされる。
一方、もし、セントラルプロセッサのコントロールにC
JPがなければ、ベーカントインジケー夕は1にセット
されるかもしれない。この地点で、プロセッサの仕事は
完了し、新しいプロセスはセントラルプロセッサを獲得
しており、一方古いプロセスは準備キューに置かれた。
しかしながら、新しいプロセスは、まだ進行する準備が
できていない。何故ならば、一般レジスタ1307、ベ
ースレジスタ1308、科学レジスタ1309、Tーレ
ジスタ1310、ステータスレジスタ1311、および
命令カウンタ1312の如き、図13aの中央処理装置
、1306のハードウェアは、新しいプロセスのプロセ
スコントロールブロックからコントロールインフオメー
ションを供給しなければならないからである。従って、
フア−ムウェアサブルーチン1430は、最初、PCB
(図4)から、スクラツチパツドメモIJ1315にP
MW3を取り出し、その後、PMWOを取り出す。PM
WOのMBZフィールドが検査される。そして、もしそ
れが2進数0でなければ、その結果違法なPC財例外が
生じる。しかしながら、もしPMWOのM旧Zフィール
ドが0であれば、PMWIは取り出される1434。再
び、PMWのMBZフィールドが、それが2進数0であ
るか否かを測定するためにテストされる。もしそれが2
進数0でなければ、違法なPCB例外がある。一方、も
し、それが0に等しければ、デスパツチヤはCに進行す
る。従って、アドレススペースヮ−ド船SWOが、PC
Bの適当なスペースから取り出される。
そして、セグメントテーブルワードサイズSTWSZは
、それが7以下であるか杏かを測定するためにテストさ
れる1437。もしそれが7以上であれば、その結果、
遵法なPCBが発生する。もしそれが、7以下か、ある
いは7とイコールであれば、ASWIは、PCB ブロ
ック1438から取り出され、そして、そのPTWPZ
フィールドは、それが8以下であるか、あるいは、8と
イコールであるかどうかを測定するためにテストされる
1439。もし、そのフィールドが8以上であれば、そ
の結果違法なPCBが生ずる。しかしながら、もし、そ
のSTWSZフイールドが8とイコールか、8以下であ
れば、例外ワードEXWが取り出される1 440。そ
して、そのMBZフイールドは、そのが0に等しいか否
かを測定するためにテストされる。もし、そのMBZフ
ィールドが0に等しくなければ、その結果違法なPCB
が発生する。一方、もし、それが0に等しければ、堆積
ワードSKWが取り出される1442。そしてそのM旧
Zフイールド‘ま、それが0に等しいか否かを汝8定す
るためテストされる1 443。もし、M旧Zフィール
ドが0に等しくなければ、その結果、違法なPCBが生
じる。一方「もし、それが0に等しければ、命令カウン
ターワードICWがPCBから取り出され、命令カウン
ターICに漬かれる。そして、そのTAGフィールドは
、それが、0に等しいかどうかを測定するためにテスト
される1445。もし、TAGフィールドが0に等しく
なければ、MBZワードが取り出される1446。そし
て、そのMBZフイールド(ビット0−31)は、それ
が0に等しいか否かを測定するためにテストされる、1
447。もし、それが0に等しくなければその結果違法
なPCBが生じる。一方、もし、それが0に等しければ
、堆積ベースワード0,1およびるBW0,1および2
が取り出される1448。PCBのエリアを貯蔵するベ
ースレジスタにおける8ベースレジスタの内容が、その
後、取り出され、1449、そして、機械のベースレジ
スタ1308に貯蔵される。
その後、PCBのエリアを貯蔵する一般レジスタからの
16一般レジスタの内容が取り出され、1450、そし
て機械の一般レジスタ1307に貯蔵される。しかしな
がら、科学的レジスタの内容を取り出す前に、科学的モ
ードが利用されているかどうかを測定するために145
1、プロセスメインロード0(PMWO)の能力バイト
に関する検査がなされる。もし、科学的モードがなされ
ていれば、PCBのエリアを貯蔵する科学的レジスタの
内容が取り出され貯蔵される1452。その後、アカウ
ンテイングモードが利用されているかどうかを測定する
ために1453。ファームウェアがPMWOの能力バイ
トの検査を続行する。もしアカウンテイングモードが利
用されていれば(即ち、能力バイトのアカウンテイング
ビツトが2進数1にセットされている)、アカウンティ
ングワードは、PCBに存在し、準備タイムアカウント
ヮードRTAが更新される。その後、ファームウェアは
、DEXTナンバーが0にセットされているかどうかを
測定し続ける、1454もし、それが0にセットされて
いなければ、機械がエミュレーションモードにあるかも
しれないことを表示している(即ち、デコーダェクステ
ーション能力が利用されている)。従って、PMWOの
DEXTナンバーは、それがプロセスメインワ−ド3の
DETSZフィールドよりも大きいかあるいは小さいか
を測定するために検査される1455、そして、もしそ
れが、DETSZフィールドよりも大きければ、その結
果違法PC母例外1456が生じる。DEXTナンバー
は、DETSZフィールドよりも少いが、しかし、0に
等しくないので、機械は、適法なエミュレーションモー
Wこおいて作動しており、Fに進行する。デシジョンプ
ロック1454にもどって、もしDEXTフィールドが
、2進数0であれば、ネィテブモードが達成されており
、機械は、STW′sを取り出す、1457。PCBの
残存するタイムアウトワードRTOワードは取り出され
る1458、そして、そのプロセスは、CJPが、進行
状態で消費する時限を伴って、移送される。この点にい
たるまで、‘ィ}機械内に古い、プロセスCJPがあっ
て、新しいプロセス、NJPが、古いプロセスCJPよ
りも高い優先順位にあるときト新しいプロセスNJPが
、CPUのコントロールをとるために“ロールイン”さ
れているか、あるいは‘ローCPUのコントロールにC
JPはなくて、準備キューのヘッドが進行されているか
のどちらかである。
簡単に、‘ィー条件下では、CPJは、RPWから取り
出され、Q/PR/RDYのプロセスリンクPLに置か
れた。そしてQノPR/RDYにおけるプロセスリンク
PLのNJPは、RPWに置かれた。かくして、今CJ
PとなっているNJPコントロールをあたえ、古いCJ
Pからコントロールを除去して、2プロセスのポジショ
ンを有効にスイッチした。その後、NJPのPCBがア
クセスされ、NJPを進行させるために要求されている
情報が、スクラッチパツドメモリ、あるいはACUにお
けるレジスタのアレイに置かれた。もし、CPUのコン
トロールに、CJPがなければ(条件。
)、準備キューのヘッドは進行される・・・…・・・即
ち、NJPは、準備キューのヘッドからのプロセスリン
クPLからNJPをとり、それをRPWワードの中に置
くデスパツチャーのために、CJPとなった。これをす
ることにより、プロセスリンクPLは、Q/PR/RO
Yにおいて空位にされた。そして、それは、それを取り
出すことが要求されている。従って今、デシジョンフロ
ック1461ではじまっているので、ファームウエアは
、CPUのコントロールにCJPがあったかどうかを測
定する。
もし、フリープロセスリンク(FRLS)があったとす
れば、それがアクセスされ、キュー化された。そしてP
CBがその中に書き込まれた。しかしながら、もし、C
PUのコントロールにCJPがなかったとすれば、NJ
FのPMWOのステートバイトが更新される1460。
そして、再び、機械1463の中にCJPがあったかど
うかに関する測定がある。もし、プロセッサのコントロ
ールにCJPがなかったとすれば、NJPのプロセスリ
ンク(それはQ/PR/RDYの中にあったが、今機械
コントロールにある)がQ/PR/RDY1466から
取り出され(即ち、Q/PR/RDYからキュー化され
る)、そして、フリーリンク信号機餌LSPとなり、フ
リープロセスリンクキュー(図9における805)にお
いて現在キュー化され、フリンプロセスリンクキュー1
466aの1部となる。境界アドレスレジスタBARの
内容が取り出される1464。そして、システムベース
のBARプラス56に位置するNJP(現在CJP)の
進行プロセスワードRPWが、RPWブロック1465
にNJPの確認をすることにより更新される。CJPが
ない場合には、ベーカントインジケイタは0にセットさ
れる。次にコンテストインジケイタ(即ち、CJPと、
準備キューにおかれたプロセス間の、優先順位における
可能な衝突を表示するために用いられる補助メモリ13
173におけるフリツブフロツプ)は、0、1467に
セットされる。そして典型的な内容アドレス可能メモリ
であるセグメントアリシェータ(図1上のAS132)
がクリアされる。1471、その後、プロセスモードが
入れられる1470。
(プロセスモードは、例外が、オペレーティングシステ
ムによるよりは、むしろ、プロセッサで作動しているプ
ロセスに処理される。)その後、ファームウェアは、C
AB1480に続く。
非同期トラップビットABが、それが2進数1、148
1にセットされているか否かを測定するために検査され
る。もしABビットが2進数1にセットされるとすれば
、プロセスリンクナンバーPRNが、非同期トラップビ
ットARNより大きいか、あるいは、それに等しいかど
うかを測定するために、検査が行われる1482。(A
BおよびARNは、各プロセスのPCBの優先順位/ゞ
ィトに位置しており、プロセスが進行状態にあるとき意
味がある。ABおよびARNは、システムベースのBA
Rプラス56に位置するRPWより得られる。RPWの
BARプラス56におけるABのARNは、次のステッ
プ1484が、非同期トラツプピツトあるいは非同期リ
ングナンバーを、最初の場所にセットさせる原因となる
条件に干与するかもしれない非同期トラツプルーチンに
進むので、リセットされる。もし、これらが、次のパス
で、ファームウェアにより、セットされていなければ、
それは、実際には悪い所がない場合に、どこかが思いと
いう表示を与え、従って、常に非同期トラツプルーチン
1484に進み、決して実施しなかったのであろう。デ
シジョンブロツク1481と1 482にもどって、も
し、ABビットがセットされていず、あるいは、ABビ
ットがセットされていて、そしてPRNがARNよりも
大きくなれば、ファームウェアは、プロセッサが通常モ
ードあるいはエミュレーションモードの、どのモードで
進行するかを決定し続けるであろう。従って、DEXT
ナンバーは、それが0にセットされているか否かを測定
するために検査される。そして、もし、それが0にセッ
トされていれば、機械の通常モードが進行される。しか
しながら、もしDEXTナンバーが0にセットされてい
なければ、エミュレーションモードが進行される148
6。
【図面の簡単な説明】
図1は、本発明を利用している、マルチプログラミング
装置のブロックダイアグラム、図2は、本発明により利
用されている種々なハードウェア機構の説明図、図3は
、図2に描かれたレジスタにおけるストレージのリザー
ブドエリアのために用いられる用語の凡例。 図4は、プロセスコントロールブロックの図式のダイア
グラム。図5は「プロセスコントロールブロックをアド
レスするための装置の図式のダイアグラムである。図6
は、本発明のシステムベースの図式のダイアグラムであ
る。図7Aと7Bは、各々堆積セグメントと堆積フレー
ムの説明用図面、図8は、Gーセグメントをアドレスし
、また、詳細には、GOセグメントにおけるプロセスの
キューのための装置の図式のダイアグラムである。図9
は、プロセスのキューおよびプロセス連絡を説明してい
るGOセグメントの分解図式ダイアグラムである。図1
0aから101は、PCBもこおける機構のブロックダ
イアグラムである。図11aから11rは、システムベ
ースにおける機構のブロックダイアグラムである。図1
2は、ユーザの計画をアドレスと、また、システムベー
スとPC動機機を利用するシステムセグメントとの図式
のダイアグラムである。図13a,13b,13Cは、
コントロールユニツトの図式のダイアグラムである。図
14aから14iは、ファームウエアにおけるデスパツ
チヤユニツトのフローダイアグラムである。図15aは
、日時計JOD、インターバルタイマーIT、およびプ
ロセスタイマーPTの時間の構成図である。図15bは
、PCBのアカウンテイングワードの機成図、図16は
、ランニングタイムアカワントRUAのファームウェア
更新図、図17は、待ち時間アカウンテイングWTA、
および準備アカウントRTAを更新するファームウェア
図を示す。なお図中、主な構成要素と参照番号との関係
は以下の通りである。1〜4はメモリモジユ−ル、10
1はプロセッササブシステム、102はストレージサブ
システム、103は周辺サブシステム、104は中央処
理装置、106は周辺コントロールユニット「 107
は装檀アダプタ、108は周辺のニプツト/アウトプッ
ト装置。 第5図 図 紬 第2図 第3図 第4図 第6図 第7A図 第7B図 第8図 第9図 第loo図 溝lob図 崇l○c図 崇l○d図 崇l○e図 第l○f図 第log図 第l○h図 第l○し図 第loi図 第lok図 溝loo図 舞仙図 溝川b図 溝化図 溝lid図 器lie図 累ll・F図 崇ll9図 票−lh図 第llし図 溝lli図 賄llk図 藷川Q図 第ll肌図 崇lln図 溝llo図 弟lip図 溝llq図 第川r図 図 N 鮎 尭Bo図 第Bb図 溝ー4o図 紫l4b図 寮!4c図 崇l4d図 第l4e図 粥l4f図 鰐l49図 第l4h図 第Bc図 莞l4し図 第l5o図 弟l5b図 器l6図 溝l7図

Claims (1)

    【特許請求の範囲】
  1. 1 少なくとも一つの仮想メモリと、上記仮想メモリと
    通信する一つの中央処理装置CPUと、諸プロセスを作
    り出したりあるいは消去したりするオペレーテイング・
    システムとを有し、上記CPUは、上記CPUのネイテ
    ブモードオペレーシヨンに関する情報を記憶するための
    複数の一般およびベースレジスタ、上記CPUのネイテ
    ブモードオペレーシヨンに関する情報を記憶するための
    命令カウンタレジスタ、上記CPUのオペレーシヨンの
    科学的モードに関する情報を記憶する複数の科学レジス
    タ、上記CPUにより実行されるべき次の命令のアドレ
    スを記憶するため命令カウンタレジスタ、および、上記
    CPUの状態に関する情報を記憶するステイタスレジス
    タを有し、上記オペレーテイング・システムが作り出し
    たりあるいは削除したりする上記諸プロセスのうちの選
    択された一つが走行状態にあり(即ち、上記CPUを現
    在制御している)、上記諸プロセスのうちの選択された
    他の諸プロセスは、準備、待ち、あるいは中断状態にあ
    り、上記準備状態とは、上記CPUが利用可能となつた
    時上記他の諸プロセスのうちの選択された最初のプロセ
    スが上記CPUの制御を得ることのできる状態であり、
    上記待ち状態とは、上記CPUが利用可能となつた時こ
    の待ちプロセスが上記CPUの制御を獲得するのを許可
    される前に、上記他の諸プロセスのうちの選択された第
    2のプロセスが所定の事象が起ることを必要とする状態
    であり、そして上記中断状態とは、上記他の諸プロセス
    のうちの選択された第3のプロセスが不活発にされてし
    まつている状態であるマルチプログラム・コンピユータ
    ・システムにおいて、上記諸プロセスの状態を制御する
    仮想プロセツサを備え、この仮想プロセツサは、(a)
    所定の構造を有しかつ上記諸プロセスの所定の一つと組
    合わされて、上記諸プロセスの上記所定の一つの状態を
    指令する第1の手段と、(b)上記第1の手段と組合わ
    せられている上記諸プロセスの上記所定の一つのプロセ
    スの選択された名称およびアドレスを提供するために、
    上記オペレーテイング・システムと通信する第2の手段
    と、(c)上記第1の手段のアドレスの第1の所定部分
    を提供するために、上記第2の手段によつてアドレス指
    定される第3の手段と、(d)上記第1の手段のアドレ
    スの第2の所定部分を提供するために、上記第3の手段
    によつてアドレス指定される第4の手段と、(e)上記
    第1の手段のアドレスの上記第1および第2の所定部分
    を結合するために、上記第3および第4の手段に結合さ
    れた第5の手段であつた、それによつて上記第1の手段
    の絶対アドレスが得られるものと、(f)上記命令カウ
    ンタレジスタの内容を記憶するための、上記第1の手段
    内の第6の手段と、を含むことを特徴とするマルチプロ
    グラム・コンピユータ・システム。
JP9220483A 1973-11-30 1983-05-25 マルチプログラム・コンピユ−タ・システム Expired JPS602693B2 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
FR7342690 1973-11-30
FR7342689A FR2289004A1 (fr) 1973-11-30 1973-11-30 Bloc de controle de processus
FR7342689 1973-11-30
FR7342702 1973-11-30

Publications (2)

Publication Number Publication Date
JPS59121443A JPS59121443A (ja) 1984-07-13
JPS602693B2 true JPS602693B2 (ja) 1985-01-23

Family

ID=9128498

Family Applications (2)

Application Number Title Priority Date Filing Date
JP9220583A Expired JPS602694B2 (ja) 1973-11-30 1983-05-25 マルチプログラム・コンピユ−タ・システム
JP9220483A Expired JPS602693B2 (ja) 1973-11-30 1983-05-25 マルチプログラム・コンピユ−タ・システム

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP9220583A Expired JPS602694B2 (ja) 1973-11-30 1983-05-25 マルチプログラム・コンピユ−タ・システム

Country Status (2)

Country Link
JP (2) JPS602694B2 (ja)
FR (1) FR2289004A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62165295U (ja) * 1986-04-08 1987-10-20

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62165295U (ja) * 1986-04-08 1987-10-20

Also Published As

Publication number Publication date
FR2289004A1 (fr) 1976-05-21
FR2289004B1 (ja) 1980-01-11
JPS59121444A (ja) 1984-07-13
JPS602694B2 (ja) 1985-01-23
JPS59121443A (ja) 1984-07-13

Similar Documents

Publication Publication Date Title
US4077058A (en) Method and apparatus for executing an extended decor instruction
US4084228A (en) Process management structures and hardware/firmware control
US4432051A (en) Process execution time accounting system
US4369494A (en) Apparatus and method for providing synchronization between processes and events occurring at different times in a data processing system
US4084224A (en) System of controlling procedure execution using process control blocks
US4394725A (en) Apparatus and method for transferring information units between processes in a multiprocessing system
US4130867A (en) Database instruction apparatus for determining a database record type
US4316245A (en) Apparatus and method for semaphore initialization in a multiprocessing computer system for process synchronization
US4374409A (en) Method of and system using P and V instructions on semaphores for transferring data among processes in a multiprocessing system
US4044334A (en) Database instruction unload
US4395757A (en) Process synchronization utilizing semaphores
US4297743A (en) Call and stack mechanism for procedures executing in different rings
US4447874A (en) Apparatus and method for communication of information between processes in an information system
US4025901A (en) Database instruction find owner
US4320451A (en) Extended semaphore architecture
US5377337A (en) Method and means for enabling virtual addressing control by software users over a hardware page transfer control entity
US4318182A (en) Deadlock detection and prevention mechanism for a computer system
KR920005852B1 (ko) 데이타 처리 시스템에 있어서 합성 디스크립터를 제공하는 장치 및 방법
US5305455A (en) Per thread exception management for multitasking multithreaded operating system
US5224215A (en) Message queue processing among cooperative processors having significant speed differences
US4024508A (en) Database instruction find serial
JPS5939785B2 (ja) デ−タ処理装置
US4042912A (en) Database set condition test instruction
JPS5911943B2 (ja) デ−タ処理装置の為のトラツプ機構
US4351024A (en) Switch system base mechanism