JP5076967B2 - 情報処理システム、情報処理システムの制御方法、および情報処理システムの制御プログラム - Google Patents

情報処理システム、情報処理システムの制御方法、および情報処理システムの制御プログラム Download PDF

Info

Publication number
JP5076967B2
JP5076967B2 JP2008045888A JP2008045888A JP5076967B2 JP 5076967 B2 JP5076967 B2 JP 5076967B2 JP 2008045888 A JP2008045888 A JP 2008045888A JP 2008045888 A JP2008045888 A JP 2008045888A JP 5076967 B2 JP5076967 B2 JP 5076967B2
Authority
JP
Japan
Prior art keywords
interrupt
channel device
arithmetic processing
channel
unit
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.)
Active
Application number
JP2008045888A
Other languages
English (en)
Other versions
JP2009205347A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2008045888A priority Critical patent/JP5076967B2/ja
Priority to EP09152576.6A priority patent/EP2096550B1/en
Priority to US12/370,977 priority patent/US8151028B2/en
Priority to KR1020090015371A priority patent/KR101056759B1/ko
Priority to CN2009101180903A priority patent/CN101520758B/zh
Publication of JP2009205347A publication Critical patent/JP2009205347A/ja
Application granted granted Critical
Publication of JP5076967B2 publication Critical patent/JP5076967B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/24Handling requests for interconnection or transfer for access to input/output bus using interrupt
    • G06F13/26Handling requests for interconnection or transfer for access to input/output bus using interrupt with priority control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/24Handling requests for interconnection or transfer for access to input/output bus using interrupt
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines

Landscapes

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

Description

