JPS61248124A - 入力先行制御方式 - Google Patents

入力先行制御方式

Info

Publication number
JPS61248124A
JPS61248124A JP60088518A JP8851885A JPS61248124A JP S61248124 A JPS61248124 A JP S61248124A JP 60088518 A JP60088518 A JP 60088518A JP 8851885 A JP8851885 A JP 8851885A JP S61248124 A JPS61248124 A JP S61248124A
Authority
JP
Japan
Prior art keywords
input
ccw
processing
data
instruction
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.)
Pending
Application number
JP60088518A
Other languages
English (en)
Inventor
Takaaki Seki
関 高明
Hiroyuki Kitajima
北嶋 弘行
Akira Yamamoto
彰 山本
Akira Kurano
倉野 昭
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP60088518A priority Critical patent/JPS61248124A/ja
Publication of JPS61248124A publication Critical patent/JPS61248124A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔発明の利用分野〕 本発明は、プログラム記憶型計算機システム等における
入力先行制御方式とその装置に関する。
〔発明の背景〕
従来の計算機システムにおいて、「電子計算機の方式設
計」 (萱島 興三著1978年2月10日三版発行)
、における「第3章、第2項:実行制御」で命令の先行
制御について述べられている。しかし、この技術は入力
の先行制御まで配慮されていなかった。
〔発明の目的〕
本発明の目的は、プログラムの命令実行の先取り処理(
入力先行制御)により、プログラムが必要とする入力デ
ータを、あらかじめ外部記憶装置から主記憶装置に転送
(ブロックまたはトラック単位)し、メモリ階層の上位
におくことにより入出力処理時間の短縮を図る計算機シ
ステムの方式と装置を提供することにある。
〔発明の概要〕
このような目的を達成するために、本発明は、CPU 
(中央演算処理装置)の命令実行制御部とは別に実行中
のプログラムの現命令語のnステップ先の命令を解析す
る先行入力制御部(装置)を設け、入出刃先行制御部で
の入力命令(もしくは入力処理モジュールをコールする
命令)検出により、実際に該プログラムが該ファイル(
データの集合体)をアクセスする以前に、外部記憶装置
上の該ファイルからメモリ階層の上位である主記憶 ・
装置に該データを転送(ブロックまたはトラック単位)
することに特徴がある6 〔発明の実施例〕 以下、本発明を実施例を参照してさらに詳細に説明する
。一実施例の構成を第1図に示す、1は計算機、2は中
央処理装置(CPU)、3は主記憶装置、4は入力先行
制御装置で、本発明において、新たに設置される装置で
ある。5は入力先行制御用バッファであり、その中には
、入力の先行処理に必要なファイルアクセス情報(ファ
イル名、ファイルが外部記憶装置のどこに存在している
かというアドレス情報、ファイルの属性)を格納する大
刃先行用管理テーブル51、チャネルの制御コマンド[
これをCCWと称し第5図すに示yCCWの構成のよう
に入力か出力かを示すコマンド、アクセスアドレス(入
力すべき外部記憶装置上のデータのアドレス)、受信バ
ッファアドレス(データを読み込むべき主記憶装置等の
アドレス)、CCWをチェーンするチェーンポインタ用
エリアからなる。]を格納するCCWテーブル52を含
んでいる。6はチャネルで、CPU2及び入力先行制御
装置4からのコマンド(これを入出力命令と呼ぶ)によ
り該CCWを実行し、主記憶装[13゜入力先行制御用
バッファ5と外部記憶装置8間のデータ転送を行う、7
は入出力制御装置で、チャネル6からの指令により、外
部記憶装置8の制御を行い、チャネル6側とのデータ転
送を制御する。
71が入出力制御部で外部記憶装置8.キャッシュメモ
リ72のアクセス制御を行う。外部記憶袋W8にはファ
イル(データの集合体)やファイルディレクトリ情報(
ファイル名、存在場所(開始。
終了シリンダー、トラック番号)ファイル属性等)を格
納している。
次に上述のごとき構成において、主記憶装置3に入力先
行用主記憶バッファ32を設けた実施例の動作について
説明する(この場合、キャッシュメモリは存在しないと
考える)。
CPU2はプログラムカウンタ(実行すべきプログラム
の命令語の番地を指す機構で、CUP内に存在する)の
指す主記憶装置3上の番地から、該命令を取り込み、命
令解析、実行(演算)を行う。
一方、入力先行制御装置4は命令解析プロセッサ41に
より(第2図に処理フローを示す)、CPU2のプログ
ラムカウンタの値を入力し、その値+n番地先の命令を
解析する。もし、該命令がオープン[0PEN :入出
力を行う該ファイルに対して入出力命令発行前に必が本
命令(または本命令に該当する処理プログラムを呼ぶ命
令)を発行する。外部記憶装置8上に存在する該ファイ
ルディレクトリ情報を読み込むコ命令であれば、0PE
N命令処理プロセツサ43を起動し、その後、また、C
PU2のプログラムカウンタの値+n番地先の命令解析
を続行する。起動された0PEN命令処理プロセツサ4
3では、第4図(a)に示すフローの如く、入力先行制
御用バッファ5内にある空きの大刃先行用管理テーブル
(群)51(該テーブルが空白)を探し空きの大刃先行
用管理テーブルがあれば、該ファイルのディレクトリを
読み込むため、0PEN処理命令でのパラメータ(ファ
イル名、ファイルの属性)から、CCWをCCWテーブ
ル(群)52(入力先行制御用バッファ内)に作成する
。もし、なければ、次の0PEN処理がくるまで空きの
大刃先行用管理テーブル51を探し、量している間に次
の0PEN処理が要求された場合、その0PEN処理は
キャンセルされる。
CCWデープル52内のCCWは空きであるかを区別す
ることや0PEIN命令処理を必ず行うCCWが必要で
あるためCCW制御フラグを用いて区別する。CCW制
御フラグが5′3”の場合、0PEN命令専用CCWで
空きを示し、114 #jは0PEN命令専用CCVの
処理待ちを示す。CCW制御フラグが“1′″の場合、
入力命令用CCWで空きを示し、“2″′の場合、入力
命令用CCWの処理待ちを示す。CCWテーブル(群)
52は、あらかじめ0PEN命令処理用に割り当ててお
いたもの(CCW制御フラグパ3”をシステム開始時に
割当てておく)を使用する。CCWに受信バッファ・ア
ドレスとして該大刃先行用管理テーブル51のアクセス
ファイル情報の先頭アドレスをセットする。また、該C
CWテーブルのCCW制御フラグを“4”にする、そし
て、先行入力用CCWポインタ53にCCWの先頭アド
レスをセットする。この場合。
先行入力用CCWポインタ53が“O”であるか判定し
くすでに先行入力開始命令を発行し、CCυ処理待ちの
があるか判定)、”O”であれば処理待ち中のCCWが
ないため該CCWテーブルのCCWアドレスを先行入力
用CCWポインタ53にセットし1.先行入出力開始命
令を発行する。
もし、′0”でなければCCWテーブル(群)52のC
CW制御フラグが“2″または“4″(CCW処理中)
の最後のCCWテーブルを求め。
そのCCWのチェーンポインタ用エリアに該CCvテー
ブルのCCWアドレスをセットしチェーンする。
チャネル6は、先行入力開始命令によって起動され、入
力先行制御用バッファ5内の入刃先行用CCWポインタ
53が指す最初CCWテーブル52のCCWを取り込み
実行して、入出力制御装置7内の入出力制御部71に指
令を出し、外部記憶装置8から該ファイルディレクトリ
情報をCCwの受信バッファアドレスで指した大刃先行
用管理テーブル51のアクセスファイル情報エリアにデ
ータ転送する。
入力先行制御装置4内の命令解析プロセッサ41では、
(第2図に示すごと<)CPU2におけるプログラムカ
ウンタ+n番地先の命令が入力命令(もしくは、本命令
に該当する処理プログラムを呼ぶ命令)であれば、入力
処理プロセッサ42を起動し、先行入力処理と実際の入
力処理の同期をとるため(実際のプログラムが必要とな
るデータを先に用意しておけばよいのであって、それよ
り先のデータを取り込むことはバッファの満杯を頻繁に
招き、前に取り込んだデータがプログラムで使用される
前に消去される恐れがある。また、先行入力処理の負荷
増大を招くことになる)、CPU2のプログラムカウン
タ値と該入力命令の番地(主記憶装置3)が一致する。
まで待ち、一致すれば引き続きCPU2におけるプログ
ラムカウンタ+n番地の命令を解析する。
一方、命令解析プロセッサ41から起動された入力処理
プロセッサ42は第3図の処理フローに示すごとく、処
理を行う。
まず、入力すべきデータが先行入力用主記憶バッファ3
2に存在するか判定し、存在していれば、先行入力の処
理は行わない、その処理は、先行入力用主記憶バッファ
32内の各先行入力データスロットにおけるアクセスフ
ァイル情報から判定する。アクセスファイル情報内に入
力データの外部記憶装置上のアドレスが大刃先行処理時
にセットされるため、このアドレスと該入力命令のパラ
メータで示す入力データの外部記憶装置上のアドレスが
等しいか判定し等しければ、入力すべきデータが主記憶
バッファ32内に存在するため先行入力処理は行なわな
い。次に、該入力命令のパラメータ情報(ファイル名、
ファイルアクセス情報等)に該当するファイル名が等し
いアクセスファイル情報が大刃先行用管理テーブル51
にあるか判定し、あれば、CCWを作成して入力先行処
理を行うためCCWテーブル(群)52をサーチ(探す
)する、該入力先行用管理テブル51がなければ、本人
力命令の先行処理は行わない、(本人力処理に必要なフ
ァイルアクセス情掲を大刃先行用管理テーブル51へセ
ットする0PEN処理プロセツサの処理が未完のため)
CCVテーブル(群)52のサーチにおいて、CC:W
$制御フラグが“1カ (空きのCCV)のものを探す
。もし、みつからなければ、CCWテーブル(群)52
が全部使用中であるため、本人力命令の次行処理は行な
われない。
CCW制御フラグが“1″′ (空き)のcCWテーブ
ルがあれば、そのCCWを先行入力処理用として使用す
るためCCW制御フラグをIt 2 IIにセットし、
本人力命令におけるパラメータ情報から該CCWテーブ
ル52のCCWに入力すべきデータが存在するアドレス
情報(外部記憶装置上のシリンダー、トラック、ブロッ
ク、レコード番号)と入力要求コマンドをセットする。
(以下の数行の説明には第5図を参照のこと)。
また、該CCWに先行入力用主記憶バッファ32の先行
入力用バッファカレントポインタが指す該先行入力デー
タスロットの先行入力データエリア先頭アドレスをセッ
トする。ほかに、該先行入力データスロットに該アクセ
スファイル情報(入力すべき外部記憶装置上のデータの
アドレスも含む)入力データ長をセットする。その次に
、先行入力用主記憶バッファ32内の先行入力用バッフ
ァカレントポインタを次の先行入力データスロットのア
ドレスに変更する。もし、先行入力用バッファカレント
ポインタが先行入力用バッファ最終ポインタの値と等し
い場合、先行入力用バッファカレントポインタを先行入
力用先頭ポインタの指すアドレスにする。そして、先行
入力用CCWポインタが110”か判定し、“O″であ
れば先行入力用CCWポインタ53に該CCWテーブル
の先頭アドレスをセットして、チャネル6に対し、外部
記憶装置8のアドレスを指定し先行入力命令を発行する
。先行入力用CCWポインタ53が“O”でなければ、
すでにチャネルは別CCWの先行入力命令を処理中であ
るため、CCWテーブル(群)52のCCW制御フラグ
2” (入力情報取得待ち中)または“4” (OPE
N命令処理によるアクセスファイル入力情報取得待ち中
)を示す処理待ち中のCCWの最後のCCWをサーチし
、そのCCvに今回、コマンド等の情報をセットしたC
CWをチェーンする0以上の処理を命令解析プロセッサ
41からの起動により行う、チャネル6は大刃先行用C
CWポインタ53から、チェーンされているCCWを取
り込み、CCWの解析により、CCwが示す外部記憶装
置上のデータを先行入力用主記憶バッファ32内の該先
行入力テータスロット内の先行入力データエリアにデー
タ転送し、該CCvにチェーンがあればチェーンされて
いる次のCCvの処理を続行する。CCWの処理が終了
すれば入力先行制御装置4に割り込み(CCW処理終了
)を発生させる。入力先行制御装置4内割り込み処理プ
ロセッサ45は、チャネル6からの終了割込みにより、
実行終了した該CCV (複数)の消去を行い該CCW
テーブル52のCCW制御フラグから“1″を引く、こ
れにより該CCWテーブル53(群)は再使用可能とな
る。一方、入力処理プロセッサが該CCWテーブル52
内にCCWを作成している間にCPU2の処理するプロ
グラムが必要となるデータを取り込もうとして、CCW
を作成し、入出力命令をチャネル6に発行する場合は、
CPU2の入力を優先させるため次に示す処理で入力先
行処理をやめさせる。CPU2で入出力命令をチャネル
に発行時、入力先行制御装置4内の割り込み処理プロセ
ッサ45はCPU2で作成したCCWと入力先行制御装
置4で作成したCCW (入力先行制御用バッファ5内
のCCWテーブル52内)と等しいものがあるか判定し
、もしあればCCWテーブル52内の該CCWのコマン
ドをクリアする(チャネル6ではコマンドを指定してな
いCCWは何も実行しない)。
入刃先行制御装W4内の命令解析プロセッサ41ではC
PU2のプログラム実行番地+nステップ前の命令解析
においてクローズ[CLO3E :該ファイルアクセス
の終了を指す命令もしくは、本命令に該当する処理プロ
グラムを呼ぶ命令]命令を検出した場合、 CLO3E
処理プロセッサ44を起動する。 CLO3E処理プロ
セッサ44は、第4図すに示すように、CLO5E命令
においてパラメータで指定されたファイル名から該ファ
イル名の入った該大刃先行用管理テーブル51を見つけ
、消去(空白)する。CPU2は、実行中のプログラム
において入力命令を検出した場合、まず、入力命令のパ
ラメータで示すファイルアクセス情報と等しいファイル
アクセス情報があるかどうか先行入力用主記憶バッファ
32内の各先行入力データスロットを調べ、等しいもの
があれば該先行入力データスロットの該先行入力データ
エリアからデータを入力する。
ほかの実施例として、入力先行用バッファを入出力制御
装置7内のキャッシュメモリ72とした場合について説
明する。この場合も、主記憶装置3内に入力先行用バッ
ファを設けた処理と基本的には同じであるが、入力命令
処理プロセッサ42の処理においては第3図に示すごと
く、先行入力用主記憶バッファに関する処理は不要とな
り、かわって入出力制御装置7内の入出力制御部71が
キャッシュメモリ72上に入力すべきデータ(この場合
、外部記憶装置からキャッシュへ入力するデータ)が既
に存在しているか、キャッシュ・メモリ72が満杯の場
合、どこに入力すべきデータを入れるかといった処理を
行う。
入力処理プロセッサ42はCCW作成時に、先行入力デ
ータの受信バッファアドレス(この場合、キャッシュメ
モリ72上のアドレス)をセットする必要がなく、これ
も入出力制御部71がキャッシュ上のどこのアドレスに
入力すべきデータを取り込むか決定する。ゆえに、入力
処理プロセッサ42は、第3図に示す処理概略のうち、
先行入力用主記憶バッファ32に関する処理を行なわず
、即CCW作成可能かの判定(入力命令のパラメータ情
報に該当する大刃先行用管理テーブル51があるか)に
入り、CCW作成可能であれば、大刃先行用バッファを
主記憶装置3上に設けた場合と同じようにccwttc
cwテーブル52内に作成しくただし、CCWに、入力
すべきデータの受信バッファはセットしない)、チャネ
ル6に先行入力命令を発行すればよい。そのため、入力
先行用管理テーブル51内の大刃先行用主記憶バッファ
アドレスとデータ長をセットする必要がなくなる。
0PEN処理では、CCWをCCWテーブル52内に作
成してファイルディレクトリ情報を外部記憶装置8から
入力先行制御用バッファ5内の大刃先行用管理テーブル
51に、取り込むため、先行入力処理のように、外部記
憶装置8からキャッシュメモリ72へ取り込む処理とは
区別する必要がある。そこで0PEN処理用のCCWの
コマンドのコードを’ 01 ”とし、入力先行処理用
(入力命令処理プロセッサ72で作成される)のCCW
のコマンドのコードを“02nと設定する。また、CP
UZ用のCCWコマンドのコードは“o3”を゛′入力
″とじて設定する。チャネルはCCWのコマンドコード
“01”の場合、外部記憶装置8上のデータ(ディレク
トリファイル)を大刃先行用管理テーブル51に転送、
コマンドコード#J O2IIの場合、外部記憶装置8
上のデータをキャッシュメモリ72に転送、コマンドコ
ード“03”の場合、キャッシュメモリ72上もしくは
、外部記憶装置8上のデータを主記憶装置3に転送する
。チャネル6の処理は、大刃先行用CCwポインタ53
からCCWを取り込み、解析し、入出力制御部71に指
令を出して、CCWのコマンドのコードに対応したデー
タ転送を行う。一方。
CPU2は、入力すべきデータがキャッシュ・メモリ7
2(大刃先行用バッファ)上に存在する、しないにかか
わらず、CCWを作成し、入出力命令を発行すればよい
。チャネル6からの指令により、入出力制御部71は、
キャッシュ・メモリ72上に該CCWで示した入力すべ
き(この場合、主記憶装置3に入力する)データが存在
するか判定し、入力すべきデータが存在すればキャッシ
ュ・メモリ72上の該データをCCWテーブル52中に
示された(第5図参照)受信バッファアドレスに転送す
る。もし存在しなければ、該CCWで示すアクセス・ア
ドレス(入力すべきデータが外部記憶装置上に存在する
アドレス)からデータを主記憶装置3上(CCVで示す
受信バッファアドレスのエリア)に転送すると同時に、
キャッシュ上にも取り込む。
大刃先行用バッファをキャッシュ・メモリ72とした場
合以上に述べた処理が、大刃先行用バッファを主記憶装
置3に設けた場合の処理と違う点である。その以外の処
理は大刃先行用バッファを主記憶袋!!!3に設けた場
合の処理と同じである。
以上の2つの実施例について述べた処理を行う入力先行
制御装置!4とそれに必要な入力先行制御用バッファ5
は既存の技術で実現可能である。また、入力先行制御装
置4は単一プロセッサ(CPυ2相当)でも、CPU内
の一機能としても実現可能である。
〔発明の効果〕
以上に説明したごとく、本発明によれば、計算機上で実
行されるプログラムにおいて、アクセス(入力)しよう
とするデータがあらかじめメモリ階層の上位(この場合
主記憶装置)にロードされているため、データ転送に伴
う時間が短縮できるという効果がある。
【図面の簡単な説明】
第1図は、本発明方式の一実施例の概略構成を示すブロ
ック図、第2図は、入力先行制御装置4における命令解
析プロセッサ41の処理概略(処理フロー)を示す図、
第3図は入力先行制御装置における入力処理プロセッサ
42の処理概略(処理フロー)を示す図、第4図a、b
はそれぞれ0PEN命令処理プロセツサ、CLO8E処
理プロセッサの処理概略(処理フロー)を示す図、第5
図a。 bは、それぞれ主記憶装置3内の先行入力用主記憶バッ
ファ32の構造及びCCWの構造を示す図である。 4・・・入力先行制御装置、5・・・入力先行#御用バ
ッファ、32・・・先行入力用主記憶バッファ、41・
・・命令解析プロセッサ、42・・・入力処理プロセッ
サ、43・・・0PEN処理プロセツサ、44・・・C
LO3E処理プ第処理プロ 第 3 図

