JPH0750456B2 - 入出力制御システム - Google Patents
入出力制御システムInfo
- Publication number
- JPH0750456B2 JPH0750456B2 JP61059101A JP5910186A JPH0750456B2 JP H0750456 B2 JPH0750456 B2 JP H0750456B2 JP 61059101 A JP61059101 A JP 61059101A JP 5910186 A JP5910186 A JP 5910186A JP H0750456 B2 JPH0750456 B2 JP H0750456B2
- Authority
- JP
- Japan
- Prior art keywords
- input
- output
- queue
- startup
- class
- 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 - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
- G06F13/12—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
- G06F13/124—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine
- G06F13/126—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine and has means for transferring I/O instructions and statuses between control unit and main processor
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/24—Handling requests for interconnection or transfer for access to input/output bus using interrupt
- G06F13/26—Handling requests for interconnection or transfer for access to input/output bus using interrupt with priority control
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Multi Processors (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Bus Control (AREA)
Description
【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、入出力装置の起動及び割込み処理を制御する
入出力制御システムに関する。
入出力制御システムに関する。
近年、電子計算機の入出力チャネルに新しい概念が採り
入れられてきた。IBM社発行の刊行物(文献1)「アイ
ビーエムシステム/370エクステェンディド アーキテク
チャ プリンスプルズオブ オペレーション」(「IBM
System/370Extended Architecture Principles of Oper
ation」)(SA22-7085-0)の13章でこの新しい概念の紹
介が、また14〜17章でその詳細な動作説明がなされてい
る。
入れられてきた。IBM社発行の刊行物(文献1)「アイ
ビーエムシステム/370エクステェンディド アーキテク
チャ プリンスプルズオブ オペレーション」(「IBM
System/370Extended Architecture Principles of Oper
ation」)(SA22-7085-0)の13章でこの新しい概念の紹
介が、また14〜17章でその詳細な動作説明がなされてい
る。
この概念は、一口でいえば、入出力情報転送を行なうチ
ャネルがチャネルサブシステムにより、チャネルの使用
状態に応じて動的に決められるものである。本文献1に
記述された原理にもとずいた電子計算機のひとつが、IB
M-308x処理装置であり、そのチャネルサブシステムが外
部データ制御装置(External Date Contoroller(ED
C))である。本装置の動作概要は、「アイビーエム
メンテナンス ライブラリー:3081/3083/3084プロセッ
サ コンプレックス テクスターナル データ コント
ローラ イントロダクション/メンテナンス」(「IBM
Maintenance Library:3081/3083/3084 Processor Comp
lex External Data Controller Introduction/Maintena
nce」)(SY-22-7087-2)(文献2)に記載されてい
る。
ャネルがチャネルサブシステムにより、チャネルの使用
状態に応じて動的に決められるものである。本文献1に
記述された原理にもとずいた電子計算機のひとつが、IB
M-308x処理装置であり、そのチャネルサブシステムが外
部データ制御装置(External Date Contoroller(ED
C))である。本装置の動作概要は、「アイビーエム
メンテナンス ライブラリー:3081/3083/3084プロセッ
サ コンプレックス テクスターナル データ コント
ローラ イントロダクション/メンテナンス」(「IBM
Maintenance Library:3081/3083/3084 Processor Comp
lex External Data Controller Introduction/Maintena
nce」)(SY-22-7087-2)(文献2)に記載されてい
る。
上記文献2によれば、入出力装置(I/O)の起動要求
は、いったんI/Oの属するロジカル・コントロール・ユ
ニット内に保留される。EDCは、ロジカル・コントロー
ル・ユニットに保留された起動要求をサーチし、起動要
求を処理する。サーチ順は、複数のロジカル・コントロ
ール・ユニットをラウンド・ロビン方式で行う。
は、いったんI/Oの属するロジカル・コントロール・ユ
ニット内に保留される。EDCは、ロジカル・コントロー
ル・ユニットに保留された起動要求をサーチし、起動要
求を処理する。サーチ順は、複数のロジカル・コントロ
ール・ユニットをラウンド・ロビン方式で行う。
以下、第11図乃至第15図を用いてその動作概要を説明す
る。
る。
第11図はシステム全体の構成ブロック図である。EDC13
はシステム・コントローラ(SC)12を介して、中央処理
装置(CP)11とメインストレージ(MS)10とに接続され
る。さらにEDC13内のチャネル(CH)131は、標準的なイ
ンタフェースで、入出力制御装置(CU)142と接続され
る。第11図では、1台のCU142はスイッチ(SW)141で2
台のCHと接続されている。また、1台のI/O143は、2台
のCUに接続されている。このように、あるI/Oが複数のC
Uに接続されている場合、それらCUをまとめて、ひとつ
のロジカル・コントロール・ユニット(ロジカルCU)と
呼ぶことにする。このようなロジカルCUはシステム内に
複数存在する。一方、MS10はプログラムエリア101とハ
ードウェアシステムエリア(HSA)102に分かれる。プロ
グラムエリア101は通常のプログラムで使用するエリア
であり、通常のプログラム,データエリアとして使用さ
れる他に、後述する動作要求ブロック103が用意され
る。HSAエリア102はCP11とEDC13の両方からアクセスさ
れる特別のエリアであり、こゝに後述するロジカルCU制
御ブロック104(複数のロジカルCUの夫々に対応して設
けられる。)、サブチャネルブロック105(複数のサブ
チャネルの夫々に対応して設けられる。)が用意され
る。第12図乃至第14図は前記文献で述べられている動作
要求ブロック103、ロジカルCU制御ブロック104及びサブ
チャネルブロック105の構成例である。
はシステム・コントローラ(SC)12を介して、中央処理
装置(CP)11とメインストレージ(MS)10とに接続され
る。さらにEDC13内のチャネル(CH)131は、標準的なイ
ンタフェースで、入出力制御装置(CU)142と接続され
る。第11図では、1台のCU142はスイッチ(SW)141で2
台のCHと接続されている。また、1台のI/O143は、2台
のCUに接続されている。このように、あるI/Oが複数のC
Uに接続されている場合、それらCUをまとめて、ひとつ
のロジカル・コントロール・ユニット(ロジカルCU)と
呼ぶことにする。このようなロジカルCUはシステム内に
複数存在する。一方、MS10はプログラムエリア101とハ
ードウェアシステムエリア(HSA)102に分かれる。プロ
グラムエリア101は通常のプログラムで使用するエリア
であり、通常のプログラム,データエリアとして使用さ
れる他に、後述する動作要求ブロック103が用意され
る。HSAエリア102はCP11とEDC13の両方からアクセスさ
れる特別のエリアであり、こゝに後述するロジカルCU制
御ブロック104(複数のロジカルCUの夫々に対応して設
けられる。)、サブチャネルブロック105(複数のサブ
チャネルの夫々に対応して設けられる。)が用意され
る。第12図乃至第14図は前記文献で述べられている動作
要求ブロック103、ロジカルCU制御ブロック104及びサブ
チャネルブロック105の構成例である。
さて、前記文献2に述べられている新しい概念における
入出力命令の実行は、I/Oと一対一に対応したサブチャ
ネルにもとずいてなされる。
入出力命令の実行は、I/Oと一対一に対応したサブチャ
ネルにもとずいてなされる。
サブチャネルは、対応する個々のI/Oの入出力動作を行
なうために必要な情報をいい、対応するサブチャネルブ
ロック105に保持されている。このようなサブチャネル
を用いた本概念は、従来のよく知られている入出力命令
の実行と次の点で異なる。
なうために必要な情報をいい、対応するサブチャネルブ
ロック105に保持されている。このようなサブチャネル
を用いた本概念は、従来のよく知られている入出力命令
の実行と次の点で異なる。
(1)I/Oを起動する制御プログラムは、チャネルを意
識しない。起動命令はサブチャネルを指定して行われ、
実際にI/Oに至るチャネル経路の選択は、ハードウエア
(本例ではEDC)が行う。
識しない。起動命令はサブチャネルを指定して行われ、
実際にI/Oに至るチャネル経路の選択は、ハードウエア
(本例ではEDC)が行う。
(2)I/Oに至る経路が使用中のとき、ハードウエア
は、他の経路を探して起動を行おうとする。他の使用可
能な経路がないと、その起動要求は、ハードウエア自身
が保留し、経路が空くのを待つ。
は、他の経路を探して起動を行おうとする。他の使用可
能な経路がないと、その起動要求は、ハードウエア自身
が保留し、経路が空くのを待つ。
第11図において、こうしたI/O起動の処理は、次のよう
に行われる。まず、CP11はMS10上の制御プログラムを読
み出し実行するが、このとき、命令がI/O起動命令(SSC
H命令:Start Subchannel)の場合、第12図で示した動作
要求ブロック103の内容を、SSCH命令で指定されたサブ
チャネルに対応するサブチャネルブロック105に転送す
る。動作要求ブロックにはチャネルプログラム(CCW)
アドレスなどの情報が含まれている。第14図は一つのサ
ブチャネルブロックの構成例を示している。Sは起動、
Iは割込みを意味するビットである。転送された動作要
求ブロックの内容はサブチャネル制御情報の格納エリア
の一部に記憶される。サブチャネル制御情報の他の格納
エリアには、入出力装置に対する固定情報(ISC,ロジカ
ルCU番号等)がイニシャルプログラムロード(IPL)の
際に予め記憶されている。ロジカルCU番号は当サブチャ
ネルに対応したI/Oの属するロジカルCUのアドレスであ
る。さて、動作要求ブロックが転送されると、このロジ
カルCU番号にもとづいて、関係するロジカルCUに、I/O
起動要求をキユーイングする。
に行われる。まず、CP11はMS10上の制御プログラムを読
み出し実行するが、このとき、命令がI/O起動命令(SSC
H命令:Start Subchannel)の場合、第12図で示した動作
要求ブロック103の内容を、SSCH命令で指定されたサブ
チャネルに対応するサブチャネルブロック105に転送す
る。動作要求ブロックにはチャネルプログラム(CCW)
アドレスなどの情報が含まれている。第14図は一つのサ
ブチャネルブロックの構成例を示している。Sは起動、
Iは割込みを意味するビットである。転送された動作要
求ブロックの内容はサブチャネル制御情報の格納エリア
の一部に記憶される。サブチャネル制御情報の他の格納
エリアには、入出力装置に対する固定情報(ISC,ロジカ
ルCU番号等)がイニシャルプログラムロード(IPL)の
際に予め記憶されている。ロジカルCU番号は当サブチャ
ネルに対応したI/Oの属するロジカルCUのアドレスであ
る。さて、動作要求ブロックが転送されると、このロジ
カルCU番号にもとづいて、関係するロジカルCUに、I/O
起動要求をキユーイングする。
I/O起動要求をロジカルCUにキユーイングする方法は、
第15図に示す如く、起動要求を待つサブチャネルのうち
先頭のサブチャネルの番号と最後のサブチャネルの番号
をロジカルCU制御ブロック104に記憶し、サブチャネル
ブロック105に次のチェイン先サブチャネル番号を記憶
し、起動要求保留中を表示するSビットを“1"にして、
キユーのチェインを作る。第15図では、あるロジカルCU
ブロックに2個の起動要求がキユーイングされている様
子を示し、キユーカウントは“2"を示している。
第15図に示す如く、起動要求を待つサブチャネルのうち
先頭のサブチャネルの番号と最後のサブチャネルの番号
をロジカルCU制御ブロック104に記憶し、サブチャネル
ブロック105に次のチェイン先サブチャネル番号を記憶
し、起動要求保留中を表示するSビットを“1"にして、
キユーのチェインを作る。第15図では、あるロジカルCU
ブロックに2個の起動要求がキユーイングされている様
子を示し、キユーカウントは“2"を示している。
すなわち、起動要求を待つサブチャネルのうち先頭にあ
るサブチャネルがサブチャネルaであり、次のサブチャ
ネルがサブチャネルbである時、ロジカルCUブロック10
4内の先頭サブチャネル番号が、サブチャネルaのブロ
ックを示す。さらにサブチャネルaのブロック内の次の
サブチャネル番号が、サブチャネルbのブロックを示
す。1つのロジカルCUには複数のI/Oが存在するので、
この例のように、ロジカルCUブロック内でキユーが作ら
れることがある。さらに、システム全体からみると、ロ
ジカルCUは複数個存在し、その各々のロジカルCUブロッ
クにI/O起動のキユーが作られる。
るサブチャネルがサブチャネルaであり、次のサブチャ
ネルがサブチャネルbである時、ロジカルCUブロック10
4内の先頭サブチャネル番号が、サブチャネルaのブロ
ックを示す。さらにサブチャネルaのブロック内の次の
サブチャネル番号が、サブチャネルbのブロックを示
す。1つのロジカルCUには複数のI/Oが存在するので、
この例のように、ロジカルCUブロック内でキユーが作ら
れることがある。さらに、システム全体からみると、ロ
ジカルCUは複数個存在し、その各々のロジカルCUブロッ
クにI/O起動のキユーが作られる。
こうして作られたキユーを取り出し、実際にI/O143を起
動するのが、EDC13の役目である。EDC13は、MS10上のサ
ブチャネルブロック105やロジカルCU制御ブロック104を
読み出し、更新するが、このように、CP11とEDC13両方
でこれらのブロックをアクセスするため、MS10の一部に
これらブロックを格納するHSAエリア102が設けられ、該
エリアは、通常のプログラムで使用するエリア101とは
分離される。また、第13図,第14図に示す如く、いずれ
のブロック104,105にも“Lock byte"と呼ばれるエリア
があるが、これは、CP11、EDC13からのアクセスの競合
をさけるために使用される。
動するのが、EDC13の役目である。EDC13は、MS10上のサ
ブチャネルブロック105やロジカルCU制御ブロック104を
読み出し、更新するが、このように、CP11とEDC13両方
でこれらのブロックをアクセスするため、MS10の一部に
これらブロックを格納するHSAエリア102が設けられ、該
エリアは、通常のプログラムで使用するエリア101とは
分離される。また、第13図,第14図に示す如く、いずれ
のブロック104,105にも“Lock byte"と呼ばれるエリア
があるが、これは、CP11、EDC13からのアクセスの競合
をさけるために使用される。
EDC13は複数のロジカルCU制御に対し、サイクリックに
読出しを行なう。さらに、該読出したロジカルCUブロッ
クにキユーイング中のサブチャネルが存在するかどうか
を判断し、もし、キユーがあれば(キユーカウント≠
0)、先頭サブチャネル番号を用いて、起動処理を行
う。もし、キユーがなければ、次のロジカルCU制御ブロ
ックを読み出し、同様のことを行う。
読出しを行なう。さらに、該読出したロジカルCUブロッ
クにキユーイング中のサブチャネルが存在するかどうか
を判断し、もし、キユーがあれば(キユーカウント≠
0)、先頭サブチャネル番号を用いて、起動処理を行
う。もし、キユーがなければ、次のロジカルCU制御ブロ
ックを読み出し、同様のことを行う。
EDC13でキユーが取り出されると、サブチャネルブロッ
ク105内のサブチャネル制御情報およびロジカルCU制御
ブロック104内のチャネルアドレス(第13図のCH0,C
H1,CH8,CH9)にもとずいて、I/Oの起動が行われる。
いずれのチャネルからの経路も使用中のとき、再びキユ
ーされる。
ク105内のサブチャネル制御情報およびロジカルCU制御
ブロック104内のチャネルアドレス(第13図のCH0,C
H1,CH8,CH9)にもとずいて、I/Oの起動が行われる。
いずれのチャネルからの経路も使用中のとき、再びキユ
ーされる。
ところで、このように、いったんキユーイングされたI/
O起動を実行する順序は、SSCH命令実行順およびロジカ
ルCU番号に依存するが、明確な優先順位というものはな
い。一方、制御プログラムは、I/O処理に優先順位をつ
けて制御しているが、これまで述べてきた従来例では、
いったん起動命令が出された後の優先処理までは配慮さ
れていない。
O起動を実行する順序は、SSCH命令実行順およびロジカ
ルCU番号に依存するが、明確な優先順位というものはな
い。一方、制御プログラムは、I/O処理に優先順位をつ
けて制御しているが、これまで述べてきた従来例では、
いったん起動命令が出された後の優先処理までは配慮さ
れていない。
従来、この種の優先順位管理は、入出力管理プログラム
レベルで行われていたが、「Extended Architecture」
の概念で見られるように、I/O起動要求が、チャネルサ
ブシステムというハードウエアで保留されると、プログ
ラウレベルでの優先順位管理が不完全になってしまう。
また、I/O(サブチャネル)といった物理的なものだけ
に優先順位をつけるという考え方も、例えば、一つのデ
ィスク装置に、ページング用データ・セットと他の一般
のデータ・セットが混在するということもあり、システ
ムの効率上、適切とは言えない。上記例では、ページン
グ用のデータ・セットアクセス時は、他の一般データ・
セットアクセス時より、そのI/O処理の優先順位は高い
ほうが良い。すなわち、ある一つのI/Oだけ見ても、I/O
処理要求元で、そのI/O処理の緊急度は異なるはずであ
る。
レベルで行われていたが、「Extended Architecture」
の概念で見られるように、I/O起動要求が、チャネルサ
ブシステムというハードウエアで保留されると、プログ
ラウレベルでの優先順位管理が不完全になってしまう。
また、I/O(サブチャネル)といった物理的なものだけ
に優先順位をつけるという考え方も、例えば、一つのデ
ィスク装置に、ページング用データ・セットと他の一般
のデータ・セットが混在するということもあり、システ
ムの効率上、適切とは言えない。上記例では、ページン
グ用のデータ・セットアクセス時は、他の一般データ・
セットアクセス時より、そのI/O処理の優先順位は高い
ほうが良い。すなわち、ある一つのI/Oだけ見ても、I/O
処理要求元で、そのI/O処理の緊急度は異なるはずであ
る。
また、I/O処理が完了した後のI/O割込みは、優先処理と
いう概念が採り入れられているが、従来例は優先順位指
定に対する柔軟性に対して必ずしも充分と言えなかっ
た。
いう概念が採り入れられているが、従来例は優先順位指
定に対する柔軟性に対して必ずしも充分と言えなかっ
た。
本発明の目的は、チャネルサブシステムでのI/O起動処
理及び割込み処理を、緊急度に応じて処理し、システム
の処理効率を高めることにある。
理及び割込み処理を、緊急度に応じて処理し、システム
の処理効率を高めることにある。
複数の入出力装置が接続された外部データ制御装置と、
中央処理装置と、外部データ制御装置と中央処理装置の
両方からアクセス可能な主記憶装置とを有する。主記憶
装置は各入出力装置に対応した記憶領域と、入出力装置
の起動の優先順位を定めるクラス毎にキユーを構築する
ための情報を記憶する領域を有する。中央処理装置は起
動命令を実行すると、入出力装置の制御情報を主記憶装
置の対応する記憶領域に設定し、キユー構築情報を更新
する。外部データ制御装置は優先順位の高いキユーにキ
ユーイングされた入出力装置から起動する。この起動は
主記憶装置に記憶された入出力装置の制御情報に基づい
て行なわれる。
中央処理装置と、外部データ制御装置と中央処理装置の
両方からアクセス可能な主記憶装置とを有する。主記憶
装置は各入出力装置に対応した記憶領域と、入出力装置
の起動の優先順位を定めるクラス毎にキユーを構築する
ための情報を記憶する領域を有する。中央処理装置は起
動命令を実行すると、入出力装置の制御情報を主記憶装
置の対応する記憶領域に設定し、キユー構築情報を更新
する。外部データ制御装置は優先順位の高いキユーにキ
ユーイングされた入出力装置から起動する。この起動は
主記憶装置に記憶された入出力装置の制御情報に基づい
て行なわれる。
[作用] 主記憶装置内の各入出力装置に対応した記憶領域に、中
央処理装置により各入出力装置の起動の優先順位を示す
クラスを起動要求が発生する度に設定することができ、
かつクラス別に起動キューを設定しているので、起動要
求の生じた要因に応じて入出力装置の起動を起動要求発
生毎にダイナミックに指定できる。
央処理装置により各入出力装置の起動の優先順位を示す
クラスを起動要求が発生する度に設定することができ、
かつクラス別に起動キューを設定しているので、起動要
求の生じた要因に応じて入出力装置の起動を起動要求発
生毎にダイナミックに指定できる。
例えば、仮想記憶方式の情報処理装置であって一つの入
出力装置がページング用データセットとユーザ用データ
セットの二つを格納している場合、アドレス変換例外と
いう要因が発生した時の起動要求は優先度の高いクラス
を指定し、ユーザ用データセットのアクセス要求という
起動要因があった時は優先度の低いクラスを指定するこ
とができる。これにより、アドレス変換例外(仮想記憶
方式において、主記憶上にないアドレスを刷るときに生
じる。)の時には、高い優先順位で入出力装置を起動す
ることができるので、仮想アドレス空間に対するアクセ
スが高速化される。
出力装置がページング用データセットとユーザ用データ
セットの二つを格納している場合、アドレス変換例外と
いう要因が発生した時の起動要求は優先度の高いクラス
を指定し、ユーザ用データセットのアクセス要求という
起動要因があった時は優先度の低いクラスを指定するこ
とができる。これにより、アドレス変換例外(仮想記憶
方式において、主記憶上にないアドレスを刷るときに生
じる。)の時には、高い優先順位で入出力装置を起動す
ることができるので、仮想アドレス空間に対するアクセ
スが高速化される。
以下、本発明の一実施例を第1図乃至第10図により説明
する。
する。
第1図は本実施例のシステム全体ブロック図である。第
11図に示したシステム構成とほぼ同様の構成であるが、
メインストレージ20に設けられる各ブロックの内容が後
述するように異なり、又、新たに起動キユー制御ブロッ
ク116および割込みキユー制御ブロック117が設けられて
いる。中央処理装置(CP)21および外部データ制御装置
(EDC)23も第6図,第7図,第9図および第10図にお
いて後述するようにその処理の内容が異っている。
11図に示したシステム構成とほぼ同様の構成であるが、
メインストレージ20に設けられる各ブロックの内容が後
述するように異なり、又、新たに起動キユー制御ブロッ
ク116および割込みキユー制御ブロック117が設けられて
いる。中央処理装置(CP)21および外部データ制御装置
(EDC)23も第6図,第7図,第9図および第10図にお
いて後述するようにその処理の内容が異っている。
システム・コントローラ(SC)およびロジカルCUについ
ては第11図と同じである。
ては第11図と同じである。
第2図は本発明による動作要求ブロック113の構成例を
示し、新しくワード3にI/O処理クラスCが追加された
点が第12図の従来例と異なっている。本クラスCは次の
ようにビット割当てされる。なお、有効クラスコードは
3ビット構成とする。
示し、新しくワード3にI/O処理クラスCが追加された
点が第12図の従来例と異なっている。本クラスCは次の
ようにビット割当てされる。なお、有効クラスコードは
3ビット構成とする。
ビット0:“0" ビット1:クラスコード0 ビット2:クラスコード1 ビット3:クラスコード2 クラスコードの0〜2はデコードされて、クラス0〜7
を指定する。すなわち、クラスコードが“000"のとき、
最高位のI/O処理クラス0を意味し、“111"のとき、最
低位の処理クラス7を意味する。
を指定する。すなわち、クラスコードが“000"のとき、
最高位のI/O処理クラス0を意味し、“111"のとき、最
低位の処理クラス7を意味する。
第3図は本発明によるサブチャネルブロック115を示
し、第14図の従来例と比べて、I/O処理クラスCを記憶
するエリアが追加された点が異なる。
し、第14図の従来例と比べて、I/O処理クラスCを記憶
するエリアが追加された点が異なる。
第4図は、I/Oの起動を制御するブロック(起動キユー
制御ブロック)のフォーマットを示す。起動キユー制御
ブロックは各処理クラス毎のキユーの数、先頭ポインタ
(キユーの先頭のサブチャネル番号)、末尾ポインタ
(キユーの末尾のサブチャネル番号)よりなる。起動キ
ユー制御ブロックはMS上のHSAエリア202に置かれる。
制御ブロック)のフォーマットを示す。起動キユー制御
ブロックは各処理クラス毎のキユーの数、先頭ポインタ
(キユーの先頭のサブチャネル番号)、末尾ポインタ
(キユーの末尾のサブチャネル番号)よりなる。起動キ
ユー制御ブロックはMS上のHSAエリア202に置かれる。
又、ロジカルCU制御ブロックは、第5図に示すように、
従来(第13図)に比べ、チャネルアドレスのみを保持す
るものに縮退されてHSAエリア202に置かれる。
従来(第13図)に比べ、チャネルアドレスのみを保持す
るものに縮退されてHSAエリア202に置かれる。
次に具体的な動作について、第1図および第6図を用い
て説明する。
て説明する。
SSCH命令が実行されると、CP21はMS20の動作要求ブロッ
ク113(第2図)の内容を指定されたサブチャネルのブ
ロック115(第3図)内に転送する(ステップ202)。こ
のとき、従来と異なり、新たに追加されたI/O処理クラ
スCの値がサブチャネルブロック115にセットされる。
さらにCP21は該I/O処理クラスに対応した起動キユー制
御ブロック(第4図)を読み出し(ステップ203)、I/O
起動要求をキユーイングする。即ち、ある「処理クラ
ス」に一つもI/O起動要求がキユーされていないとき
(ステップ204)、対応するI/O処理クラスの起動キユー
制御ブロックの「先頭のサブチャネル番号」と「末尾の
サブチャネル番号」エリアにキユーすべきサブチャネル
番号が格納され(ステップ206、さらに、キユーカウン
トは、“0"から“1"に更新される(ステップ208)。さ
らに、サブチャネルブロック115中のSビットが“1"に
セットされる。
ク113(第2図)の内容を指定されたサブチャネルのブ
ロック115(第3図)内に転送する(ステップ202)。こ
のとき、従来と異なり、新たに追加されたI/O処理クラ
スCの値がサブチャネルブロック115にセットされる。
さらにCP21は該I/O処理クラスに対応した起動キユー制
御ブロック(第4図)を読み出し(ステップ203)、I/O
起動要求をキユーイングする。即ち、ある「処理クラ
ス」に一つもI/O起動要求がキユーされていないとき
(ステップ204)、対応するI/O処理クラスの起動キユー
制御ブロックの「先頭のサブチャネル番号」と「末尾の
サブチャネル番号」エリアにキユーすべきサブチャネル
番号が格納され(ステップ206、さらに、キユーカウン
トは、“0"から“1"に更新される(ステップ208)。さ
らに、サブチャネルブロック115中のSビットが“1"に
セットされる。
この状態で、上記処理クラスと同じクラスを持つサブチ
ャネルに対して起動がなされると、CP21は、対応する起
動キユー制御ブロック(第4図)をMS20のHSAエリア112
から読み出し(ステップ203)、末尾のサブチャネル番
号で示されるサブチャネル制御ブロック(第3図)の
「チェイン中の次のサブチャネル番号」エリアに、起動
されたサブチャネルの番号を格納し(ステップ205)、
さらに、前記起動キユー制御ブロック中の「末尾のサブ
チャネル番号」エリアに起動されたサブチャネル番号を
格納し(ステップ207)、キユーカウントを+1して
(ステップ208)、キユーのチェインを作成する。そし
て、起動されたサブチャネルのブロックのSビットを
“1"にセットする。
ャネルに対して起動がなされると、CP21は、対応する起
動キユー制御ブロック(第4図)をMS20のHSAエリア112
から読み出し(ステップ203)、末尾のサブチャネル番
号で示されるサブチャネル制御ブロック(第3図)の
「チェイン中の次のサブチャネル番号」エリアに、起動
されたサブチャネルの番号を格納し(ステップ205)、
さらに、前記起動キユー制御ブロック中の「末尾のサブ
チャネル番号」エリアに起動されたサブチャネル番号を
格納し(ステップ207)、キユーカウントを+1して
(ステップ208)、キユーのチェインを作成する。そし
て、起動されたサブチャネルのブロックのSビットを
“1"にセットする。
上記の如く各「I/O処理クラス」に応じてキユーイング
されたI/O起動要求は、EDC23によりデキユーされる。こ
の動作は第7図に示されている。EDC23は、まず、一番
優先順位の高い処理クラス0(ステップ301)の起動キ
ユー制御ブロック(第4図)をMS20のHSAエリア112より
読み出し、キユーの有無をキユーカウントの値で判定す
る(ステップ302)。もし、その値がオール“0"でなけ
れば、「先頭のサブチャネル番号」で示される番号のサ
ブチャネルブロック115(第3図)を読み出す(ステッ
プ304)。EDC23は、読出されたサブチャネルブロック11
5(第3図)内のロジカルCU番号に基き、ロジカルCU制
御ブロック(第5図)を参照し、チャネルアドレスを読
出す(ステップ305)。このようにして読出されたサブ
チャネルブロック115(第3図)のサブチャネル制御情
報およびロジカルCU制御ブロック(第5図)のチャネル
アドレスにもとづいてI/O起動が行われる(ステップ30
8)。いずれのチャネルからの経路も使用中のとき(ス
テップ306)、再びキユーされる(ステップ307)。再キ
ユーは、起動できなかったI/Oの起動要求をキユーの最
後部に移し、次にチェインされていたI/Oの起動要求を
先頭に移すことにより行なわれる。
されたI/O起動要求は、EDC23によりデキユーされる。こ
の動作は第7図に示されている。EDC23は、まず、一番
優先順位の高い処理クラス0(ステップ301)の起動キ
ユー制御ブロック(第4図)をMS20のHSAエリア112より
読み出し、キユーの有無をキユーカウントの値で判定す
る(ステップ302)。もし、その値がオール“0"でなけ
れば、「先頭のサブチャネル番号」で示される番号のサ
ブチャネルブロック115(第3図)を読み出す(ステッ
プ304)。EDC23は、読出されたサブチャネルブロック11
5(第3図)内のロジカルCU番号に基き、ロジカルCU制
御ブロック(第5図)を参照し、チャネルアドレスを読
出す(ステップ305)。このようにして読出されたサブ
チャネルブロック115(第3図)のサブチャネル制御情
報およびロジカルCU制御ブロック(第5図)のチャネル
アドレスにもとづいてI/O起動が行われる(ステップ30
8)。いずれのチャネルからの経路も使用中のとき(ス
テップ306)、再びキユーされる(ステップ307)。再キ
ユーは、起動できなかったI/Oの起動要求をキユーの最
後部に移し、次にチェインされていたI/Oの起動要求を
先頭に移すことにより行なわれる。
I/Oの起動が行われたとき、該サブチャネルブロックの
「チェイン中の次のサブチャネル番号」が、起動キユー
制御ブロックの「先頭のサブチャネル番号」エリアへ移
され(ステップ309)、キユーカウントは−1される
(ステップ310)。以上の動作により1つのI/O起動要求
に対するデキユーが終了する。再びデキユーするときに
は、又、Classが0のキユーからデキユーを開始するこ
とになる。
「チェイン中の次のサブチャネル番号」が、起動キユー
制御ブロックの「先頭のサブチャネル番号」エリアへ移
され(ステップ309)、キユーカウントは−1される
(ステップ310)。以上の動作により1つのI/O起動要求
に対するデキユーが終了する。再びデキユーするときに
は、又、Classが0のキユーからデキユーを開始するこ
とになる。
EDC23はCP21とは独立に動作するため、EDC23のデキユー
の際に、上位のI/O処理クラスにCP21がキユーを作るこ
とがある。しかし、本実施例のようにデキユーする際
は、常に最上位のI/O処理クラスから行なうので、起動
の優先順位が確立される。
の際に、上位のI/O処理クラスにCP21がキユーを作るこ
とがある。しかし、本実施例のようにデキユーする際
は、常に最上位のI/O処理クラスから行なうので、起動
の優先順位が確立される。
このように従来ではEDC23は単に複数のロジカルCUにつ
いてサイクリックに起動処理を行なっていたのに対し、
本発明ではSSCH命令で指定された処理クラスの優先順位
に従ってサブチャネルの起動処理をすることができるの
で、緊急度の高いI/O処理を優先的に実行でき、従来に
比べてチャネルサブシステムの処理効率を高めることが
できる。特に、I/O処理要求ごとに優先順位を変えるこ
とができるため、よりきめ細い優先処理が可能となる。
いてサイクリックに起動処理を行なっていたのに対し、
本発明ではSSCH命令で指定された処理クラスの優先順位
に従ってサブチャネルの起動処理をすることができるの
で、緊急度の高いI/O処理を優先的に実行でき、従来に
比べてチャネルサブシステムの処理効率を高めることが
できる。特に、I/O処理要求ごとに優先順位を変えるこ
とができるため、よりきめ細い優先処理が可能となる。
以上述べた処理は、I/O起動の優先処理を可能とするも
のであるが、次にI/O割込みに関して説明する。
のであるが、次にI/O割込みに関して説明する。
先に示した文献に開示された従来の電子計算機のI/O割
込み処理では、電子計算機のイニシャルプログラムロー
ド(IPL)の際において、サブチャネルに決められた
「割込みサブクラス」が設定される。この設定はサブチ
ャネルブロックのISC(14図参照)に書込まれることに
より行なわれる。I/O起動されたあるI/Oから、対応する
サブチャネルに関するI/O割込み要求が発生すると、あ
らかじめ、IPL時に決められた「割込みサブクラス」
(第14図のISC)に対応した割込みキユー制御ブロック
に割込みキユーが登録される。この操作はEDC13が行
う。ISCのフォーマットおよびその意味付けは、本発明
による「I/O処理クラス」と同様であるが、その効力
は、I/O割込みにおいてのみ働く。割込みキユー制御ブ
ロックのフォーマットおよびその操作方法は、前述した
起動キユーのそれと同様であるが、デキユーはCP11が行
なう点が異なる。又、あるサブチャネルが割込みキユー
に入っていると、それに対応するサブチャネルブロック
のIビットがセットされる。
込み処理では、電子計算機のイニシャルプログラムロー
ド(IPL)の際において、サブチャネルに決められた
「割込みサブクラス」が設定される。この設定はサブチ
ャネルブロックのISC(14図参照)に書込まれることに
より行なわれる。I/O起動されたあるI/Oから、対応する
サブチャネルに関するI/O割込み要求が発生すると、あ
らかじめ、IPL時に決められた「割込みサブクラス」
(第14図のISC)に対応した割込みキユー制御ブロック
に割込みキユーが登録される。この操作はEDC13が行
う。ISCのフォーマットおよびその意味付けは、本発明
による「I/O処理クラス」と同様であるが、その効力
は、I/O割込みにおいてのみ働く。割込みキユー制御ブ
ロックのフォーマットおよびその操作方法は、前述した
起動キユーのそれと同様であるが、デキユーはCP11が行
なう点が異なる。又、あるサブチャネルが割込みキユー
に入っていると、それに対応するサブチャネルブロック
のIビットがセットされる。
本発明では、I/O割込みのキユーは、「処理クラス」に
より制御される。「I/O処理クラス」は、サブチャネル
起動時に指定されたものであり、従来例のISCよりもよ
り動的に優先順位を指定することができる。
より制御される。「I/O処理クラス」は、サブチャネル
起動時に指定されたものであり、従来例のISCよりもよ
り動的に優先順位を指定することができる。
I/O割込みの動作は第9図および第10図に示されてい
る。
る。
I/O割込み要求が発生すると(ステップ401)、EDC23は
そのI/Oに対応するサブチャネルブロック(第3図)内
のI/O処理クラスを参照する(ステップ402)。このI/O
処理クラスはI/O起動時に指定されたものである。その
参照の際Iビットをセットしておく。EDC23は該参照し
たクラスに対応した割込みキユー制御ブロック117(第
8図)(MS20のHSAエリア202に設けられる。)を読出
し、I/O割込み要求をキユーイングする(ステップ40
3)。キユーイングのし方は、先のI/O起動要求のキユー
イングのし方と同じである。
そのI/Oに対応するサブチャネルブロック(第3図)内
のI/O処理クラスを参照する(ステップ402)。このI/O
処理クラスはI/O起動時に指定されたものである。その
参照の際Iビットをセットしておく。EDC23は該参照し
たクラスに対応した割込みキユー制御ブロック117(第
8図)(MS20のHSAエリア202に設けられる。)を読出
し、I/O割込み要求をキユーイングする(ステップ40
3)。キユーイングのし方は、先のI/O起動要求のキユー
イングのし方と同じである。
I/O処理クラスに応じてキユーイングされたI/O割込み要
求はCP21によりデキユーされる。CP21はまず一番優先順
位の高いI/O処理クラス0の割込みキユー制御ブロック
(第8図)を読出し(ステップ501)、キユーの有無を
キユーカウントの値で判定する(ステップ502)。その
値がオール“0"でなければ「先頭のサブチャネル番号」
で示される番号のサブチャネルブロックを読出す(ステ
ップ504)。CP11は読出されたサブチャネルブロックの
情報に基き、割込み処理を行なうことになる(ステップ
505)。
求はCP21によりデキユーされる。CP21はまず一番優先順
位の高いI/O処理クラス0の割込みキユー制御ブロック
(第8図)を読出し(ステップ501)、キユーの有無を
キユーカウントの値で判定する(ステップ502)。その
値がオール“0"でなければ「先頭のサブチャネル番号」
で示される番号のサブチャネルブロックを読出す(ステ
ップ504)。CP11は読出されたサブチャネルブロックの
情報に基き、割込み処理を行なうことになる(ステップ
505)。
キユーカウントがオール“0"の場合は、次に優先順位の
高いI/O処理クラスについて処理を行なう(ステップ50
3)。
高いI/O処理クラスについて処理を行なう(ステップ50
3)。
最後にI/O処理クラスの設定法について説明する。
仮想記憶方式の電子計算機システムにおいてI/Oの一つ
がディスク装置で、ページング用のデータセットとユー
ザのデータセットとが混在して記憶されている場合を考
える。制御プログラムによって予めそのディスク装置に
対して2つの制御ブロック(第1図において図示されて
いない)が作成される。制御ブロックの内容は、第2図
に示される動作要求ブロック113と同じと考えてよい。
がディスク装置で、ページング用のデータセットとユー
ザのデータセットとが混在して記憶されている場合を考
える。制御プログラムによって予めそのディスク装置に
対して2つの制御ブロック(第1図において図示されて
いない)が作成される。制御ブロックの内容は、第2図
に示される動作要求ブロック113と同じと考えてよい。
一方の制御ブロックはページング用で、I/O処理クラス
が0にセットされ、他方はユーザ用でI/O処理クラスが
1にセットされている。
が0にセットされ、他方はユーザ用でI/O処理クラスが
1にセットされている。
制御プログラムは一般のユーザプログラムの実行を管理
しているが、ユーザプログラムの実行の際アドレス変換
例外(仮想記憶方式において、メインストレージ上にな
いアドレスをアクセスした時に生じる。)が発生した場
合、ページング用の制御ブロックを動作要求ブロック11
3(第2図)へ転送し、SSCH命令を発行する。又、ユー
ザプログラムが、ユーザのデータセットを要求する場
合、制御プログラムはユーザ用の制御ブロックを動作要
求ブロック113(第2図)へ転送し、SSCH命令を発行す
る。
しているが、ユーザプログラムの実行の際アドレス変換
例外(仮想記憶方式において、メインストレージ上にな
いアドレスをアクセスした時に生じる。)が発生した場
合、ページング用の制御ブロックを動作要求ブロック11
3(第2図)へ転送し、SSCH命令を発行する。又、ユー
ザプログラムが、ユーザのデータセットを要求する場
合、制御プログラムはユーザ用の制御ブロックを動作要
求ブロック113(第2図)へ転送し、SSCH命令を発行す
る。
後の処理は前述したCP21のハードウエアがキユーを構築
し、EDC23がデキユーする。
し、EDC23がデキユーする。
その結果、ページ用のデータセットはユーザ用のデータ
セットに比べて高い優先順位でディスク装置から読出さ
れることになる。
セットに比べて高い優先順位でディスク装置から読出さ
れることになる。
このようにI/O処理クラスは制御プログラムにより、I/O
起動要求の性質に応じて設けられた制御ブロック内に予
め設定することができる。
起動要求の性質に応じて設けられた制御ブロック内に予
め設定することができる。
なお、本発明は、ある1時点では1つのアクセスのみ処
理するシステムに適用されるものであり、同一ディスク
装置に対して、同時にページング用とユーザ用のアクセ
スを許容した発明ではない。
理するシステムに適用されるものであり、同一ディスク
装置に対して、同時にページング用とユーザ用のアクセ
スを許容した発明ではない。
逆に、同時にアクセスが起きたとき、後からのアクセス
要求は、サブチャネルビジーあるいはインタラプシヨン
ペンディングで実行されない。このことは、前掲の「ア
イビーエムシステム/370エクステェンディド アーキテ
クチャ プリンスプルズ オブ オペレーシヨン」
(「IBM System/370 Extended Architecture Principl
es of Operation」)(SA22-7085-0)でも明示されてお
り、本発明もこの点においては変わりはない。
要求は、サブチャネルビジーあるいはインタラプシヨン
ペンディングで実行されない。このことは、前掲の「ア
イビーエムシステム/370エクステェンディド アーキテ
クチャ プリンスプルズ オブ オペレーシヨン」
(「IBM System/370 Extended Architecture Principl
es of Operation」)(SA22-7085-0)でも明示されてお
り、本発明もこの点においては変わりはない。
I/O処理クラスの他の設定法としては、例えばユーザ毎
に制御ブロックを設けてクラスを設定する法が考えられ
る。すなわち、電子計算機システムのユーザのうち緊急
を有する仕事に従事するユーザに対しては優先度の高い
I/O処理クラスを与える。
に制御ブロックを設けてクラスを設定する法が考えられ
る。すなわち、電子計算機システムのユーザのうち緊急
を有する仕事に従事するユーザに対しては優先度の高い
I/O処理クラスを与える。
他の設定法としては、ディスク装置に格納されるプログ
ラム毎に設定することも考えられる。即ち、障害処理用
のプログラムに対しては高い優先度のI/O処理クラスを
もつ制御ブロックを設けておき、障害発生の際はその制
御ブロックに基づき、ディスク装置を起動する。
ラム毎に設定することも考えられる。即ち、障害処理用
のプログラムに対しては高い優先度のI/O処理クラスを
もつ制御ブロックを設けておき、障害発生の際はその制
御ブロックに基づき、ディスク装置を起動する。
他にもI/O処理クラスの設定については種々考えられ
る。
る。
[発明の効果] 以上述べたように、本発明によれば主記憶装置内の各入
出力装置に対応した記憶領域に、各入出力装置の起動の
優先順位を示すクラスを起動要求が発生する度に設定す
ることができ、かつクラス別に起動キューを設定し優先
順位に応じたデキューを行なうので、起動要求の生じた
要因に応じて入出力装置の起動を起動要求発生毎にダイ
ナミックに指定できるという効果を有する。
出力装置に対応した記憶領域に、各入出力装置の起動の
優先順位を示すクラスを起動要求が発生する度に設定す
ることができ、かつクラス別に起動キューを設定し優先
順位に応じたデキューを行なうので、起動要求の生じた
要因に応じて入出力装置の起動を起動要求発生毎にダイ
ナミックに指定できるという効果を有する。
第1図は本発明のシステム全体構成図、第2図は本発明
による動作要求ブロックのフォーマットを示す図、第3
図は本発明によるサブチャネルブロックのフォーマット
を示す図、第4図は本発明により起動キユー制御ブロッ
クのフォーマットを示す図、第5図は本発明によるロジ
カルCU制御ブロックのフォーマットを示す図である。第
6図はCP21の動作フローを示す図、第7図はEDC23の動
作フローを示す図、第8図は本発明による割込キユー制
御ブロックのフォーマットを示す図である。第9図はED
C23の動作フローを示す図である。第10図はCP21の動作
フローを示す図である。第11図は従来例のシステムの全
体構成図、第12図はメインストレージ上におかれた動作
要求ブロックのフォーマットを示す図、第13図はメイン
ストレージ上におかれたロジカルCU制御ブロックのフォ
ーマットを示す図、第14図はメインストレージ上におか
れたサブチャネルブロックのフォーマットを示す図、第
15図はメインストレージ上での従来の制御ブロックチェ
インの様子を示す図である。 20……主記憶装置、21……CPU、23……外部データ制御
装置、113……動作要求ブロック、115……サブチャネル
ブロック、116……起動キユー制御ブロック、114……ロ
ジカルCUブロック、117……割込みキユー制御ブロッ
ク。
による動作要求ブロックのフォーマットを示す図、第3
図は本発明によるサブチャネルブロックのフォーマット
を示す図、第4図は本発明により起動キユー制御ブロッ
クのフォーマットを示す図、第5図は本発明によるロジ
カルCU制御ブロックのフォーマットを示す図である。第
6図はCP21の動作フローを示す図、第7図はEDC23の動
作フローを示す図、第8図は本発明による割込キユー制
御ブロックのフォーマットを示す図である。第9図はED
C23の動作フローを示す図である。第10図はCP21の動作
フローを示す図である。第11図は従来例のシステムの全
体構成図、第12図はメインストレージ上におかれた動作
要求ブロックのフォーマットを示す図、第13図はメイン
ストレージ上におかれたロジカルCU制御ブロックのフォ
ーマットを示す図、第14図はメインストレージ上におか
れたサブチャネルブロックのフォーマットを示す図、第
15図はメインストレージ上での従来の制御ブロックチェ
インの様子を示す図である。 20……主記憶装置、21……CPU、23……外部データ制御
装置、113……動作要求ブロック、115……サブチャネル
ブロック、116……起動キユー制御ブロック、114……ロ
ジカルCUブロック、117……割込みキユー制御ブロッ
ク。
Claims (8)
- 【請求項1】入出力装置の制御情報を表わすサブチャネ
ルと入出力装置の起動要求のキューイングおよび割込み
要求のキューイングを示すキュー制御情報とを記憶する
主記憶装置を具備してなるデータ処理システムの入出力
制御システムにおいて、 前記データ処理システムの中央処理装置は、入出力装置
起動命令の実行時、起動および割込みの処理要求優先順
位を決めるクラスを前記主記憶装置上のサブチャネルに
動的に設定し、さらに入出力装置の起動および割込みを
処理するための該クラスに応じた前記キュー制御情報を
前記主記憶装置上に構築することを特徴とする入出力制
御システム。 - 【請求項2】前記入出力装置の起動を行なった際に、そ
の入出力装置が属していた起動キューから該入出力装置
を表わす情報を削除することを特徴とする特許請求の範
囲第1項記載の入出力制御システム。 - 【請求項3】入出力装置の制御情報を表わすサブチャネ
ルと入出力装置の起動要求のキューイングおよび割込み
要求のキューイングを示すキュー制御情報とを記憶する
主記憶装置を具備してなるデータ処理システムの入出力
制御システムにおいて、 前記主記憶装置は入出力装置の夫々に対応し各入出力装
置の制御情報を表わすサブチャネルを格納する第1の記
憶領域と、入出力装置の起動処理要求の優先順位を決め
るクラス毎に起動キューイングを示すキュー制御情報を
記憶する第2の記憶領域を有し、 前記データ処理システムの中央処理装置は、ある入出力
装置を起動する命令が発行された場合に、該入出力装置
の制御情報と該入出力装置の起動および割込みの優先順
位を表わしたクラスとを該入出力装置に対応した前記第
1の記憶領域に設定し、前記第2の記憶領域を更新して
該入出力装置を表わす情報を前記クラスに対応した起動
キューに登録し、 前記各入出力装置と主記憶装置に接続され、優先順位の
高い前記起動キューから入出力装置を表わす情報を読み
出し、該情報に対応する入出力装置の制御情報を前記主
記憶装置から読み出し、該読み出した制御情報に基づき
該入出力装置を起動する外部データ制御装置を備えるこ
とを特徴とする入出力制御システム。 - 【請求項4】前記主記憶装置の第2の記憶領域は、前記
キュー制御情報として、前記各クラスに対応した夫々の
キューに登録されている入出力装置を表わす情報の個数
を記憶することを特徴とする特許請求の範囲第3項記載
の入出力制御システム。 - 【請求項5】前記外部データ制御装置は、入出力装置の
起動を行なった後、再び優先順位の高い起動キューから
処理を開始することを特徴とする特許請求の範囲第3項
記載の入出力制御システム。 - 【請求項6】前記主記憶装置は、さらに入出力装置から
の割込み処理要求の優先順位を決めるクラス毎に割込み
キューイングを示すキュー制御情報を記憶する第3の記
憶領域を有し、 前記外部データ制御装置は起動状態にある入出力装置か
ら割込み処理要求が発行された場合に、前記第1の記憶
領域に設定されたクラスを参照し、前記第3の記憶領域
を更新して該入出力装置を表わす情報を該クラスに対応
した割込みキューに登録し、 前記中央処理装置は優先順位の高い割込みキューから入
出力装置を表わす情報を読み出し、該入出力装置の割込
み処理を行なうことを特徴とする特許請求の範囲第3項
記載の入出力制御システム。 - 【請求項7】入出力装置の制御情報を表わすサブチャネ
ルと入出力装置の起動要求のキューイングおよび割込み
要求のキューイングを示すキュー制御情報とを記憶する
主記憶装置を具備してなるデータ処理システムの入出力
制御システムにおいて、 複数のチャネル装置が設けられ、該複数のチャネル装置
と該複数のチャネル装置に共通に接続された前記入出力
装置とからなる複数のロジカルコントロールユニットを
備え、 前記主記憶装置は入出力装置の夫々に対応し各入出力装
置の制御情報を表わすサブチャネルを格納する第1の記
憶領域と、入出力装置の起動処理要求の優先順位を決め
るクラス毎に起動キューイングを示すキュー制御情報を
記憶する第2の記憶領域と、入出力装置とチャネル装置
との接続状態を表わす情報を記憶する第4の記憶領域を
有し、 前記データ処理システムの中央処理装置は、ある入出力
装置を起動する命令が発行された場合に、該入出力装置
の制御情報と該入出力装置の起動および割込みの優先順
位を表わしたクラスとを該入出力装置に対応した前記第
1の記憶領域に設定し、前記第2の記憶領域を更新して
該入出力装置を表わす情報を前記クラスに対応した起動
キューに登録し、 前記各入出力装置と主記憶装置に接続され、優先順位の
高い前記起動キューから入出力装置を表わす情報を読み
出し、該情報に対応する入出力装置の制御情報および該
入出力装置のチャネル装置との接続状態を表わす情報を
前記主記憶装置から読み出し、該入出力装置に接続され
たチャネル装置のうち使用していないチャネル装置を選
択し、該選択したチャネル装置を介して該入出力装置を
該読み出した制御情報に基づいて起動する外部データ制
御装置を備えることを特徴とする入出力制御システム。 - 【請求項8】前記外部データ制御装置は、使用していな
いチャネル装置がない場合には、再び前記起動キューに
登録することを特徴とする特許請求の範囲第7項記載の
入出力制御システム。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP5702985 | 1985-03-20 | ||
| JP60-57029 | 1985-03-20 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS621053A JPS621053A (ja) | 1987-01-07 |
| JPH0750456B2 true JPH0750456B2 (ja) | 1995-05-31 |
Family
ID=13044008
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP61059101A Expired - Lifetime JPH0750456B2 (ja) | 1985-03-20 | 1986-03-19 | 入出力制御システム |
Country Status (6)
| Country | Link |
|---|---|
| US (1) | US4858108A (ja) |
| EP (1) | EP0199053B1 (ja) |
| JP (1) | JPH0750456B2 (ja) |
| KR (1) | KR940003324B1 (ja) |
| CN (1) | CN86102662A (ja) |
| DE (1) | DE3688759T2 (ja) |
Families Citing this family (36)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4926324A (en) * | 1985-02-28 | 1990-05-15 | Hitachi, Ltd. | I/O control system and method |
| US4872110A (en) * | 1987-09-03 | 1989-10-03 | Bull Hn Information Systems Inc. | Storage of input/output command timeout and acknowledge responses |
| FR2635390B1 (fr) * | 1988-08-12 | 1990-10-12 | Bull Sa | Unite centrale pour systeme de traitement de l'information |
| EP0375909B1 (en) * | 1988-12-30 | 1995-08-30 | International Business Machines Corporation | Multiple I/O channel |
| JPH03142504A (ja) * | 1989-10-30 | 1991-06-18 | Toshiba Corp | プログラマブルコントローラ |
| US5247671A (en) * | 1990-02-14 | 1993-09-21 | International Business Machines Corporation | Scalable schedules for serial communications controller in data processing systems |
| CA2037491C (en) * | 1990-03-02 | 1998-07-28 | Yuji Shibata | System bus control system in a multi-processor system |
| DE69129779T2 (de) * | 1990-09-28 | 1999-03-11 | Hewlett-Packard Co., Palo Alto, Calif. | Schalter zur gemeinsamen Benutzung eines Peripheriegeräts |
| US5644786A (en) * | 1990-11-08 | 1997-07-01 | At&T Global Information Solutions Company | Method for scheduling the execution of disk I/O operations |
| US5394542A (en) * | 1992-03-30 | 1995-02-28 | International Business Machines Corporation | Clearing data objects used to maintain state information for shared data at a local complex when at least one message path to the local complex cannot be recovered |
| US5444861A (en) * | 1992-06-01 | 1995-08-22 | United Technologies Corporation | System for downloading software |
| US5375223A (en) * | 1993-01-07 | 1994-12-20 | International Business Machines Corporation | Single register arbiter circuit |
| US5860022A (en) * | 1994-07-26 | 1999-01-12 | Hitachi, Ltd. | Computer system and method of issuing input/output commands therefrom |
| US6393455B1 (en) | 1997-03-28 | 2002-05-21 | International Business Machines Corp. | Workload management method to enhance shared resource access in a multisystem environment |
| US6157963A (en) * | 1998-03-24 | 2000-12-05 | Lsi Logic Corp. | System controller with plurality of memory queues for prioritized scheduling of I/O requests from priority assigned clients |
| US6434637B1 (en) * | 1998-12-31 | 2002-08-13 | Emc Corporation | Method and apparatus for balancing workloads among paths in a multi-path computer system based on the state of previous I/O operations |
| US6427180B1 (en) * | 1999-06-22 | 2002-07-30 | Visteon Global Technologies, Inc. | Queued port data controller for microprocessor-based engine control applications |
| US6427196B1 (en) * | 1999-08-31 | 2002-07-30 | Intel Corporation | SRAM controller for parallel processor architecture including address and command queue and arbiter |
| US6983350B1 (en) | 1999-08-31 | 2006-01-03 | Intel Corporation | SDRAM controller for parallel processor architecture |
| US6986137B1 (en) * | 1999-09-28 | 2006-01-10 | International Business Machines Corporation | Method, system and program products for managing logical processors of a computing environment |
| US6651125B2 (en) * | 1999-09-28 | 2003-11-18 | International Business Machines Corporation | Processing channel subsystem pending I/O work queues based on priorities |
| US6532509B1 (en) | 1999-12-22 | 2003-03-11 | Intel Corporation | Arbitrating command requests in a parallel multi-threaded processing system |
| US6694380B1 (en) | 1999-12-27 | 2004-02-17 | Intel Corporation | Mapping requests from a processing unit that uses memory-mapped input-output space |
| US7620702B1 (en) | 1999-12-28 | 2009-11-17 | Intel Corporation | Providing real-time control data for a network processor |
| US6661794B1 (en) | 1999-12-29 | 2003-12-09 | Intel Corporation | Method and apparatus for gigabit packet assignment for multithreaded packet processing |
| US6584522B1 (en) | 1999-12-30 | 2003-06-24 | Intel Corporation | Communication between processors |
| US6952824B1 (en) | 1999-12-30 | 2005-10-04 | Intel Corporation | Multi-threaded sequenced receive for fast network port stream of packets |
| US7480706B1 (en) | 1999-12-30 | 2009-01-20 | Intel Corporation | Multi-threaded round-robin receive for fast network port |
| DE10218646A1 (de) * | 2002-04-25 | 2003-11-13 | Infineon Technologies Ag | An einen Bus angeschlossene Einrichtung |
| US7471688B2 (en) | 2002-06-18 | 2008-12-30 | Intel Corporation | Scheduling system for transmission of cells to ATM virtual circuits and DSL ports |
| US7352769B2 (en) | 2002-09-12 | 2008-04-01 | Intel Corporation | Multiple calendar schedule reservation structure and method |
| US7433307B2 (en) | 2002-11-05 | 2008-10-07 | Intel Corporation | Flow control in a network environment |
| US7443836B2 (en) | 2003-06-16 | 2008-10-28 | Intel Corporation | Processing a data packet |
| CN100371896C (zh) * | 2005-08-22 | 2008-02-27 | 威盛电子股份有限公司 | 计算机系统及其开机方法 |
| CN106358042B (zh) * | 2015-07-17 | 2020-10-09 | 恩智浦美国有限公司 | 使用视频图像的帧间预测的并行解码器 |
| US20240143523A1 (en) * | 2022-10-27 | 2024-05-02 | Dell Products L.P. | Controlling threads across processors |
Family Cites Families (14)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3728682A (en) * | 1971-03-11 | 1973-04-17 | Rca Corp | Computer input-output chaining system |
| US4060849A (en) * | 1975-10-28 | 1977-11-29 | Compagnie Internationale Pour L'informatique Cii-Honeywell Bull | Data input and output controller |
| US4028668A (en) * | 1975-12-22 | 1977-06-07 | Honeywell Information Systems, Inc. | Apparatus for selectively addressing sections and locations in a device controller's memory |
| US4124888A (en) * | 1975-12-24 | 1978-11-07 | Computer Automation, Inc. | Peripheral-unit controller apparatus |
| US4093981A (en) * | 1976-01-28 | 1978-06-06 | Burroughs Corporation | Data communications preprocessor |
| US4246637A (en) * | 1978-06-26 | 1981-01-20 | International Business Machines Corporation | Data processor input/output controller |
| IT1100916B (it) * | 1978-11-06 | 1985-09-28 | Honeywell Inf Systems | Apparato per gestione di richieste di trasferimento dati in sistemi di elaborazione dati |
| US4271468A (en) * | 1979-11-06 | 1981-06-02 | International Business Machines Corp. | Multiprocessor mechanism for handling channel interrupts |
| US4328543A (en) * | 1980-03-25 | 1982-05-04 | Ibm Corporation | Control architecture for a communications controller |
| US4425615A (en) * | 1980-11-14 | 1984-01-10 | Sperry Corporation | Hierarchical memory system having cache/disk subsystem with command queues for plural disks |
| US4394734A (en) * | 1980-12-29 | 1983-07-19 | International Business Machines Corp. | Programmable peripheral processing controller |
| US4400773A (en) * | 1980-12-31 | 1983-08-23 | International Business Machines Corp. | Independent handling of I/O interrupt requests and associated status information transfers |
| US4423480A (en) * | 1981-03-06 | 1983-12-27 | International Business Machines Corporation | Buffered peripheral system with priority queue and preparation for signal transfer in overlapped operations |
| US4546430A (en) * | 1983-07-13 | 1985-10-08 | Sperry Corporation | Control unit busy queuing |
-
1986
- 1986-03-12 DE DE86103288T patent/DE3688759T2/de not_active Expired - Fee Related
- 1986-03-12 US US06/838,717 patent/US4858108A/en not_active Expired - Lifetime
- 1986-03-12 EP EP86103288A patent/EP0199053B1/en not_active Expired - Lifetime
- 1986-03-14 KR KR1019860001868A patent/KR940003324B1/ko not_active Expired - Fee Related
- 1986-03-19 JP JP61059101A patent/JPH0750456B2/ja not_active Expired - Lifetime
- 1986-03-20 CN CN198686102662A patent/CN86102662A/zh active Pending
Also Published As
| Publication number | Publication date |
|---|---|
| EP0199053A3 (en) | 1989-02-22 |
| DE3688759D1 (de) | 1993-09-02 |
| US4858108A (en) | 1989-08-15 |
| EP0199053B1 (en) | 1993-07-28 |
| JPS621053A (ja) | 1987-01-07 |
| DE3688759T2 (de) | 1994-01-05 |
| EP0199053A2 (en) | 1986-10-29 |
| KR860007594A (ko) | 1986-10-15 |
| KR940003324B1 (ko) | 1994-04-20 |
| CN86102662A (zh) | 1986-11-05 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR940003324B1 (ko) | 입출력 제어시스템 | |
| US5530897A (en) | System for dynamic association of a variable number of device addresses with input/output devices to allow increased concurrent requests for access to the input/output devices | |
| US4435752A (en) | Allocation of rotating memory device storage locations | |
| US4553202A (en) | User controlled dialog resource switching in a multi-tasking word processor | |
| CN114168271B (zh) | 一种任务调度方法、电子设备及存储介质 | |
| JP2003256221A (ja) | 並列プロセス実行方法、及びマルチプロセッサ型コンピュータ | |
| JPH08241263A (ja) | I/o要求処理計算機システム及び処理方法 | |
| JPH0566621B2 (ja) | ||
| JP2010044784A (ja) | システムにおける要求のスケジューリング | |
| US5392409A (en) | I/O execution method for a virtual machine system and system therefor | |
| JP3250861B2 (ja) | ディスク装置システム | |
| US5339449A (en) | System and method for reducing storage channels in disk systems | |
| Grzelakowski et al. | The 3B20D Processor & DMERT operating system: DMERT operating system | |
| JP2009015569A (ja) | デバイスへのアクセス制御方法および処理装置 | |
| JPS62290952A (ja) | 表示端末装置 | |
| CN116048774A (zh) | 内存分配方法、装置、终端设备及存储介质 | |
| CN112748883A (zh) | 一种io请求流水线处理设备、方法、系统及存储介质 | |
| JP2574349B2 (ja) | 時分割マルチタスク実行装置 | |
| JP2585905B2 (ja) | マルチタスク実行装置 | |
| JPH07325779A (ja) | 入出力制御装置 | |
| JP2941809B2 (ja) | 画像処理方法及びその装置 | |
| JP3585956B2 (ja) | 情報処理装置及びその方法 | |
| JPH0447357A (ja) | 仮想計算機システムの制御方式 | |
| JP2000215153A (ja) | Dmaデ―タ転送制御方法及び入出力処理装置 | |
| JP2000029729A (ja) | データ処理方法および装置、データ処理システム、情報記憶媒体 |