JPS603229B2 - 情報処理方式 - Google Patents

情報処理方式

Info

Publication number
JPS603229B2
JPS603229B2 JP53157950A JP15795078A JPS603229B2 JP S603229 B2 JPS603229 B2 JP S603229B2 JP 53157950 A JP53157950 A JP 53157950A JP 15795078 A JP15795078 A JP 15795078A JP S603229 B2 JPS603229 B2 JP S603229B2
Authority
JP
Japan
Prior art keywords
processor
task
buffer memory
processing
queue
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
JP53157950A
Other languages
English (en)
Other versions
JPS5583951A (en
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.)
Toshiba Corp
Original Assignee
Tokyo Shibaura Electric Co Ltd
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 Tokyo Shibaura Electric Co Ltd filed Critical Tokyo Shibaura Electric Co Ltd
Priority to JP53157950A priority Critical patent/JPS603229B2/ja
Publication of JPS5583951A publication Critical patent/JPS5583951A/ja
Publication of JPS603229B2 publication Critical patent/JPS603229B2/ja
Expired legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】 この発明は複数の処理装置それぞれが固有の高速緩衝記
憶部をもつ情報処理システムに用いて好適する情報処理
方式に関する。
一般に情報処理システムに於いては処理能率を向上せし
めるべく処理装置(プロセッサ)に、バッファメモリ或
いはキャッシュメモリと呼ばれる所謂高速緩衝記憶部(
以下説明の便宜上バッファメモリと呼ぶ)を設けた方式
が広く採用されており、マルチプロセッサシステムに於
いても各プロツサそれぞれに個有のバッファメモリを設
けた構成のものが出現している。
従来、これらのシステムに用いられているバッファメモ
リの容量は、比較的小さく例えば欲バイト程度であった
が、近年では、LSI技術の進歩に伴いバッファメモリ
容量を、例えば64kバイト乃至それ以上に増すことが
可能となり、この容量増加に伴って、ヒット率も向上し
てきた。このヒット率を更に高めようとする際、その妨
げとなる要素として各プロセッサで扱うタスクが切換っ
た直後のヒット率の低いことがクローズアップされてき
た。このような比較的大容量のバッファメモリをもつ場
合、バッファ内の記憶内容を分析した結果、オペレーテ
ィングシステム常駐部のうち入出力処理、スーパバィザ
コールなどを扱うルーチンの通常処理コードと並んで、
複数個のタスクのユーザプログラムの最もよく使われる
部分が残っていることが判明した。しかし従来では、前
述した如くバッファメモリの容量が4・さく従ってタス
ク再起動時にユーザプログラムがバッファメモリ内に残
っていることが期待できない。このため、従来のマルチ
プロセッサシステムに於いてはタスクを各プロセッサに
割当てる際、そのタスクが何れのプロセッサで最後に処
理されたかを全く考慮していなかった。
すなわち、従釆では第1図に示されるようなタスクの待
ち行列を作っておき、何れのプロセッサが空きとなった
場合でも、この待ち行列から各プロセッサに次のタスク
を割当てていた。従って、このような従釆のタスク割当
て手段を大容量のバッファメモリをもつマルチプロセッ
サにそのまま用いたのでは、バッファメモリのヒット率
を高めることができず、処理能率のブル底な向上が期待
できない。この発明は、上記実情に鑑みなされたもので
、複数の処理装置が比較的大容量の高速緩衝記憶部をそ
れぞれにもつ情報処理システムに於いて、上記処理装置
にタスクを割付ける際に、その処理装置が最後に処理し
たタスクを他の処理装置で最後に処理されたタスクより
も優先して割付けて上記高遠緩衝記憶部内に残っている
ユーザプログラムを有効に利用できるようにし、これに
よってタスク切換直後におけるヒット率の低下を防ぎ、
全体のヒット率を向上せしめてシステムの能率向上を計
ることのできるようにした情報処理方式を提供すること
を目的とする。
以下、図面を参照してこの発明の一実施例を説明する。
第2図は、この発明の対象となる情報処理システムの一
構成例を示すもので、図中、101,,1012 はそ
れぞれが大容量(例えば64kバイト以上)の高速緩衝
記憶部(以下バッファメモリと称す)102,102を
有してなるプロセッサ、103,103は主メモリ(M
M)、104はシステム全体の制御を司るシステムコン
トロールユニット(SCU)である。ここで、上記各プ
ロセッサ101,,1012は従来と同様にそれぞれ固
有の機器番号(プロセッサ番号)を有しており、以下の
説明では、プロセッサ101,をプロセッサ#0と呼称
し、プロセッサ1012 をプロセッサ#1と呼称する
第3図は、上記第2図に示したシステム構成に於いて、
この発明を実現するための「プロセッサ資源待ちタスク
」の待ち行列および「1/0動作終了待ちタスク」の待
ち行列の一例を示すもので、この待ち行列は、従来と同
様に主メモリ(MM)103上に作られる。ここで図示
したタスクT,,L…のうちT,およびT3は共に前回
プロセッサ#0で実行されて現在再びプロセッサ資源待
ち状態にあるタスクであり、T2は前回プロセッサ#1
で実行されて現在再びプロセッサ資源待ち状態にあるタ
スクである。またT4,T5は1/○動作終了待ち状態
にあるタスクである。201〜204はプロセッサ資源
待ちタスクの待ち行列におけるスタート並びにエンドポ
ィンタであり、201はプロセッサ#0用のスタートポ
インタ、202はプロセッサ#1用のスタートポインタ
、203はプロセッサ#0用のエンドポインタ、204
はプロセッサ#1用のエンドポインタである。
205,206は1/0動作終了待ちタスクの待ち行列
におけるスタートポィンタ(10Qスタートポインタ)
およびエンドポインタ(10Qエンドポインタ)である
なお、図中においては、タスク自体が待ち行列を構成し
ているように示されているが、実際に主メモリ(MM)
上で待ち行列を構成するものは従来と同様に「タスクコ
ントロールフロックへのポィンタ」であり、これは従釆
より広く使われている方法であるのでここではその説明
を省略する。
また、図においてタスクT,,T2・・・それぞれの右
上隅に示されている部分NA・・・はタスクそれぞれに
対応して新たに追加された識別情報部(以下CPU番号
部と呼ぶ)であり、この新設されたCPU番号部NA・
・・には、そのタスクを最後に処理したプロセッサ(#
0又は#1)のCPU番号(0,1)が記憶され表示さ
れるものである。このプロセッサ番号は、実際にはタス
クコントロールフロックの中に記憶される。各プロセッ
サ#0,#1にはプロセッサ番号レジス夕があり、それ
ぞれのプロセッサ#0,#1が自分の位置(CPU番号
)を知ることができるようになっている。ただし、従来
からあるような構成制御パネル上のスイッチの指定から
間接的にCPU番号を知るような方式であっても構わな
い。何れにしても各プロセッサは自分のCPU番号を知
る手段を持ち、王〆モリ(MM)のコミュニケーション
領域内に設けられた各プロセッサ毎のスタートポィンタ
およびエンドポインタのうちの自分のプロセッサ用のポ
ィンタにアクセスする。これは、通常のインデックス修
飾機構を用いて行なわれるので、ここでは、その説明を
省略する。ここで一例としてプロセッサ#0で現在処理
中のタスクT6に1/0動作要求を出した場合を例にと
つて作用を説明する。
タスクT6の1/0動作要求の宛先の1/0装置がレデ
ィ(Ready)状態にあるとするとその1/0要求は
、現在タスクT8を処理しているプロセッサ#0によっ
てただちに処理されて、1ノ○動作が起動され、タスク
T6は1/0動作終了待ち状態に入る。従ってプロセッ
サ#0は、第3図に示す10Qエンドポィン夕206を
頼りにしてタスクT6を1/0動作終了待ちの待ち行列
につなぎこみ、10Qエンドポインタ206を更新する
。この時プロセッサ#0は自身のCPU番号則ち「0」
をタスクT,のCPU番号部NAに記憶させておく。こ
れでプロセッサ#0が当面タスクT6に対して処理でき
ることはなくなったので、次にプロセッサ#0用の「プ
ロセッサ資源待ちタスクの待ち行列」からタスクを取り
出してその処理を開始する。
即ち、プロセッサ#0用のスタートポインタ201を頼
りにタスクT,を「CPU#0用のプロセッサ資源待ち
タスクの待ち行列」から外し、そのタスクT,の処理を
始める。而して、プロセッサ#0がタスクT,を実行し
ている間に、タスクLが起動した1/0動作が終了して
割り込み信号がプロセッサ#0に送られてきたとする。
プロセッサ#0はタスクT,の実行を一時中断してタス
クT4を1/0動作終了待ち状態からプロセッサ資源待
ち状態に移す。その際タスクT4のCPU番号部NAに
はプロセッサ番号として「1」が記憶されているのでタ
スクLをプロセッサ#1用のプロセッサ資源待ちタスク
の待ち行列につなぎ込む。具体的には、CPU番号NA
の示すCPU用のエンドポィンタに基づいてタスクを待
ち行列につなぎ込む。以上の動作の結果、システムの待
ち行列は第4図に示す状態に変わる。このように、〔各
タスク毎に、最後に処理をしたプロセッサのCPU番号
が記憶される〕〔プロセッサ資源待ちタスクの待ち行列
が各プロセッサ毎に作られており、各タスクは最後に処
理をしたプロセッサの待ち行列に入れられる〕〔プロセ
ッサが空きの状態になった時には、自己のプロセッサの
待ち行列中のタスクから1つを選び出し、その処理を始
める〕という方式を採ることによって、或るプロセッサ
で処理されたタスクは次のプロセッサ割り当て時におい
ても、同じプロセッサが割り当てられ、従ってそのプロ
セッサ内のバッファメモリ102内に残っているそのタ
スクのユーザプログラムの写しが有効に利用される。
なお、上記したようなこの発明に特有の処理方式を実際
に採用した場合に於いては、例えばシステムにジョブが
投入された直後とが、或るジョブの先行するタスクグル
ープの処理が終って、次のタスクグループの処理を始め
る場合などでは、タスクを最後に処理したプロセッサが
存在しない。
このような場合には、そのタスクのユーザプログラムは
未だ何れのプロセッサのバッファメモリ102にも入っ
ていないので、本発明の目的から言えばこの段階のタス
クは何れのプロセッサに割り当てられてもよい。従って
、こうしたタスクには、例えば、CPU番号部NAに−
1を記憶しておき、そのタスクがプロセッサ資源待ち状
態となった時は、前記したプロセッサ#0,#1毎の待
ち行列とは別の待ち行列につなぎ込む。そして、プロセ
ッサ#1が空き状態になった時には、まずそのプロセッ
サ#1の待ち行列を調べ、もしその待ち行列が空であれ
ば次に前記した−1というプロセッサ番号をCPU番号
剖NAにもったタスクの待ち行列を調べ、そのタスクを
取り出して実行する。更にその待ち行列も空であった場
合には、他のプロセッサの待ち行列を調べそのタスクを
取り出して実行する。これによりタスクを最後に処理し
たプロセッサが存在しない場合においても最も好ましい
形で各プロセッサへのタスクの割当てが実現できる。上
記したようなこの発明の採用により、大容量バッファメ
モリをもったマルチプロセッサシステムに於いて、その
バッファメモリ内に残されたユーザプログラムの写しが
再利用される率が高くなり(バッファメモリのヒット率
が上る)、これに伴って、プロセッサの処理速度が向上
できる。
上記実施例を採用した場合の実質的な効果は、ユーザジ
ョブの性質、マルチプログラミングの多重度などの要素
により、大中に異るが、奥形例についての測定では、バ
ッファメモリのヒット率が93%であったものが本提案
の実施により96%に上がり、その結果プロセッサ処理
能力が6%向上した。以上は、或るプロセッサのバッフ
ァメモ川こ写しがとられているブロックに対し、入出力
チャネル又は、他のプロセッサから書込みが行われた時
、そのバッファメモリの該当ブロックの内容も更新され
るかまたはそのバッファメモリの該当ブロックの内容が
無効化される様なハードウェアとなていることを前提と
して説明してきた。
しかし、入出力チャネルや他のプロセッサからの書き込
みの度には何らバッファメモリの内容を更新あるいは無
効化せずソフトウエア的にあるいはハードウェア的に作
られる制御信号が与えられた時に、バッファメモリ全体
を無効化する方式のバッファメモリもある。この方式の
場合には、次の様にして本発明を適用することができる
。まず従来バッファメモリの内容無効化信号を発生する
要因としては、(1}、「入出力動作完了の割り込み信
号」、【2}、「システム全体として共通に管理、利用
されているテーブル等へのアクセスに先立って行われる
ゲーテイングハ{3ー、「タスクをプロセッサに割り付
ける時」の3つがあった。このうち‘1’,【小まそれ
ぞれ入出力バッファ領域及びシステムコミュニケーショ
ン領域をアクセスする際にバッファメモリバイパスモー
ドを用いるようにすれば、それぞれ該当するバッファメ
モリ無効化の必要がなくなる。そのようにしたうえで上
記した本発明を適用し更に「タスクをプロセッサに割り
付ける時にいつもバッファメモリを無効化する」のでは
なく「タスクをプロセッサに割付ける際に、タスクのC
PU番号部NAを調べて、そこに他のプロセッサの番号
が入っている場合に、バッファメモリを無効化する」よ
うに変更する。このようにする理由は、マルチプロセッ
サシステムの場合、或るタスクが最初はプロセッサ#0
で実行され、次にプロセッサ#1で実行され、更にその
次に再びプロセッサ#0で実行されるような状態となっ
た時、プロセッサ#0内のバッファメモリには、最初の
実行時の主メモリの写しが残っており、かつその番地は
その後プロセッサ#1での実行時に書きかえられてしま
っているという状態になっている塵れがあるためバッフ
ァメモリ内の古いユーザプログラムの写しが誤って使わ
れることを防ぐためである。このようにすることによっ
てバッファメモリの無効化を行なう頻度が大幅に減り、
バッファメモリのヒット率が高まり、プロセッサの処理
能力が向上できる。以上、詳記したようにこの発明によ
れば、複数の処理装置が大容量の高速緩衝記憶部をそれ
ぞれにもつ情報処理システムに於いて、上記処理装置に
タスクを割付ける際に、その処理装置が最後に処理した
タスクを他の処理装置で最後に処理されたタスクよりも
優先して割付ける構成としたことにより、藤遠緩衝記憶
部内に残っているユーザプログラムを有効に利用でき、
これによってタスク切換直後におけるヒット率の低下を
防ぎ、全体のヒット率を向上せしめることができて、シ
ステムの能率を向上せしめることのできる情報処理方式
が提供できる。
【図面の簡単な説明】
第1図は、従来の情報処理システムにおけるタスク割付
け手段を説明するためのタスク待ち行列を示す図、第2
図乃至第4図はこの発明の一実施例を説明するためのも
ので第2図はシステム構成例を示すブロック図、第3図
および第4図はそれぞれタスク待ち行列を示す図である
。 101,,1012……プロセッサ、102,102・
・・・・・大容量高速緩衝記憶部(バッファメモリ)、
103,103……主メモリ(MM)、201〜206
……ポィンタ、NA……識別情報部(CPU番号部)、
T,,T2・・・・・・タスク。 第1図第2図 第3図 第4図

Claims (1)

  1. 【特許請求の範囲】 1 複数の処理装置それぞれが固有の高速緩衝記憶部を
    もつ情報処理システムに於いて、上記処理装置で処理さ
    れるタスクが前回の処理において何れの処理装置で実行
    されたかを示す識別情報をタスクそれぞれに対応して設
    け、上記処理装置へタスクを割当てる際に、上記識別情
    報を参照し、この識別情報で示される処理装置に対し、
    他の処理装置よりも優先してそのタスクを割当てること
    を特徴とした情報処理方式。 2 識別情報で示される処理装置各々に対応してプロセ
    ツサ資源待ちタスクの待ち行列をもつようにした特許請
    求の範囲第1項記載の情報処理方式。 3 識別情報で示される以外の処理装置にそのタスクが
    割当てられた際は、その処理装置の高速緩衝記憶部の記
    憶内容を無効化するようにした特許請求の範囲第1項記
    載の情報処理方式。
JP53157950A 1978-12-21 1978-12-21 情報処理方式 Expired JPS603229B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP53157950A JPS603229B2 (ja) 1978-12-21 1978-12-21 情報処理方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP53157950A JPS603229B2 (ja) 1978-12-21 1978-12-21 情報処理方式

Publications (2)

Publication Number Publication Date
JPS5583951A JPS5583951A (en) 1980-06-24
JPS603229B2 true JPS603229B2 (ja) 1985-01-26

Family

ID=15660999

Family Applications (1)

Application Number Title Priority Date Filing Date
JP53157950A Expired JPS603229B2 (ja) 1978-12-21 1978-12-21 情報処理方式

Country Status (1)

Country Link
JP (1) JPS603229B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62115567A (ja) * 1985-11-15 1987-05-27 Nec Corp 多重プロセサシステム
JPS6486246A (en) * 1987-09-28 1989-03-30 Nec Corp Task scheduling system
JPH0752397B2 (ja) * 1988-02-26 1995-06-05 日本電気株式会社 タスク制御方式
JP2815095B2 (ja) * 1989-07-12 1998-10-27 日本電信電話株式会社 マルチプロセッサにおけるタスク割り当て制御方法
JPH0830562A (ja) * 1994-07-19 1996-02-02 Nec Corp マルチプロセッサシステム

Also Published As

Publication number Publication date
JPS5583951A (en) 1980-06-24

Similar Documents

Publication Publication Date Title
JP3659062B2 (ja) 計算機システム
US8032716B2 (en) System, method and computer program product for providing a new quiesce state
US8572624B2 (en) Providing multiple quiesce state machines in a computing environment
KR20010070469A (ko) 고속의 낮은 오버헤드 콘텍스트 스위치를 실행하는디바이스 및 방법
JPH1185618A (ja) 仮想メモリ変換を制御する方法
JP3034873B2 (ja) 情報処理装置
JPS603229B2 (ja) 情報処理方式
CN108845969B (zh) 适用于不完全对称多处理微控制器的操作控制方法及操作系统
JPH03141442A (ja) タスク制御方式
JPH0668725B2 (ja) データ処理システムにおける割込条件に応答する装置及び非同期割込条件に応答する方法
JPS6049352B2 (ja) デ−タ処理装置
JP2585905B2 (ja) マルチタスク実行装置
JP3163196B2 (ja) 仮想記憶制御における命令中断情報格納制御方法
JP3022398B2 (ja) 仮想計算機方式
JPS59163647A (ja) タスク管理方法
JPH0567973B2 (ja)
JPH076045A (ja) 多重処理システムにおけるメモリ管理方法
JPS6212555B2 (ja)
JPH0290331A (ja) 仮想計算機システムのためのプロセツサ間通信命令処理装置
JPS62125437A (ja) 付加プロセツサの制御方法
JP2591818B2 (ja) 補助機能の選択制御方法
JP2644857B2 (ja) データ転送方法
JPH06242975A (ja) 多重情報処理システムの仮想計算機ディスパッチ方式
JPH0543138B2 (ja)
JPH0421892B2 (ja)