Claims (1)

    【特許請求の範囲】
  1. プログラム記憶型計算機システムにおいて、プログラム
    の入力処理の先行制御部を設け、実際にプログラムが該
    データの入力を開始する前に、あらかじめ、外部記憶装
    置(または、データ格納装置・一般を指すものとする)
    上に存在するデータを主記憶装置(または、ディスク・
    キャッシュ等のデータの一時保管装置・一般を指すもの
    とする)に転送する入力先行制御方式。
JP60088518A 1985-04-26 1985-04-26 入力先行制御方式 Pending JPS61248124A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP60088518A JPS61248124A (ja) 1985-04-26 1985-04-26 入力先行制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60088518A JPS61248124A (ja) 1985-04-26 1985-04-26 入力先行制御方式

Publications (1)

Publication Number Publication Date
JPS61248124A true JPS61248124A (ja) 1986-11-05

Family

ID=13945047

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60088518A Pending JPS61248124A (ja) 1985-04-26 1985-04-26 入力先行制御方式

Country Status (1)

Country Link
JP (1) JPS61248124A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04266130A (ja) * 1991-02-21 1992-09-22 Nec Corp ファイルリコール制御方式
JPH04333143A (ja) * 1991-05-09 1992-11-20 Fujitsu Ltd 共有領域管理方式

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04266130A (ja) * 1991-02-21 1992-09-22 Nec Corp ファイルリコール制御方式
JPH04333143A (ja) * 1991-05-09 1992-11-20 Fujitsu Ltd 共有領域管理方式