本発明は、情報処理装置、情報処理装置に接続された入出力装置、情報処理装置と入出力装置間においてデータの転送を行うチャネル装置を有する情報処理システムに係わり、さらに、そのような情報処理システムにおける割込みの制御方法および制御プログラムに係わる。
従来、企業の基幹業務の処理は、メインフレームにより行われることが多かった。メインフレームは、しばしば、汎用コンピュータ、汎用機、大型汎用コンピュータ等と呼ばれ、一般に、様々なIO装置(入出力装置)が接続される。
メインフレームは、それぞれ独自の専用回路(ハードウェア)を備えることが多かった。たとえば、図9に示すように、メインフレーム100が備えるIOプロセッサ101は、専用の割込み制御回路102を備えている。ここで、IOプロセッサ101は、チャネル装置110を介して1または複数のIO装置との間でデータの送受信を制御する。チャネル装置110は、メインフレーム100とIO装置との間のデータ転送を制御する。IO装置は、例えば、RAID(Redundant Arrays of Inexpensive Disks又はRedundant Arrays of Independent Disks)を構成するストレージ装置である。そして、割込み制御回路102は、ハードウェア回路で構成されており、1または複数のチャネル装置110から割込みを受け付け、チャネル装置110に対して必要な指示を与える。
これに対して近年では、大規模なシステムであっても、汎用プロセッサを用いた汎用プラットフォーム上で実現しようとする動きが広まってきている。汎用プラットフォームとしては、UNIX(登録商標)、Linux又はWindows(登録商標)等をOSとして動作するサーバシステムの導入が進んでいる。これにより、開発コストの削減、開発期間の短縮、メンテナンスの容易さが図られている。
ところが、メインフレームを利用してきたユーザの多くは、汎用プラットフォームに移行する場合、従前の環境の維持を必要とする。例えば、メインフレーム100を汎用プラットフォーム200上でエミュレーションする際には、図9に示すように、メインフレーム100で行われていた割込み制御と同様の制御が行われる必要がある。この場合、汎用プラットフォーム200においてチャネルドライバ201を実装し、チャネル装置110からの割込みを受け付ける必要がある。
なお、関連する技術として、下記の特許文献1〜3が公知技術として開示されている。開示のシステムにおいて、CPUは、メインメモリとの間のバスを使用するが、チャネル装置からの割込み要求により、このバスの使用権を明け渡す。このため、DMAコントローラまたは割込みコントローラは、複数のチャネル装置からの要求を調停し、CPUがサービスを提供すべきチャネル装置を選択する。このとき、複数のチャネル装置からのサービス要求に対して優先制御を行う方法において、サービス要求が受け付けられたチャネル装置の優先順位が最も低く更新され、このチャネル装置の更新前の優先順位以下の優先順位を持っていたチャネル装置の優先順位が高く更新される。
又、開示の入出力チャネル制御方式では、中央処理装置が複数の入出力チャネル装置を内蔵して時分割に入出力動作を行う構成において、入出力チャネル装置およびサブチャネルに接続される入出力制御装置と入出力装置の入出力処理速度に応じて、中央処理装置が
これらの入出力チャネル装置と複数のサブチャネルを有する入出力チャネル装置の複数のサブチャネル群に対する入出力処理優先順位が機械語命令で設定される。そして、入出力システムの構成に応じて最適な優先順位のもとで所要効率の入出力処理動作が行われる。
さらに、開示の割込処理方式は、中央処理装置、主記憶装置、複数のチャネル装置がメモリバスを介して接続されており、主記憶装置上に割り当てられた特定番地を用いて複数のチャネル装置間の割込順位が定められ、この割込順位に従って各チャネルに設けられた割込み信号線を用いて中央処理装置に割込信号が送信される。
特開平4−363748号公報 特開昭54−14133号公報 特開昭61−233837号公報
本発明の課題は、従来のコンピュータシステムにおいて専用回路で実現されていたチャネル装置の割込み制御を、汎用プラットフォーム上でエミュレーションする構成および方法を提供することである。
本発明の情報処理システムは、演算処理装置と記憶装置を有する情報処理装置と、前記情報処理装置に接続された入出力装置と、前記情報処理装置と前記入出力装置間においてデータの転送を行うチャネル装置を有する。前記記憶装置は、前記チャネル装置を起動させるチャネル装置命令と前記チャネル装置の起動に使用する起動情報が保持される第1の領域と、前記チャネル装置の動作結果が保持される第2の領域を有する。前記チャネル装置は、前記チャネル装置の起動を制御する起動制御部と、前記チャネル装置から前記演算処理装置への割込を制御する割込制御部と、前記チャネル装置の制御を行うチャネル装置制御部を有する。
前記情報処理装置はさらに、前記演算処理装置に、前記記憶装置の前記第1の領域に前記チャネル装置起動命令と前記起動情報を書き込ませるステップと、前記起動制御部に対して、前記チャネル装置の起動を指示させるステップを実行させ、前記起動制御部に、前記記憶装置の前記第1の領域を読み込ませるとともに、前記チャネル装置制御部に通知させるステップを実行させ、前記チャネル装置に、前記記憶装置の前記第1の領域が有する前記チャネル装置命令を実行させるステップと、前記チャネル装置命令の実行によるチャネル装置の動作結果を、前記記憶装置の前記第2の領域に書き込ませるステップと、前記割込制御部を用いて、前記演算処理装置への割込を発生させるステップを実行させ、前記演算処理装置に、前記記憶装置の前記第2の領域を参照し、前チャネル装置の動作結果を読み込ませることにより、割込の処理を実行させるステップと、前記割込制御部への割込の処理の完了を通知させるステップを実行させるドライバ部を有する。
上記構成の情報処理システムにおいては、チャネル装置は、演算処理装置のドライバ部により起動される。この起動制御は、ドライバ部とチャネル装置との間で、記憶装置上の第1および第2の領域を介して情報を授受することにより実現される。
本発明の他の態様の情報処理システムは、演算処理装置と記憶装置を有する情報処理装置と、前記情報処理装置に接続された入出力装置と、前記情報処理装置と前記入出力装置間においてデータの転送を行うチャネル装置を有する。前記記憶装置は、前記チャネル装置の動作結果が保持される領域を有する。前記チャネル装置は、前記チャネル装置の起動を制御する起動制御部と、前記チャネル装置から前記演算処理装置への割込を制御する割込制御部と、前記チャネル装置の制御を行うチャネル装置制御部を有する。
前記情報処理装置はさらに、前記チャネル装置に、前記記憶装置の前記領域に第1の割込の要求を書き込ませるステップと、前記割込制御部を用いて、前記演算処理装置への第1の割込を発生させるステップを実行させ、前記演算処理装置に、前記演算処理装置が前記第1の割込の発生を検出した場合に、前記領域を読み込ませ、前記第1の割込の要求を参照させるステップと、前記第1の割込の要求よりも優先して処理すべき他の処理が存在しないため、前記第1の割込の要求に対して、前記チャネル装置による第1の割込の処理が許可される場合には、前記割込制御部を用いて前記第1の割込の処理を実行させるとともに、前記第1の割込の要求よりも優先して処理すべき他の処理が存在するため、前記第1の割込の要求に対して、前記チャネル装置による第1の割込の処理が許可されない場合には、前記演算処理装置が前記他の処理を実行後に、前記割込制御部を用いて前記第1の割込の処理を実行させるステップを実行させるドライバ部を有する。
上記他の態様の情報処理システムにおいては、チャネル装置は、演算処理装置のドライバ部の許可を待って処理を実行する。すなわち、チャネル装置は、ドライバ部の許可無しで自発的な処理を実行することはできない。また、この優先制御は、ドライバ部とチャネル装置との間で、記憶装置上の上記領域を介して情報を授受することにより実現される。
上記他の態様の情報処理システムにおいて、前記ドライバ部はさらに、前記チャネル装置に、前記第1の割込の要求に対する前記第1の割込の処理を実行させるステップと、前記第1の割込の処理の結果を前記領域に書き込ませるステップと、前記割込制御部を用いて、前記演算処理装置への第2の割込を発生させるステップを実行させ、前記演算処理装置に、前記演算処理装置が前記第2の割込の発生を検出した場合に、前記領域を読み込ませるとともに、前記第1の割込の処理の結果を参照させるステップと、前記割込制御部への第2の割込の処理の完了を通知させるステップを実行させるようにしてもよい。
開示のシステムによれば、専用回路で実現されていたチャネル装置の割込み制御を、汎用プラットフォーム上でエミュレーションすることができる。
図1は、本発明の実施形態に係る情報処理システムの構成を示す図である。図1において、情報処理システム1は、システムボード2(#0〜#7)、IOユニット3(#0〜#7)、システムインターコネクト4、IO装置5(5a〜5n)を備える。なお、システムボード2およびIOユニット3の個数は、それぞれ、特に限定されるものではない。また、システムボード2およびIOユニット3の個数は、互いに同じであってもよいし、互いに異なっていてもよい。
システムボード2は、それぞれ、CPU21およびメモリ22を備える。図1に示す例では、システムボード2(#0)は、4個のCPU21を備えている。また、メモリ22は、複数のCPU21により共用される。ただし、各CPU21に対してそれぞれ互いに独立したメモリ22を設けるようにしてもよい。
各CPU21は、それぞれ、IOユニット3との接続を制御する処理を行うドライバ23を有している。各ドライバ23は、例えば、メモリ22に格納されているドライバプログラムを実行することに実現される。
IOユニット3は、それぞれ、情報処理システム1の入出力装置である。各IOユニット3は、それぞれ、システムインターコネクト4に接続されるPCIバスを備える。このPCIバスには、例えば、ハードディスクドライブ31、チャネル装置32、LANポー
ト、CD−ROMまたはDVD用のドライブ装置等の入出力ユニットが接続されている。図1に示す例では、IOユニット3(#0)には、4個のハードディスクドライブ31、および4個のチャネル装置32が搭載されている。チャネル装置32は、例えばカード形状のインタフェースデバイスであり、IO装置5が接続される。なお、IOユニット3(#0〜#7)の構成は、互いに同じ構成であってもよいし、互いに異なる構成であってもよい。すなわち、IOユニット3(#1〜#7)は、必ずしもハードディスクドライブ31、チャネル装置32、LANポート等を備えている必要はない。
システムインターコネクト4は、例えばチップセット等により構成され、システムボード2(#0〜#7)とIOユニット3(#0〜#7)との間を接続する。なお、システムインターコネクト4は、二重化構成等、冗長的に構成されるようにしてもよい。IO装置5a〜5nは、例えばRAIDを構成するストレージ装置であり、チャネル装置32に接続される。
図2は、図1に示す情報処理システム1を簡略化して示した概略図である。図2において、CPU21およびメモリ22は、図1に示すシステムボード2(#0〜#7)の中の任意の1つに設けられる。システム制御部40は、図2に示すシステムインターコネクト4を含んで構成され、CPU21、メモリ22、チャネル装置32a〜32cを相互に接続する。なお、CPU21は、図2においては、システム制御部40を介してメモリ22にアクセスするが、システム制御部40を介することなくメモリ22にアクセスするようにしてもよい。
チャネル装置32a〜32cは、CPU21およびメモリ22と、IO装置5a〜5cとの間のデータ転送を制御する。なお、チャネル装置32a〜32cは、必ずしも1台のIOユニット3内に搭載される必要はなく、互いに異なるIOユニット3に搭載されてもよい。また、チャネル装置32a〜32cとIO装置5a〜5cとの間は、1対1に接続される必要はなく、「1対多」あるいは「多対1」で接続されるようにしてもよい。
上記構成の情報処理システム1において、ドライバ23は、チャネル装置32a〜32cを起動することができる。例えば、IO装置5aにデータを送信する際には、トライバ23は、チャネル装置32aを起動し、チャネル装置32aにデータ転送コマンドを実行させる。
また、CPU21は、ドライバ23を用いて、チャネル間の調停を行うことができる。すなわち、チャネル装置32a〜32cは、対応するIO装置5a〜5cを動作させるときは、CPU21に対して優先権を要求する。このとき、ある1つのチャネル装置(例えば、32a)のみが優先権を要求した場合には、チャネル装置32aに対して優先権が与えられる。これにより、チャネル装置32aは、対応するIO装置5aのデータ転送に係わる動作を開始する。一方、複数のチャネル装置(例えば、32a、32b)から優先権が要求された場合には、ドライバ23は、所定のアルゴリズムに従って調停を行い、チャネル装置間の優先順位を決定する。この場合、例えば、調停によりチャネル装置32aに対して優先権が与えられるものとすると、チャネル装置32bは、対応するIO装置5bのデータ転送に係わる動作を開始することができない。すなわち、チャネル装置32bは、ドライバ23からの指示を待つことになる。そして、ドライバ23は、チャネル装置32bによるデータ転送が終了すると、チャネル装置32aに対して優先権を与える。なお、チャネル間の調停は、ドライバ23により実行されてもよいし、ドライバ23が上位のアプリケーションと連携しながら行うようにしてもよい。
このように、実施形態の情報処理システム1においては、チャネル装置32は、ドライバ23の指示に応じて、或いはドライバ23からの許可を得た後に、IO制御動作を開始
する。すなわち、チャネル装置32は、ドライバ23からの指示または許可なしではIO制御動作を開始しない。
図3は、実施形態の情報処理システム1において割込み制御に係わる要素を示す図である。なお、図3において、チャネル装置32は、図1または図2に示す複数のチャネル装置の任意の1つに相当する。
CPU21は、上述したように、ドライバ23を有する。ドライバ23は、割込み制御部24を含んで構成される。割込み制御部24は、チャネル装置32からの割込みを受け付け、その割込みに応じた処理を実行する。
メモリ22は、特に限定されるものではないが、例えば半導体メモリであり、CPU21の主記憶として使用される。メモリ22には、COB(Channel Operation Buffer:チャネル操作バッファ)領域51、およびCIB(Channel Interruption Buffer:チャネル割込バッファ)領域52が設けられる。COB領域51およびCIB領域52は、それぞれ、ドライバ23により、各チャネル装置に対して確保される。すなわち、ドライバ23は、例えば、情報処理装置1に新たなチャネル装置32が接続されると、その新たなチャネル装置に対応するCOB領域51およびCIB領域52を、メモリ22内に確保する。
COB領域51は、ドライバ23からチャネル装置32に対して動作内容を指示するために使用される。この実施例では、COB領域51は、チャネル装置32を起動させるためのチャネル装置命令およびチャネル装置32を起動するために使用する起動情報を保持する。また、CIB領域52は、チャネル装置32からドライバ23に制御情報を通知するために使用される。この実施例では、CIB領域52には、チャネル装置32の動作結果を表す情報、およびチャネル装置32からCPU21に対する要求を表す情報などが書き込まれる。
チャネル装置32は、起動制御部61、割込み制御部62、チャネル装置制御部63、PCIバス制御部64、IO制御部65を備える。なお、これらのユニット61〜65は、ハードウェアで実現されてもよいし、ハードウェアおよび(ファームウェアを含む)ソフトウェアの組合せにより実現されてもよい。
起動制御部61は、ドライバ23からの指示に従って、チャネル装置32を起動する。この実施例では、起動制御部61は、レジスタを備え、チャネル装置32によりそのレジスタに所定の値が書き込まれると、メモリ22のCOB領域51に格納されている情報を読み出してチャネル装置制御部63に渡す。これによって、チャネル装置32は起動される。
割込み制御部62は、チャネル装置32からCPU21への割込みを制御する。この実施例では、割込み制御部62は、チャネル装置32の動作(例えば、データ転送処理など)が終了したときに、CPU21へ割込み信号を送信する。また、割込み制御部62は、優先権を要求する際にもCPU21へ割込み信号を送信する。なお、CPU21の割込み制御部24は、チャネル装置32から割込み受けると、そのチャネル装置32に対応するCIB領域52に書込まれている情報を読み取る。これにより、割込みに対応する処理が実行される。
チャネル装置制御部63は、対応するIO装置5a〜5nに係るデータ転送のために、チャネル装置32の動作を制御する。PCIバス制御部64は、チャネル装置制御部63の制御に従って、CPU21およびメモリ22とデータ転送するためにPCIバスを制御
する。IO制御部65は、チャネル装置制御部63の制御に従って、対応するIO装置5a〜5nとのデータ転送を制御する。
図4は、ドライバ23からチャネル装置32を起動する際の手順を示すフローチャートである。なお、このフローチャートの処理は、ドライバ23により開始される。ドライバ23は、例えば、アプリケーションからの指示に応じて、このフローチャートの処理を開始する。
ステップS1では、ドライバ23は、起動すべきチャネル装置32に対応するCOB領域51に、起動情報を書き込む。起動情報は、チャネル装置32の動作に必要な情報であって、例えば、チャネル装置32にデータ転送を実行させる場合には、ポインタ、先頭アドレス、データサイズ、Last Byte Countである。ポインタは、チャネル装置32が実行すべき命令を指し示す。先頭アドレスは、転送すべきデータを格納する領域の先頭アドレスである。データサイズは、転送すべきデータのサイズを表す。Last Byte Countは、チェインデータを転送する場合において、最後のチェインデータのバイト計数情報のバイトカウントを表す。なお、ポインタの代わりに、COB領域51に命令コード自体を書き込むようにしてもよい。
ステップS2では、ドライバ23は、起動すべきチャネル装置32の起動制御部61に対して、起動を指示する。起動指示は、この実施例では、起動制御部61が備えるレジスタに、「チャネル装置の起動」を表す所定の値を書き込むことにより実現される。
ステップS3では、起動指示を受けたチャネル装置32の起動制御部61は、当該チャネル装置32に対応するCOB領域51に格納されている情報を読み込む。ここで、このCOB領域51には、ステップS1において、起動情報が書き込まれている。すなわち、起動制御部61は、ドライバ23により書き込まれた起動情報を取得する。そして、起動制御部61は、取得した起動情報をチャネル装置制御部63に渡す。
ステップS4では、チャネル装置32は、COB領域51から取得した起動情報に対応する処理を実行する。ここで、起動情報として、データ転送命令を指し示すポインタ、転送データの先頭アドレス、データサイズが格納されているものとする。そうすると、チャネル装置32は、そのポインタが指し示す命令を実行する。すなわち、チャネル装置32は、先頭アドレスにより指定されるアドレスから、データサイズにより指定されるサイズのデータを取得し、データ転送命令に従ってそのデータを転送する。
ステップS5では、チャネル装置32は、ステップS4に係る処理の動作結果を、当該チャネル装置32に対応するCIB領域52に書き込む。ここで、ステップS4においてデータ転送を実行したものとし、そのデータ転送が正常に終了した場合には、動作結果として「正常終了」を表す終了コードがCIB領域52に書き込まれる。一方、データ転送を正常に実行できなかった場合には、エラーの要因を表すエラーコードが書き込まれる。また、データ転送の途中でその転送処理がキャンセルされた場合には、最後の命令で転送されたデータの転送サイズをCIB領域52に書き込むようにしてもよい。
ステップS6では、チャネル装置32の割込み制御部62は、CPU21に割込みを行う。なお、割込み方法は、特に限定されるものではない。すなわち、例えば、CPU21がチャネル装置ごとに割込み端子を備えている場合には、対応する割込み端子の論理値を変更することにより割込みが実現される。或いは、割込みを行うチャネル装置を識別する情報をCPU21に送信することで割込みを実現するようにしてもよい。
ステップS7では、CPU21のドライバ23は、チャネル装置32からの割込みを検
出すると、そのチャネル装置32に対応するCIB領域52を参照する。ここで、このCIB領域52には、ステップS5において、チャネル装置32の動作結果が書き込まれている。したがって、ドライバ23は、CIB領域52を参照することにより、チャネル装置32の動作結果を認識することができる。すなわち、CPU21は、ステップS1で生成した起動情報に対応する処理の実行結果を知ることができる。
ステップS8では、ドライバ23は、割込みを発行したチャネル装置32に対して、割込み処理が完了したことを通知する。この通知は、例えば、割込み制御部62が備えるレジスタに、「完了」を表す所定の値を書き込むことにより実現される。
このように、実施形態の情報処理システム1においては、チャネル装置32は、CPU21のドライバ23により起動される。そして、この起動制御は、ドライバ23とチャネル装置32との間で、メモリ22上のCOB領域51およびCIB領域52を介して情報を授受することにより実現される。また、CPU21への割込みは、そのCPU21にCIB領域52を参照させるためのトリガとしての役割を持っている。
なお、ドライバ23は、ステップS1〜S2、S7〜S8の処理をCPU21に実行させる。また、ドライバ23は、ステップS3〜S6の処理をチャネル装置32に実行させる。
図5は、チャネル装置32が優先権を要求した際の手順を示すフローチャートである。なお、優先権の要求は、この実施例では、例えば、チャネル装置32が所望の動作を実行するためにコンピュータ資源を予約するための要求に相当する。
ステップS11では、チャネル装置32は、優先権の要求を表す情報を、当該チャネル装置32に対応するCIB領域52に書き込む。即ち、チャネル装置32は、例えば、IO装置5からデータを読み出して他の装置へ転送するとき、或いはIO装置5にデータを書き込むときには、必要なコンピュータ資源を予約するために、CPU21に対して優先権を要求する。
ステップS12では、チャネル装置32の割込み制御部62は、CPU21に割込みを行う。なお、この割込みは、基本的に、図4に示すステップS6の割込みと同様である。
ステップS13では、ステップS7と同様に、CPU21のドライバ23は、チャネル装置23からの割込みを検出すると、そのチャネル装置23に対応するCIB領域52を参照する。ただし、ここでは、CIB領域52には、ステップS11において、チャネル装置32によって優先権の要求を表す情報が書き込まれている。したがって、ドライバ23は、CIB領域52を参照することにより、チャネル装置32が優先権を要求していることを認識する。
ステップS14では、ドライバ23は、ステップS13で認識した優先権の要求を許可するか否かを判断する。ここで、CPU21は、アプリケーションから要求された処理を優先的に実行することがある。この場合、ドライバ23は、そのアプリケーションから要求された処理を終了するまで、チャネル装置32からの要求を許可しない。また、CPU21は、複数のチャネル装置32から優先権の要求を受け取ることがある。このとき、ドライバ23は、あるチャネル装置(例えば、チャネル装置32a)から優先権の要求を受けたときに、他のチャネル装置(例えば、チャネル装置32b)に優先権を与えていた場合には、チャネル装置32bの処理が終了するまで、チャネル装置32aからの要求を許可しない。このように、ドライバ23は、情報処理システム1の動作状態に応じて、優先権の要求を許可するか否かを判断する。そして、要求を許可する場合には、ステップS1
5へ進む。
ステップS15では、ドライバ23は、ステップS11において優先権を要求したチャネル装置32に対して、割込み処理の開始を指示する。この指示は、例えば、割込み制御部62が備えるレジスタに、「開始」を表す所定の値を書き込む(Acceptビットを設定する)ことにより実現される。
ステップS16では、チャネル装置32は、割込み制御部62がドライバ23からの指示を検出すると、優先権の要求が許可されたものと判断し、所望の動作を実行する。ここでは、例えば、対応するIO装置5からの非同期割込みを契機とするデータ転送が実行される。
ステップS17〜S20は、基本的に、図4に示すステップS5〜S8と同じである。すなわち、ステップS17では、チャネル装置32は、チャネル装置32の処理結果をCIB領域52に書き込む。ステップS18では、割込み制御部62は、CPU21に割込みを行う。ステップS19では、ドライバ23は、チャネル装置32からの割込みを検出すると、そのチャネル装置32に対応するCIB領域52を参照する。すなわち、CPU21は、ステップS11で生成された優先権の要求に対応する処理の実行結果を知ることができる。そして、ステップS20では、ドライバ23は、割込みを発行したチャネル装置32に対して、割込み処理が完了したことを通知する。
ステップS11で生成された優先権の要求を許可しないときは(ステップS14:No)、ステップS21に進む。ステップS21では、ドライバ23は、ステップS11で生成された要求よりも優先順位の高い処理を実行する。なお、ドライバ23は、ステップS21で実行する優先順位の高い処理が終了したときに、ステップS15に進むようにしてもよい。すなわち、ドライバ23は、チャネル装置32による割込の処理を許可しない場合には、図5に示すように、CPU21が優先順位の高い他の処理を実行した後に、そのチャネル装置32による割込の処理を実行させるようにしてもよい。
このように、実施形態の情報処理システム1においては、チャネル装置32は、CPU21のドライバ23の許可を待って所望の処理を実行する。換言すれば、チャネル装置32は、ドライバ23の許可無しで自発的な処理を実行することはできない。そして、この優先制御は、ドライバ23とチャネル装置32との間で、メモリ22上のCIB領域52を介して情報を授受することにより実現される。また、CPU21への割込みは、図4に示す手順と同様に、そのCPU21にCIB領域52を参照させるためのトリガとしての役割を持っている。
なお、ドライバ23は、ステップS13〜S15、S19〜S21の処理をCPU21に実行させる。また、ドライバ23は、ステップS11〜S12、S16〜S18の処理をチャネル装置32に実行させる。
図6は、優先権が許可されないときの手順を示すフローチャートである。このフローチャートの処理は、この実施例では、チャネル装置32により実行される。
ステップS31およびS32は、図5に示すステップS11およびS12に相当する。すなわち、チャネル装置32は、CIB領域52を利用してドライバ23に対して優先権を要求し、さらにCPU21に割込みを行う。
ステップS33では、割込み制御部62は、タイマを起動する。すなわち、優先権を要求した時点(あるいは、CPU21に割込みを行った時点)からの経過時間をモニタする
。ステップS34〜S35では、割込み制御部62は、ドライバ23からの応答を待ち受ける。そして、所定時間内にドライバ23からの応答(図5に示すステップS15の開始指示)を検出すると、以降、チャネル装置32は、図5に示すステップS16〜S18の処理を実行する。
所定時間内にドライバ23からの応答が検出されずにタイマが満了すると、ステップS36において、割込み制御部62は、タイムアウトの発生をチャネル装置制御部63に通知する。そうすると、チャネル装置32は、ステップS31〜S32で要求した処理を中止する。さらに、ステップS37では、チャネル装置32は、優先権に獲得に失敗したことを表すエラー報告を行う。エラーは、例えば、対応するIO装置5に(および、必要に応じてCPU21にも)報告される。
なお、図5〜図6に示す手順では、チャネル装置32に優先権を与えないときに、ドライバ23からそのチャネル装置32に対して何も通知が行われないが、ドライバ23からチャネル装置32に対して優先権を与えない旨を明示的に通知するようにしてもよい。すなわち、例えば、ドライバ23は、ステップS12の割込みを検出したときにタイマを起動し、所定時間内にチャネル装置32に優先権を与えられないときに、そのチャネル装置32(または、チャネル装置32のチャネル装置制御部63)にエラーを報告するようにしてもよい。このエラー報告を受けると、チャネル装置32は、優先権の要求に係る処理を中止する。すなわち、このエラー報告は、チャネル装置32の処理の中止を指示する停止指示に相当する。
また、チャネル装置32は、優先権を要求している期間にドライバ23から起動指示を受けると、その起動指示を優先する。すなわち、チャネル装置32が優先権を要求したときから開始指示を受け取るまでの期間(すなわち、ステップS11〜S15の期間)に、起動制御部61がドライバ23から図4で説明した起動指示を受け取ると、起動制御部61からチャネル装置制御部63に対して優先権の獲得に失敗した旨が報告される。そうすると、チャネル装置32は、ドライバ23からの起動指示を優先するために、優先権を要求した処理を中止する。
このように、実施形態の情報処理システムによれば、エミュレーション環境においてもドライバとチャネル装置との間の割込み制御が実現される。したがって、従来のメインフレームで提供されていた機能が、汎用プラットフォーム上でも実現される。たとえば、メインフレームの一形態として、メインフレームの情報処理ユニットと1台のIO装置との間を複数のチャネル装置を用いてマルチパス接続する機能を提供する構成が知られている。この場合、第1のチャネル装置を利用して情報処理ユニットとIO装置との間でデータ転送を行っているときに、チェインされたデータ転送の途中でその第1のチャネル装置が故障すると、第2のチャネル装置を使用してデータ転送を継続する。そして、実施形態の情報処理システムは、このようなマルチパス機能も提供することができる。
次に、世代バイトを利用する制御方法について説明する。チャネル装置32は、上述したように、CIB領域52を利用してCUP21に制御情報を通知する。このとき、チャネル装置32は、通知すべき制御情報と共に世代バイトをCIB領域52に書き込む。世代バイトは、CIB領域52に書き込まれる制御情報を識別するシーケンス番号であり、新たな制御情報を書き込む毎に「1」ずつインクリメントされる。よって、ドライバ23は、CIB領域52から制御情報を取得する際、この世代バイトを参照することにより、過去の制御情報に対応する処理を実行してしまうことを回避できる。すなわち、世代バイトを利用すれば、チャネル装置32からCIB領域52への書込みの失敗を検出することができる。
また、この世代バイトを利用すれば、チャネル装置32からCPU21への割込みを行わなくても、図4に示す起動手順、および図5に示す優先権の許可手順と同等の動作を実現できる。
図7は、チャネル装置32の起動時に世代バイトを利用する場合の手順を示すフローチャートである。世代バイトを利用する場合には、ステップS5の代わりにステップS41が実行される。ステップS41では、チャネル装置32は、動作結果および新たな世代バイトをCIB領域52に書き込む。これにより、世代バイトは「1」だけインクリメントされる。この後、チャネル装置32は、CPU21に対して割込みを行う必要はない。
ドライバ23は、ステップS42において、ポーリングによりCIB領域52に設定されている世代バイトを定期的に参照する。そして、ドライバ23は、世代バイトがインクリメントされていることを検出すると、ステップS43において、そのCIB領域52に書き込まれている制御情報(ここでは、チャネル装置32の動作結果)を把握する。この後、ドライバ23は、チャネル装置32に対して割込み完了通知を通知する。
図8は、優先権の要求時に世代バイトを利用する場合の手順を示すフローチャートである。世代バイトを利用する場合、チャネル装置32は、ステップS11の代わりに、ステップS51において、優先権の要求とともに新たな世代バイトをCIB領域52に書き込む。また、チャネル装置32は、ステップS17の代わりに、ステップS54において、処理結果とともに新たな世代バイトをCIB領域52に書き込む。この場合、チャネル装置32は、CPU21に対して割込みを行う必要はない。
ドライバ23は、ステップS52において、ポーリングにより世代バイトを定期的に参照する。そして、ドライバ23は、世代バイトがインクリメントされていることを検出すると、ステップS53において、CIB領域52を参照することでチャネル装置32からの優先権の要求を認識し、ステップS14以降の処理を実行する。
また、ドライバ23は、ステップS55において、ポーリングにより世代バイトを定期的に参照する。そして、ドライバ23は、ステップS56において、世代バイトがインクリメントされていることを検出すると、CIB領域52を参照することでチャネル装置32の処理結果を認識する。
上述の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)
演算処理装置と記憶装置を有する情報処理装置と、前記情報処理装置に接続された入出力装置と、前記情報処理装置と前記入出力装置間においてデータの転送を行うチャネル装置を有する情報処理システムにおいて、
前記記憶装置は、
前記チャネル装置を起動させるチャネル装置命令と前記チャネル装置の起動に使用する起動情報が保持される第1の領域と、
前記チャネル装置の動作結果が保持される第2の領域を有し、
前記チャネル装置は、
前記チャネル装置の起動を制御する起動制御部と、
前記チャネル装置から前記演算処理装置への割込を制御する割込制御部と、
前記チャネル装置の制御を行うチャネル装置制御部を有し、
前記情報処理装置はさらに、
前記演算処理装置に、
前記記憶装置の前記第1の領域に前記チャネル装置起動命令と前記起動情報を書き込ませるステップと、
前記起動制御部に対して、前記チャネル装置の起動を指示させるステップを実行させ、
前記起動制御部に、
前記記憶装置の前記第1の領域を読み込ませるとともに、前記チャネル装置制御部に通知させるステップを実行させ、
前記チャネル装置に、
前記記憶装置の前記第1の領域が有する前記チャネル装置命令を実行させるステップと、
前記チャネル装置命令の実行によるチャネル装置の動作結果を、前記記憶装置の前記第2の領域に書き込ませるステップと、
前記割込制御部を用いて、前記演算処理装置への割込を発生させるステップを実行させ、
前記演算処理装置に、
前記記憶装置の前記第2の領域を参照し、前チャネル装置の動作結果を読み込ませることにより、割込の処理を実行させるステップと、
前記割込制御部への割込の処理の完了を通知させるステップを実行させるドライバ部を有することを特徴とする情報処理システム。
(付記2)
演算処理装置と記憶装置を有する情報処理装置と、前記情報処理装置に接続された入出力装置と、前記情報処理装置と前記入出力装置間においてデータの転送を行うチャネル装置を有する情報処理システムにおいて、
前記記憶装置は、
前記チャネル装置の動作結果が保持される領域を有し、
前記チャネル装置は、
前記チャネル装置の起動を制御する起動制御部と、
前記チャネル装置から前記演算処理装置への割込を制御する割込制御部と、
前記チャネル装置の制御を行うチャネル装置制御部を有し、
前記情報処理装置はさらに、
前記チャネル装置に、
前記記憶装置の前記領域に第1の割込の要求を書き込ませるステップと、
前記割込制御部を用いて、前記演算処理装置への第1の割込を発生させるステップを実行させ、
前記演算処理装置に、
前記演算処理装置が前記第1の割込の発生を検出した場合に、前記領域を読み込ませ、前記第1の割込の要求を参照させるステップと、
前記第1の割込の要求よりも優先して処理すべき他の処理が存在しないため、前記第1の割込の要求に対して、前記チャネル装置による第1の割込の処理が許可される場合には、前記割込制御部を用いて前記第1の割込の処理を実行させるとともに、前記第1の割込の要求よりも優先して処理すべき他の処理が存在するため、前記第1の割込の要求に対して、前記チャネル装置による第1の割込の処理が許可されない場合には、前記演算処理装置が前記他の処理を実行後に、前記割込制御部を用いて前記第1の割込の処理を実行させるステップを実行させるドライバ部を有することを特徴とする情報処理システム。
(付記3)
前記ドライバ部はさらに、
前記チャネル装置に、
前記第1の割込の要求に対する前記第1の割込の処理を実行させるステップと、
前記第1の割込の処理の結果を前記領域に書き込ませるステップと、
前記割込制御部を用いて、前記演算処理装置への第2の割込を発生させるステップを実行させ、
前記演算処理装置に、
前記演算処理装置が前記第2の割込の発生を検出した場合に、前記領域を読み込ませるとともに、前記第1の割込の処理の結果を参照させるステップと、
前記割込制御部への第2の割込の処理の完了を通知させるステップを実行させることを特徴とする付記2記載の情報処理システム。
(付記4)
前記ドライバ部はさらに、
前記演算処理装置に、
前記第1の割込の要求に対して、前記チャネル装置による第1の割込の処理が許可されない場合には、前記第1の割込の処理を中止させることを特徴とする付記2又は3記載の情報処理システム。
(付記5)
前記ドライバ部はさらに、
前記演算処理装置に、
前記第1の割込の要求に対して、前記チャネル装置による第1の割込の処理が許可されない場合には、前記チャネル装置制御部に対して、エラーを報告することを特徴とする付記4記載の情報処理システム。
(付記6)
第1及び第2の領域を有する記憶装置と演算処理装置とドライバ部を有する情報処理装置と、前記情報処理装置に接続された入出力装置と、前記情報処理装置と前記入出力装置間においてデータの転送を行うとともに、自己の起動を制御する起動制御部と、前記演算処理装置への割込を制御する割込制御部と、自己の制御を行うチャネル装置制御部を有するチャネル装置を備えた情報処理システムの制御方法において、
前記ドライバ部が、前記演算処理装置に、前記記憶装置の前記第1の領域に前記チャネル装置を起動させるチャネル装置起動命令と前記チャネル装置の起動に使用する起動情報を書き込ませるステップと、
前記ドライバ部が、前記演算処理装置に、前記起動制御部に対して、前記チャネル装置の起動を指示させるステップと、
前記ドライバ部が、前記起動制御部に、前記記憶装置の前記第1の領域を読み込ませるとともに、前記チャネル装置制御部に通知させるステップと、
前記ドライバ部が、前記チャネル装置に、前記記憶装置の前記第1の領域が有する前記チャネル装置命令を実行させるステップと、
前記ドライバ部が、前記チャネル装置に、前記チャネル装置命令の実行によるチャネル装置の動作結果を、前記記憶装置の前記第2の領域に書き込ませるステップと、
前記ドライバ部が、前記チャネル装置に、前記割込制御部を用いて、前記演算処理装置への割込を発生させるステップと、
前記ドライバ部が、前記演算処理装置に、前記記憶装置の前記第2の領域を参照し、前チャネル装置の動作結果を読み込ませることにより、割込の処理を実行させるステップと、
前記ドライバ部が、前記演算処理装置に、前記割込制御部への割込の処理の完了を通知させるステップを有することを特徴とする制御方法。
(付記7)
領域を有する記憶装置と演算処理装置とドライバ部を有する情報処理装置と、前記情報処理装置に接続された入出力装置と、前記情報処理装置と前記入出力装置間においてデータの転送を行うとともに、前記演算処理装置への割込を制御する割込制御部を有するチャネル装置を備えた情報処理システムの制御方法において、
前記ドライバ部が、前記チャネル装置に、前記記憶装置の前記領域に第1の割込の要求を書き込ませるステップと、
前記ドライバ部が、前記チャネル装置に、前記割込制御部を用いて、前記演算処理装置への第1の割込を発生させるステップと、
前記ドライバ部が、前記演算処理装置に、前記演算処理装置が前記第1の割込の発生を
検出した場合に、前記領域を読み込ませ、前記第1の割込の要求を参照させるステップと、
前記ドライバ部が、前記演算処理装置に、前記第1の割込の要求よりも優先して処理すべき他の処理が存在しないため、前記第1の割込の要求に対して、前記チャネル装置による第1の割込の処理が許可される場合には、前記割込制御部を用いて前記第1の割込の処理を実行させるとともに、前記第1の割込の要求よりも優先して処理すべき他の処理が存在するため、前記第1の割込の要求に対して、前記チャネル装置による第1の割込の処理が許可されない場合には、前記演算処理装置が前記他の処理を実行後に、前記割込制御部を用いて前記第1の割込の処理を実行させるステップを有することを特徴とする制御方法。
(付記8)
前記制御方法はさらに、
前記ドライバ部が、前記チャネル装置に、前記第1の割込の要求に対する前記第1の割込の処理を実行させるステップと、
前記ドライバ部が、前記チャネル装置に、前記第1の割込の処理の結果を前記領域に書き込ませるステップと、
前記ドライバ部が、前記チャネル装置に、前記割込制御部を用いて、前記演算処理装置への第2の割込を発生させるステップと、
前記ドライバ部が、前記演算処理装置に、前記演算処理装置が前記第2の割込の発生を検出した場合に、前記領域を読み込ませるとともに、前記第1の割込の処理の結果を参照させるステップと、
前記ドライバ部が、前記演算処理装置に、前記割込制御部への第2の割込の処理の完了を通知させるステップを有することを特徴とする付記7記載の制御方法。
(付記9)
前記制御方法はさらに、
前記ドライバ部が、前記演算処理装置に、前記第1の割込の要求に対して、前記チャネル装置による第1の割込の処理が許可されない場合には、前記第1の割込の処理を中止させるステップを有することを特徴とする付記8記載の制御方法。
(付記10)
前記制御方法はさらに、
前記ドライバ部が、前記演算処理装置に、前記第1の割込の要求に対して、前記チャネル装置による第1の割込の処理が許可されない場合には、前記チャネル装置制御部に対して、エラーを報告するステップを有することを特徴とする付記9記載の制御方法。
(付記11)
第1及び第2の領域を有する記憶装置と演算処理装置を有する情報処理装置と、前記情報処理装置に接続された入出力装置と、前記情報処理装置と前記入出力装置間においてデータの転送を行うとともに、自己の起動を制御する起動制御部と、前記演算処理装置への割込を制御する割込制御部と、自己の制御を行うチャネル装置制御部を有するチャネル装置を備えた情報処理システムの制御プログラムにおいて、
前記演算処理装置に、
前記記憶装置の前記第1の領域に前記チャネル装置を起動させるチャネル装置起動命令と前記チャネル装置の起動に使用する起動情報を書き込むステップと、
前記起動制御部に対して、前記チャネル装置の起動を指示するステップと、
前記起動制御部を用いて、前記記憶装置の前記第1の領域を読み込むとともに、前記チャネル装置制御部に通知するステップと、
前記チャネル装置を用いて、前記記憶装置の前記第1の領域が有する前記チャネル装置命令を実行するステップと、
前記チャネル装置を用いて、前記チャネル装置命令の実行によるチャネル装置の動作結果を、前記記憶装置の前記第2の領域に書き込むステップと、
前記チャネル装置の前記割込制御部を用いて、前記演算処理装置への割込を発生する
ステップと、
前記記憶装置の前記第2の領域を参照し、前チャネル装置の動作結果を読み込むことにより、割込の処理を実行するステップと、
前記割込制御部への割込の処理の完了を通知するステップを実行させることを特徴とする制御プログラム。
(付記12)
領域を有する記憶装置と演算処理装置とドライバ部を有する情報処理装置と、前記情報処理装置に接続された入出力装置と、前記情報処理装置と前記入出力装置間においてデータの転送を行うとともに、前記演算処理装置への割込を制御する割込制御部を有するチャネル装置を備えた情報処理システムの制御プログラムにおいて、
前記演算処理装置に、
前記チャネル装置を用いて、前記記憶装置の前記領域に第1の割込の要求を書き込むステップと、
前記チャネル装置の前記割込制御部を用いて、前記演算処理装置への第1の割込を発生させるステップと、
前記演算処理装置が前記第1の割込の発生を検出した場合に、前記領域を読み込ませ、前記第1の割込の要求を参照するステップと、
前記第1の割込の要求よりも優先して処理すべき他の処理が存在しないため、前記第1の割込の要求に対して、前記チャネル装置による第1の割込の処理が許可される場合には、前記割込制御部を用いて前記第1の割込の処理を実行するとともに、前記第1の割込の要求よりも優先して処理すべき他の処理が存在するため、前記第1の割込の要求に対して、前記チャネル装置による第1の割込の処理が許可されない場合には、前記演算処理装置が前記他の処理を実行後に、前記割込制御部を用いて前記第1の割込の処理を実行するステップを有することを特徴とする制御プログラム。
(付記13)
前記制御プログラムはさらに、
前記演算処理装置に、
前記チャネル装置を用いて、前記第1の割込の要求に対する前記第1の割込の処理を実行するステップと、
前記チャネル装置を用いて、前記第1の割込の処理の結果を前記領域に書き込むステップと、
前記チャネル装置の前記割込制御部を用いて、前記演算処理装置への第2の割込を発生するステップと、
前記演算処理装置が前記第2の割込の発生を検出した場合に、前記領域を読み込むとともに、前記第1の割込の処理の結果を参照するステップと、
前記割込制御部への第2の割込の処理の完了を通知するステップを実行させることを特徴とする付記12記載の制御プログラム。
(付記14)
前記制御プログラムはさらに、
前記演算処理装置に、
前記第1の割込の要求に対して、前記チャネル装置による第1の割込の処理が許可されない場合には、前記第1の割込の処理を中止するステップを実行させることを特徴とする付記13記載の制御プログラム。
(付記15)
前記制御プログラムはさらに、
前記演算処理装置に、
前記第1の割込の要求に対して、前記チャネル装置による第1の割込の処理が許可されない場合には、前記チャネル装置制御部に対して、エラーを報告するステップを実行させることを特徴とする付記14記載の制御プログラム。
本発明の実施形態に係る情報処理システムの構成を示す図である。 実施形態の情報処理システムを簡略化して示した概略図である。 割込み制御に係わる要素を示す図である。 ドライバからチャネル装置を起動する手順を示すフローチャートである。 チャネル装置が優先権を要求した際の手順を示すフローチャートである。 優先権が許可されないときの手順を示すフローチャートである。 起動時に世代バイトを利用する場合の手順を示すフローチャートである。 優先権の要求時に世代バイトを利用する場合の手順を示すフローチャートである。 背景技術について説明する図である。
符号の説明
1 情報処理システム
2 システムボード
3 IOユニット
4 システムインターコネクト
5(5a〜5n) IO装置
21 CPU
22 メモリ
23 ドライバ
24 割込み制御部
32(32a〜32c) チャネル装置
40 システム制御部
51 COB領域
52 CIB領域
61 起動制御部
62 割込み制御部
63 チャネル装置制御部
200 汎用プラットフォーム

Claims (12)

  1. 演算処理装置と記憶装置を有する情報処理装置と、前記情報処理装置に接続された入出力装置と、前記情報処理装置と前記入出力装置間においてデータの転送を行うチャネル装置を有する情報処理システムにおいて、
    前記演算処理装置および前記チャネル装置は、前記記憶装置にアクセス可能に構成されており、
    前記記憶装置は、
    前記チャネル装置を起動させるチャネル装置命令と前記チャネル装置の起動に使用する起動情報が保持される第1の領域と、
    前記チャネル装置の動作結果が保持される第2の領域を有し、
    前記チャネル装置は、
    前記チャネル装置の起動を制御する起動制御部と、
    前記チャネル装置から前記演算処理装置への割込を制御する割込制御部と、
    前記チャネル装置の制御を行うチャネル装置制御部を有し、
    前記情報処理装置はさらに、
    前記演算処理装置に、
    前記記憶装置の前記第1の領域に前記チャネル装置命令と前記起動情報を書き込ませるステップと、
    前記起動制御部に対して、前記チャネル装置の起動を指示させるステップを実行させ、
    前記起動制御部に、
    前記記憶装置の前記第1の領域を読み込ませるとともに、前記チャネル装置制御部に通知させるステップを実行させ、
    前記チャネル装置に、
    前記記憶装置の前記第1の領域が有する前記チャネル装置命令を実行させるステップと、
    前記チャネル装置命令の実行によるチャネル装置の動作結果を、前記記憶装置の前記第2の領域に書き込ませるステップと、
    前記割込制御部を用いて、前記演算処理装置への割込を発生させるステップを実行させ、
    前記演算処理装置に、
    前記記憶装置の前記第2の領域を参照し、前チャネル装置の動作結果を読み込ませることにより、割込の処理を実行させるステップと、
    前記演算処理装置への割込の処理の完了を前記チャネル装置に通知させるステップを実行させるドライバ部を有することを特徴とする情報処理システム。
  2. 演算処理装置と記憶装置を有する情報処理装置と、前記情報処理装置に接続された入出力装置と、前記情報処理装置と前記入出力装置間においてデータの転送を行うチャネル装置を有する情報処理システムにおいて、
    前記演算処理装置および前記チャネル装置は、前記記憶装置にアクセス可能に構成されており、
    前記記憶装置は、
    前記チャネル装置の動作結果が保持される領域を有し、
    前記チャネル装置は、
    前記チャネル装置の起動を制御する起動制御部と、
    前記チャネル装置から前記演算処理装置への割込を制御する割込制御部と、
    前記チャネル装置の制御を行うチャネル装置制御部を有し、
    前記情報処理装置はさらに、
    前記チャネル装置に、
    前記記憶装置の前記領域に第1の割込の要求を書き込ませるステップと、
    前記割込制御部を用いて、前記演算処理装置への第1の割込を発生させるステップを実行させ、
    前記演算処理装置に、
    前記演算処理装置が前記第1の割込の発生を検出した場合に、前記領域を読み込ませ、前記第1の割込の要求を参照させるステップと、
    前記第1の割込の要求よりも優先して処理すべき他の処理が存在しないため、前記第1の割込の要求に対して、前記チャネル装置による第1の割込の処理が許可される場合には、前記割込制御部を用いて前記第1の割込の処理を実行させるとともに、前記第1の割込の要求よりも優先して処理すべき他の処理が存在するため、前記第1の割込の要求に対して、前記チャネル装置による第1の割込の処理が許可されない場合には、前記演算処理装置が前記他の処理を実行後に、前記割込制御部を用いて前記第1の割込の処理を実行させるステップを実行させるドライバ部を有することを特徴とする情報処理システム。
  3. 前記ドライバ部はさらに、
    前記チャネル装置に、
    前記第1の割込の要求に対する前記第1の割込の処理を実行させるステップと、
    前記第1の割込の処理の結果を前記領域に書き込ませるステップと、
    前記割込制御部を用いて、前記演算処理装置への第2の割込を発生させるステップを実行させ、
    前記演算処理装置に、
    前記演算処理装置が前記第2の割込の発生を検出した場合に、前記領域を読み込ませるとともに、前記第1の割込の処理の結果を参照させるステップと、
    前記割込制御部への第2の割込の処理の完了を通知させるステップを実行させることを特徴とする請求項2記載の情報処理システム。
  4. 前記ドライバ部はさらに、
    前記演算処理装置に、
    前記第1の割込の要求に対して、前記チャネル装置による第1の割込の処理が許可されない場合には、前記第1の割込の処理を中止させることを特徴とする請求項2又は3記載の情報処理システム。
  5. 第1及び第2の領域を有する記憶装置と演算処理装置とドライバ部を有する情報処理装置と、前記情報処理装置に接続された入出力装置と、前記情報処理装置と前記入出力装置間においてデータの転送を行うとともに、自己の起動を制御する起動制御部と、前記演算処理装置への割込を制御する割込制御部と、自己の制御を行うチャネル装置制御部を有するチャネル装置を備えた情報処理システムの制御方法において、
    前記演算処理装置および前記チャネル装置は、前記記憶装置にアクセス可能に構成されており、
    前記ドライバ部が、前記演算処理装置に、前記記憶装置の前記第1の領域に前記チャネル装置を起動させるチャネル装置命令と前記チャネル装置の起動に使用する起動情報を書き込ませるステップと、
    前記ドライバ部が、前記演算処理装置に、前記起動制御部に対して、前記チャネル装置の起動を指示させるステップと、
    前記ドライバ部が、前記起動制御部に、前記記憶装置の前記第1の領域を読み込ませるとともに、前記チャネル装置制御部に通知させるステップと、
    前記ドライバ部が、前記チャネル装置に、前記記憶装置の前記第1の領域が有する前記チャネル装置命令を実行させるステップと、
    前記ドライバ部が、前記チャネル装置に、前記チャネル装置命令の実行によるチャネル装置の動作結果を、前記記憶装置の前記第2の領域に書き込ませるステップと、
    前記ドライバ部が、前記チャネル装置に、前記割込制御部を用いて、前記演算処理装置への割込を発生させるステップと、
    前記ドライバ部が、前記演算処理装置に、前記記憶装置の前記第2の領域を参照し、前チャネル装置の動作結果を読み込ませることにより、割込の処理を実行させるステップと、
    前記ドライバ部が、前記演算処理装置に、前記演算処理装置への割込の処理の完了を前記チャネル装置に通知させるステップを有することを特徴とする制御方法。
  6. 領域を有する記憶装置と演算処理装置とドライバ部を有する情報処理装置と、前記情報処理装置に接続された入出力装置と、前記情報処理装置と前記入出力装置間においてデータの転送を行うとともに、前記演算処理装置への割込を制御する割込制御部を有するチャネル装置を備えた情報処理システムの制御方法において、
    前記演算処理装置および前記チャネル装置は、前記記憶装置にアクセス可能に構成されており、
    前記ドライバ部が、前記チャネル装置に、前記記憶装置の前記領域に第1の割込の要求を書き込ませるステップと、
    前記ドライバ部が、前記チャネル装置に、前記割込制御部を用いて、前記演算処理装置への第1の割込を発生させるステップと、
    前記ドライバ部が、前記演算処理装置に、前記演算処理装置が前記第1の割込の発生を検出した場合に、前記領域を読み込ませ、前記第1の割込の要求を参照させるステップと、
    前記ドライバ部が、前記演算処理装置に、前記第1の割込の要求よりも優先して処理すべき他の処理が存在しないため、前記第1の割込の要求に対して、前記チャネル装置による第1の割込の処理が許可される場合には、前記割込制御部を用いて前記第1の割込の処理を実行させるとともに、前記第1の割込の要求よりも優先して処理すべき他の処理が存在するため、前記第1の割込の要求に対して、前記チャネル装置による第1の割込の処理が許可されない場合には、前記演算処理装置が前記他の処理を実行後に、前記割込制御部を用いて前記第1の割込の処理を実行させるステップを有することを特徴とする制御方法。
  7. 前記制御方法はさらに、
    前記ドライバ部が、前記チャネル装置に、前記第1の割込の要求に対する前記第1の割込の処理を実行させるステップと、
    前記ドライバ部が、前記チャネル装置に、前記第1の割込の処理の結果を前記領域に書き込ませるステップと、
    前記ドライバ部が、前記チャネル装置に、前記割込制御部を用いて、前記演算処理装置への第2の割込を発生させるステップと、
    前記ドライバ部が、前記演算処理装置に、前記演算処理装置が前記第2の割込の発生を検出した場合に、前記領域を読み込ませるとともに、前記第1の割込の処理の結果を参照させるステップと、
    前記ドライバ部が、前記演算処理装置に、前記割込制御部への第2の割込の処理の完了を通知させるステップを有することを特徴とする請求項6記載の制御方法。
  8. 前記制御方法はさらに、
    前記ドライバ部が、前記演算処理装置に、前記第1の割込の要求に対して、前記チャネル装置による第1の割込の処理が許可されない場合には、前記第1の割込の処理を中止させるステップを有することを特徴とする請求項7記載の制御方法。
  9. 第1及び第2の領域を有する記憶装置と演算処理装置を有する情報処理装置と、前記情報処理装置に接続された入出力装置と、前記情報処理装置と前記入出力装置間においてデータの転送を行うとともに、自己の起動を制御する起動制御部と、前記演算処理装置への割込を制御する割込制御部と、自己の制御を行うチャネル装置制御部を有するチャネル装置を備えた情報処理システムの制御プログラムにおいて、
    前記演算処理装置および前記チャネル装置は、前記記憶装置にアクセス可能に構成されており、
    前記演算処理装置に、
    前記記憶装置の前記第1の領域に前記チャネル装置を起動させるチャネル装置命令と前記チャネル装置の起動に使用する起動情報を書き込むステップと、
    前記起動制御部に対して、前記チャネル装置の起動を指示するステップと、
    前記起動制御部を用いて、前記記憶装置の前記第1の領域を読み込むとともに、前記チャネル装置制御部に通知するステップと、
    前記チャネル装置を用いて、前記記憶装置の前記第1の領域が有する前記チャネル装置命令を実行するステップと、
    前記チャネル装置を用いて、前記チャネル装置命令の実行によるチャネル装置の動作結果を、前記記憶装置の前記第2の領域に書き込むステップと、
    前記チャネル装置の前記割込制御部を用いて、前記演算処理装置への割込を発生するステップと、
    前記記憶装置の前記第2の領域を参照し、前チャネル装置の動作結果を読み込むことにより、割込の処理を実行するステップと、
    前記演算処理装置への割込の処理の完了を前記チャネル装置に通知するステップを実行させることを特徴とする制御プログラム。
  10. 領域を有する記憶装置と演算処理装置とドライバ部を有する情報処理装置と、前記情報処理装置に接続された入出力装置と、前記情報処理装置と前記入出力装置間においてデータの転送を行うとともに、前記演算処理装置への割込を制御する割込制御部を有するチャネル装置を備えた情報処理システムの制御プログラムにおいて、
    前記演算処理装置および前記チャネル装置は、前記記憶装置にアクセス可能に構成されており、
    前記演算処理装置に、
    前記チャネル装置を用いて、前記記憶装置の前記領域に第1の割込の要求を書き込むステップと、
    前記チャネル装置の前記割込制御部を用いて、前記演算処理装置への第1の割込を発生させるステップと、
    前記演算処理装置が前記第1の割込の発生を検出した場合に、前記領域を読み込ませ、前記第1の割込の要求を参照するステップと、
    前記第1の割込の要求よりも優先して処理すべき他の処理が存在しないため、前記第1の割込の要求に対して、前記チャネル装置による第1の割込の処理が許可される場合には、前記割込制御部を用いて前記第1の割込の処理を実行するとともに、前記第1の割込の要求よりも優先して処理すべき他の処理が存在するため、前記第1の割込の要求に対して、前記チャネル装置による第1の割込の処理が許可されない場合には、前記演算処理装置が前記他の処理を実行後に、前記割込制御部を用いて前記第1の割込の処理を実行するステップを有することを特徴とする制御プログラム。
  11. 前記制御プログラムはさらに、
    前記演算処理装置に、
    前記チャネル装置を用いて、前記第1の割込の要求に対する前記第1の割込の処理を実行するステップと、
    前記チャネル装置を用いて、前記第1の割込の処理の結果を前記領域に書き込むステップと、
    前記チャネル装置の前記割込制御部を用いて、前記演算処理装置への第2の割込を発生するステップと、
    前記演算処理装置が前記第2の割込の発生を検出した場合に、前記領域を読み込むとともに、前記第1の割込の処理の結果を参照するステップと、
    前記割込制御部への第2の割込の処理の完了を通知するステップを実行させることを特徴とする請求項10記載の制御プログラム。
  12. 前記制御プログラムはさらに、
    前記演算処理装置に、
    前記第1の割込の要求に対して、前記チャネル装置による第1の割込の処理が許可されない場合には、前記第1の割込の処理を中止するステップを実行させることを特徴とする請求項11記載の制御プログラム。

JP2008045888A 2008-02-27 2008-02-27 情報処理システム、情報処理システムの制御方法、および情報処理システムの制御プログラム Active JP5076967B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2008045888A JP5076967B2 (ja) 2008-02-27 2008-02-27 情報処理システム、情報処理システムの制御方法、および情報処理システムの制御プログラム
EP09152576.6A EP2096550B1 (en) 2008-02-27 2009-02-11 Information processing apparatus and control method thereof
US12/370,977 US8151028B2 (en) 2008-02-27 2009-02-13 Information processing apparatus and control method thereof
KR1020090015371A KR101056759B1 (ko) 2008-02-27 2009-02-24 정보 처리 시스템, 정보 처리 시스템의 제어 방법, 및 정보 처리 시스템의 제어 프로그램을 기록한 기록 매체
CN2009101180903A CN101520758B (zh) 2008-02-27 2009-02-27 信息处理设备及其控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008045888A JP5076967B2 (ja) 2008-02-27 2008-02-27 情報処理システム、情報処理システムの制御方法、および情報処理システムの制御プログラム

Publications (2)

Publication Number Publication Date
JP2009205347A JP2009205347A (ja) 2009-09-10
JP5076967B2 true JP5076967B2 (ja) 2012-11-21

Family

ID=40538869

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008045888A Active JP5076967B2 (ja) 2008-02-27 2008-02-27 情報処理システム、情報処理システムの制御方法、および情報処理システムの制御プログラム

Country Status (5)

Country Link
US (1) US8151028B2 (ja)
EP (1) EP2096550B1 (ja)
JP (1) JP5076967B2 (ja)
KR (1) KR101056759B1 (ja)
CN (1) CN101520758B (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8548025B2 (en) * 2009-09-30 2013-10-01 Landis+Gyr Innovations, Inc. Methods and systems for distributing broadcast messages on various networks
JP5536892B2 (ja) * 2010-08-16 2014-07-02 三菱電機株式会社 制御プログラム生成装置、制御プログラム生成プログラム、及び制御プログラム生成方法
JP6540156B2 (ja) * 2015-03-27 2019-07-10 富士ゼロックス株式会社 制御装置及び画像形成装置

Family Cites Families (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4087204A (en) * 1974-12-19 1978-05-02 Niedermeyer Karl O Enclosed sump pump
US4325119A (en) * 1977-01-19 1982-04-13 Honeywell Information Systems Inc. Process and apparatus employing microprogrammed control commands for transferring information between a control processor and communications channels
JPS5414133A (en) 1977-07-05 1979-02-02 Mitsubishi Electric Corp Control system for input and output channel
US4222711A (en) * 1978-06-22 1980-09-16 I2 Ds Sump pump control system
US4228427A (en) * 1979-03-29 1980-10-14 Niedermeyer Karl O Monitor apparatus for sump pumps
US4437811A (en) * 1980-06-30 1984-03-20 Ebara Corporation Submersible pump with alternate pump operation control means
US4538386A (en) * 1984-09-04 1985-09-03 Ohio State Home Services, Inc. Drainage system and method
JPS61233837A (ja) 1985-04-08 1986-10-18 Mitsubishi Electric Corp 割込処理方式
US4652802A (en) * 1986-05-29 1987-03-24 S. J. Electro Systems, Inc. Alternator circuit arrangement useful in liquid level control system
JPS63265349A (ja) * 1987-04-22 1988-11-01 Nec Corp デ−タ転送制御装置
US5228130A (en) * 1988-09-14 1993-07-13 National Semiconductor Corporation Multi-channel peripheral interface using selectively flaggable channel register sets for concurrent write in response to any selected channel register write instruction
JPH04363748A (ja) 1991-03-12 1992-12-16 Toshiba Corp 優先制御方法及び優先制御回路
US5530872A (en) * 1992-12-23 1996-06-25 International Business Machines Corporation Method and system for directing device driver to service multiple sequential interrupt requests generated by I/O device connected thereto
JPH0721111A (ja) * 1993-07-06 1995-01-24 Nec Corp 優先順位決定システム
JPH0756842A (ja) * 1993-08-19 1995-03-03 Hitachi Ltd チャネルサブシステム
JP3288158B2 (ja) * 1993-12-20 2002-06-04 日本電気エンジニアリング株式会社 チャネル制御方式
US5449274A (en) * 1994-03-24 1995-09-12 Metropolitan Pump Company Sump system having timed switching of plural pumps
US5503533A (en) * 1994-05-26 1996-04-02 Metropolitan Pump Company Fluid level control panel structure for multi-pump system
US5768599A (en) * 1995-02-28 1998-06-16 Nec Corporation Interrupt managing system for real-time operating system
US5689726A (en) * 1995-05-03 1997-11-18 United Microelectronics Corporation Computer system interface adapter capable of automatic self-configuration and self-diagnosis before operating system initiation
US6462666B1 (en) * 1995-05-03 2002-10-08 Virgil A. Einck Housing and electric connection panel for sump pump and full septic tank alarm
JPH0926927A (ja) * 1995-07-10 1997-01-28 Canon Inc デバイス制御装置及び方法
US5850555A (en) * 1995-12-19 1998-12-15 Advanced Micro Devices, Inc. System and method for validating interrupts before presentation to a CPU
US5850558A (en) * 1995-12-19 1998-12-15 Advanced Micro Devices System and method for referencing interrupt request information in a programmable interrupt controller
US5892956A (en) * 1995-12-19 1999-04-06 Advanced Micro Devices, Inc. Serial bus for transmitting interrupt information in a multiprocessing system
US5870865A (en) * 1997-06-26 1999-02-16 Everdry Marketing & Management, Inc. Method for repairing a drainage system
US5944263A (en) * 1997-11-04 1999-08-31 Everdry Marketing & Management, Inc. Dust suppressing misting device for percussive tools
WO1999034273A2 (en) * 1997-12-30 1999-07-08 Lsi Logic Corporation Automated dual scatter/gather list dma
WO2001018988A1 (en) * 1999-09-08 2001-03-15 Mellanox Technologies Ltd. Bridge between parallel buses over a packet-switched network
US6553443B1 (en) * 1999-09-28 2003-04-22 Legerity, Inc. Method and apparatus for prioritizing interrupts in a communication system
US6443715B1 (en) * 1999-11-19 2002-09-03 Campbell Hausfeld/Scott Fetzer Company Pump impeller
US6839857B2 (en) * 2000-01-13 2005-01-04 Sony Computer Entertainment Inc. Interrupt controller in an interface device or information processing system
JP4363748B2 (ja) 2000-06-02 2009-11-11 株式会社東芝 多重化パケット生成装置
US6754738B2 (en) * 2001-09-28 2004-06-22 International Business Machines Corporation Low overhead I/O interrupt
US6634144B1 (en) * 2001-11-02 2003-10-21 Everdry Marketing & Management Services, Inc. Home waterproofing system
CN1795442A (zh) * 2003-05-26 2006-06-28 皇家飞利浦电子股份有限公司 用于在主存储器和存储装置之间传送数据的方法和设备
US20050281679A1 (en) * 2004-06-21 2005-12-22 Karl Niedermeyer Basement flood control system
US7260663B2 (en) * 2005-04-07 2007-08-21 International Business Machines Corporation System and method for presenting interrupts
CN100361104C (zh) * 2005-04-08 2008-01-09 英业达股份有限公司 中断共享机制下的自定中断信号响应处理方法及系统
JP4817834B2 (ja) * 2005-12-19 2011-11-16 ルネサスエレクトロニクス株式会社 割り込み制御装置及び割り込み制御方法
JP2008090375A (ja) * 2006-09-29 2008-04-17 Hitachi Ltd 割込み制御システム、およびこれを利用した記憶制御システム
BRPI0811669B1 (pt) * 2007-07-02 2020-01-14 Ibm método, controlador de armazenamento e equipamento para priorização de interrupções em um controlador de armazenamento
US7917813B2 (en) * 2008-02-14 2011-03-29 International Business Machines Corporation Exception condition determination at a control unit in an I/O processing system
US8055807B2 (en) * 2008-07-31 2011-11-08 International Business Machines Corporation Transport control channel program chain linking including determining sequence order

Also Published As

Publication number Publication date
CN101520758A (zh) 2009-09-02
CN101520758B (zh) 2013-03-13
US8151028B2 (en) 2012-04-03
EP2096550A1 (en) 2009-09-02
EP2096550B1 (en) 2014-04-16
JP2009205347A (ja) 2009-09-10
KR20090092707A (ko) 2009-09-01
US20090216930A1 (en) 2009-08-27
KR101056759B1 (ko) 2011-08-16

Similar Documents

Publication Publication Date Title
CN100592271C (zh) 使用集成dma引擎进行高性能易失性磁盘驱动器存储器访问的装置和方法
US7526592B2 (en) Interrupt control system and storage control system using the same
US11397675B2 (en) Storage device, computer system, and operation method of storage device configured to arbitrarily stop garbage collection
JP4658122B2 (ja) Dmaコントローラ、ノード、データ転送制御方法、及びプログラム
JPH02500059A (ja) 通信インタフェースプロトコル
JP2012133405A (ja) ストレージ装置及びそのデータ転送制御方法
JP2012203636A (ja) 仮想計算機の制御方法及び計算機
JPH0666821B2 (ja) デ−タ通信コントロ−ラ
JP2006085543A (ja) 仮想計算機システム
US9501372B2 (en) Cluster system including closing a bus using an uncorrectable fault upon a fault detection in an active server
JP2011070655A (ja) 情報処理装置、メモリダンプシステムおよびメモリダンプ方法
JP5076967B2 (ja) 情報処理システム、情報処理システムの制御方法、および情報処理システムの制御プログラム
JP2013515982A (ja) データ転送システム及びデータ転送方法
US20060265523A1 (en) Data transfer circuit and data transfer method
US8874965B2 (en) Controlling program code execution shared among a plurality of processors
JP6123487B2 (ja) 制御装置、制御方法及び制御プログラム
JP2021002144A (ja) 情報処理装置、情報処理装置の制御方法及び情報処理装置の制御プログラム
JP2013054434A (ja) I/o制御装置およびi/o制御方法
US7930438B2 (en) Interrogate processing for complex I/O link
JP2011138401A (ja) プロセッサシステム、プロセッサシステムの制御方法、及び制御回路
US11687287B2 (en) Control apparatus and information processing system
JP4499909B2 (ja) 多重化記憶制御装置
CN118550754A (zh) 多核固态硬盘的断言处理方法、计算机程序产品、设备及介质
JP2022122677A (ja) 情報処理装置および情報処理装置の制御方法
JP2021174459A (ja) 障害処理装置、障害処理方法及びコンピュータプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101018

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120502

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120515

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120713

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120731

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120813

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150907

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5076967

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150