Similar Documents

Publication Publication Date Title
US4593354A (en) Disk cache system
US5220667A (en) Computer system
KR100225744B1 (ko) 동적연쇄화조작동안레이스상태를막는방법및장치
KR102236419B1 (ko) 액세스 요청을 관리하기 위한 방법, 장치, 기기 및 저장 매체
JPH04297934A (ja) データ処理システム
JP3324572B2 (ja) 情報処理装置並びにコンピュータに実行させるためのプログラムを記録した記録媒体
US5410694A (en) File access processing system of a computer enabling high-speed sequential access for a stream file
US5781897A (en) Method and system for performing record searches in a database within a computer peripheral storage device
JPS61248124A (ja) 入力先行制御方式
JPH07146880A (ja) 文書検索装置及び方法
JPH05346867A (ja) データ転送のリスタート処理装置
JP3118348B2 (ja) プログラムキャッシュ方法
JPH067373B2 (ja) デ−タ転送方式
JP2720770B2 (ja) 自動事後処理方式
CN117573675A (zh) 一种数据存储方法、装置、电子设备、芯片及介质
JPH07199898A (ja) 文字表示装置および文字表示方法
JPS60215250A (ja) デ−タ処理装置
JPH07129467A (ja) 情報処理装置のメモリ管理方法
JPH03265045A (ja) 計算機間共用データの管理方法
JPS63285631A (ja) 索引ファイル更新処理方式
JPH04113432A (ja) 仮想記憶制御方法
JPS60118944A (ja) 非常駐インデツクス管理処理方式
JPH0682334B2 (ja) 管理テーブルの管理処理装置
JPH05165756A (ja) マクロ処理機能付チャネル制御装置
JPH02208750A (ja) ファイルアクセス方式