JP3263135B2 - 情報処理装置 - Google Patents

情報処理装置

Info

Publication number
JP3263135B2
JP3263135B2 JP19615992A JP19615992A JP3263135B2 JP 3263135 B2 JP3263135 B2 JP 3263135B2 JP 19615992 A JP19615992 A JP 19615992A JP 19615992 A JP19615992 A JP 19615992A JP 3263135 B2 JP3263135 B2 JP 3263135B2
Authority
JP
Japan
Prior art keywords
processing
input
processing time
computer system
output
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 - Fee Related
Application number
JP19615992A
Other languages
English (en)
Other versions
JPH0619823A (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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP19615992A priority Critical patent/JP3263135B2/ja
Priority to DE69321167T priority patent/DE69321167T2/de
Priority to EP93305039A priority patent/EP0577370B1/en
Publication of JPH0619823A publication Critical patent/JPH0619823A/ja
Priority to US08/517,654 priority patent/US5535418A/en
Application granted granted Critical
Publication of JP3263135B2 publication Critical patent/JP3263135B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

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
    • 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

Landscapes

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

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、通常の演算処理を行う
CPUとメモリからなるコピュータシステムと、コンピ
ュータシステムから入出力要求(I/O要求)を受それ
に従ってI/O処理を行い、I/O処理が終了した時に
はそれをコンピュータシステムに通知する機能を有する
I/O装置を備えた情報処理装置に関するものである。
【0002】
【従来の技術】従来、この種の装置では、I/O装置は
コンピュータシステム上で動作するプログラムからI/
O要求を受け、I/O処理が終了すると、コンピュータ
システムに対して割込みをかけるか、またはコンピュー
タシステムが読出し可能なレジスタの値を変化させるこ
とによって、コンピュータシステムに対してI/O処理
が終了したことを通知する。従って、コンピュータシス
テム上で動作するプログラムは、対応する割込みベクタ
にI/O処理終了時に動作すべきプログラムのエントリ
をあらかじめ登録してからI/O要求を行うか、または
I/O要求を行った後、I/O装置のレジスタをセンス
することでI/O処理が終了するのを待ち、その後I/
O処理終了時に動作すべきプログラムを移すように構成
されていた。この場合において、通常前者のI/O処理
方式を割込み方式と呼び、後者のI/O処理方式をポー
リング方式と呼んでいる。
【0003】
【発明が解決しようとする課題】しかしながら、従来の
技術では、I/O装置を制御する際、割込み方式かまた
はポーリング方式の何れか一方の方式を固定的に選択し
てプログラムしなければならなかった。このうち、割込
み方式を選択した場合、I/O終了までCPUが他の仕
事を実行できるという利点があるが、割込み処理への以
降の際、CPUの状態(レジスタの内容)の退避,復帰
が伴うため、I/O装置が行うI/O処理時間(I/O
要求からI/O終了までの時間)が短い場合には、却っ
て処理効率が落ちてしまうという問題点があった。
【0004】一方、ポーリング方式を選択した場合に
は、I/O処理の時間が短いとCPU状態の退避,復帰
処理が必要ない分処理効率がいいが、I/O処理時間が
長いとその間CPUはポーリングしていなければならな
いため、システム全体のスループットが低下する。つま
り、ハードディスク装置のように、同じI/O要求でも
処理時間が現在のヘッドの位置等に依存して変化してし
まうようなI/O装置を制御する場合には、どちらの方
式でプログラムしても、常に最適な処理を行えるわけで
はないという問題点があった。
【0005】本発明は、上記の問題点を解決するために
なされたのもで、I/O装置が実際のI/O処理を行う
前に、その処理にかかる時間(I/O処理時間)をコン
ピュータシステムに通知し、コンピュータシステムはそ
I/O処理時間とCPU状態の退避及び復帰に要する
時間とを比較して、I/O装置に対するI/O制御方式
を、I/O処理時間の方が長ければ割込み方式に切り替
え、I/O処理時間の方が短ければポーリング方式に動
的に切り替え制御することにより、I/O制御方式とし
て、割込み方式またはポーリング方式のうち常にスルー
プットのよい方が利用され、システム体のI/O処理
効率を格段に向上し、常に処理効率の高いI/O処理を
実現できる情報処理装置を提供することを目的とする。
【0006】
【問題点を解決するための手段】本発明は、所定の演算
処理を実行するCPUとメモリからなるコンピュータシ
ステムと、入出力処理を実行する入出力装置とから構成
される情報処理装置において、前記入出力装置に、受け
付けられた入出力要求に対して予想される入出力処理時
間を算出する算出手段と、この算出手段が算出した入出
力処理時間を前記コンピュータシステムに通知する通知
手段とを設け、前記コンピュータシステムに、前記通知
手段により通知された入出力処理時間と前記CPU状態
の退避及び復帰に要する時間とを比較して、前記入出力
装置に対する入出力制御手段の制御方式を、前記入出力
処理時間の方が長ければ割込み方式に切り替え、前記入
出力処理時間の方が短ければポーリング方式切り替え
る切替え手段を設けたものである。
【0007】
【0008】
【実施例】図1は本発明の一実施例を示す情報処理装置
の構成を説明するブロック図である。
【0009】図において、1はメモリとCPUとから構
成されるコンピュータシステム、2はI/O装置で、コ
ンピュータシステム1から発行されるI/O要求を受け
付けるI/O要求受付け手段3,予想されるI/O処理
時間を算出するI/O処理時間算出手段4,算出したI
/O処理手段をコンピュータシステム1に通知するI/
O処理時間通知手段5,実際のI/O処理を実行するI
/O処理手段6,I/O処理の終了をコンピュータシス
テム1に通知するI/O終了通知手段7等から構成され
ている。なお、I/O装置2はコンピュータシステム1
に対して複数個設けられる構成であっても良い。
【0010】10はI/O装置2にI/O要求を行うI
/O要求発行手段、11はI/O処理時間通知手段5に
より通知される処理時間の値を読み出すI/O処理時間
読出し手段、12はI/O処理時間読出し手段11によ
り読み出した値によりI/O制御方式を動的に切り換え
るI/O制御切替え手段、13は切り替え可能な形で実
現された割込み方式I/O制御手段、14は切り替え可
能な形で実現されたポーリング方式I/O制御手段であ
る。
【0011】以下、各部の動作について説明する。
【0012】コンピュータシステム1がI/O装置2を
制御する場合、まず、I/O要求発行手段10でI/O
装置2にI/O要求を発行する。一般には、コンピュー
タシステム1のメモリ空間またはI/O空間等にI/O
装置2のレジスタ(I/O要求受付用)をマップし、I
/O要求発行手段10がマップされた空間にI/O要求
の発行に必要な情報を書き込むことにより、I/O要求
を行う。
【0013】次に、I/O装置2はI/O要求受け付手
段3で、I/O要求発行手段10によりなされたI/O
要求を受け付け、要求の内容を解釈する。そして、I/
O処理時間算出手段4によりI/O処理にかかると、予
想される処理時間を算出し、I/O処理時間通知手段5
によりコンピュータシステム1にI/O処理時間を通知
する。I/O処理時間の算出は、例えばハードディスク
装置の場合には、現在のヘッドの位置からI/O要求の
あったトラック位置までの距離,転送すべきデータのサ
イズ,前記ハードディスクに対しての読出し,書き込み
にかかる時間等から計算して行う。
【0014】コンピュータシステム1への通知は、コン
ピュータシステム1のメモリ空間またはI/O空間等に
I/O装置2のレジスタ(I/O処理時間通知用)をマ
ップし、コンピュータシステム1にその領域を読み出し
てもらうことによって行うことができる。
【0015】I/O処理時間の通知が終ると、I/O装
置2はI/O処理手段6により実際のI/O処理を行
う。それと並行して、コンピュータシステム1は、I/
O処理時間読出し手段11によりI/O処理時間を読み
出し、その値をもとにI/O制御切替え手段12によ
り、割込み方式I/O制御手段13またはポーリング方
式I/O制御手段14のどちらの手段を選択するかを決
定する。この決定には、まずはしきい値となる値を決
めておき、その値よりI/O処理時間が長ければ割込み
方式I/O制御手段13を選択し、短ければポーリング
方式I/O制御手段14を選択するようにする。
【0016】なお、上記しきい値としては、CPU状態
の退避・復帰処理に要する時間が考えられる。何故なら
ば、I/O処理時間がCPU状態の退避・復帰処理に要
する時間よりも短い場合に割込み方式を実行すると、図
2に示すように、ポーリング方式よりもスループットが
落ちる場合があるためである。
【0017】このように構成された情報処理装置におい
て、コンピュータシステム1から入出力装置に入出力要
求が発行されて受け付けられると、I/O処理時間算出
手段4が受け付けられた入出力要求に対して予想される
入出力処理時間を算出し、算出した入出力処理時間がI
/O処理時間通知手段5によりコンピュータシステムに
対して通知されると、I/O制御切替え手段12が通知
された入出力処理時間に基づいて入出力装置に対する入
出力制御手段の制御方式を割込み方式またはポーリング
方式の何れかの方式へ切り替えることにより、システム
全体のスループットを向上させる。
【0018】図2は、図1に示した情報処理装置におけ
るI/O処理のスループットを示す図である。
【0019】図において、T1はI/O処理時間を示
し、TaはCPU状態退避処理時間を示し、Tbは復帰
処理時間を示し、T2はI/O終了後実行すべき処理時
間を示す。
【0020】今、上記各時間の関係がT1<Ta+Tb
の場合、もし、割込み方式を選択すると、I/O処理時
間T1の間、CPUは実行可能な別の処理(図中の処理
P1)を行うこととなり、これを含めて全体の時間は、
T1+Ta+T2+Tbとなる。
【0021】一方、ポーリング方式を選択すると、I/
O処理時間T1の間ポーリング処理を行った後、I/O
終了後実行すべき処理をT2の間実行する。この後、割
込み方式と比較するための処理P1を行ったとすると、
全体の時間は、T1+T2+T1となる。従って、上記
ポーリング方式と割込み方式との処理時間差は、(Ta
+Tb)とT1との差となり、T1<Ta+Tbの場
合、ポーリング方式の方が割込み方式よりも全体の処理
実行時間が、Tx=(Ta+Tb)−Tだけ短いこと
になる。従って、スループットを重視するシステムの場
合には、しきい値をTa+Tbとする。
【0022】しかしながら、よりターンアラウンドを重
視するシステムの場合には、この値に限る必要はない。
この場合、時間Txが小さい値であるうちは、ポーリン
グ方式より割込み方式を選択した方が良い場合もある。
このような場合には、しきい値はTa+Tbより小さく
なる。このように、しきい値の値は、システム設計者が
実現すべきシステムに対する要求に従って任意に決定し
ても良い。
【0023】また、I/O制御切え手段12により割
込み方式I/O制御手段13が選択された場合には、I
/O処理終了時に実行されるべきプログラムのエントリ
を対応する割込みベクタに登録する。この登録は、もし
プログラムのエントリが動的に変更されることがなけれ
ば、あらかじめ静的に行っていても構わない。次に、コ
ンピュータシステム1は、実行可能な別の処理を実行す
る。
【0024】ポーリング方式I/O制御手段14が選択
された場合には、コンピュータシステム1のメモリ空間
またはI/O空間等にマップされたI/O装置2のレジ
スタ(I/O処理終了通知用)をセンスすることによ
り、I/O処理が終了するのを待つ。このポーリング処
理中は、I/O装置2からの割込みを保留するために割
込みをマスクしておく。
【0025】一方、I/O処理手段6で実際のI/O処
理を行っていたI/O装置2は、I/O処理が終了する
と、次に、I/O終了通知手段7によりI/O処理が終
了したことをコンピュータシステム1に通知する。この
通知は、割込み方式I/O制御手段13とポーリング方
式I/O制御手段14の両方に対応させるため、コンピ
ュータシステム1への割込み、そして、I/O処理終了
通知用レジスタの値を変化させることによって行う。
【0026】コンピュータシステム1において、割込み
方式I/O制御手段13が選択されていた場合には、I
/O処理の終了は割込みによって通知される。割込みが
発生すると、対応する割込みベクタに登録されているプ
ログラムに制御が移行し、I/O処理終了時に実行すべ
きプログラムを実行する。
【0027】ポーリング方式I/O制御手段14が選択
されていた場合には、I/O処理の終了は、I/O処理
終了通知用レジスタの値の変化によって通知される。ポ
ーリング処理中だったコンピュータシステム1は、レジ
スタ値の変化を読み取るとポーリング処理を終了し、I
/O処理終了時に実行すべきプログラムを実行する。
【0028】
【発明の効果】以上説明したように、本発明はコンピュ
ータシステムから入出力装置に入出力要求が発行されて
受け付けられると、算出手段が受け付けられた入出力要
求に対して予想される入出力処理時間を算出し、算出し
た入出力処理時間が通知手段によりコンピュータシステ
ムに対して通知されると、切替え手段が通知された入出
力処理時間とCPU状態の退避及び復帰に要する時間と
を比較して、入出力装置に対する入出力制御手段の制御
方式を、入出力処理時間の方が長ければ割込み方式に切
り替え、入出力処理時間の方が短ければポーリング方式
切り替えるように構成したので、入出力制御手段の制
御方式として、割込み方式またはポーリング方式のうち
常にスループットのよい方が利用され、システム全体の
入出力処理効率を格段に向上できるという効果を奏す
る。
【図面の簡単な説明】
【図1】本発明の一実施例を示す情報処理装置の構成を
説明するブロック図である。
【図2】図1に示した情報処理装置におけるI/O処理
のスループットを示す図である。
【符号の説明】
1 コンピュータシステム 2 I/O装置 3 I/O要求受付け手段 4 I/O処理時間算出手段 5 I/O処理時間通知手段 6 I/O処理手段 7 I/O終了通知手段 10 I/O要求発行手段 11 I/O処理時間読出し手段 12 I/O制御切替え手段 13 割込み方式I/O制御手段 14 ポーリング方式I/O制御手段

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】 所定の演算処理を実行するCPUとメモ
    リからなるコンピュータシステムと、入出力処理を実行
    する入出力装置とから構成される情報処理装置におい
    て、 前記入出力装置に、受け付けられた入出力要求に対して
    予想される入出力処理時間を算出する算出手段と、 この算出手段が算出した入出力処理時間を前記コンピュ
    ータシステムに通知する通知手段とを設け、 前記コンピュータシステムに、前記通知手段により通知
    された入出力処理時間と前記CPU状態の退避及び復帰
    に要する時間とを比較して、前記入出力装置に対する入
    出力制御手段の制御方式を、前記入出力処理時間の方が
    長ければ割込み方式に切り替え、前記入出力処理時間の
    方が短ければポーリング方式切り替える切替え手段を
    設けたことを特徴とする情報処理装置。
JP19615992A 1992-06-30 1992-06-30 情報処理装置 Expired - Fee Related JP3263135B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP19615992A JP3263135B2 (ja) 1992-06-30 1992-06-30 情報処理装置
DE69321167T DE69321167T2 (de) 1992-06-30 1993-06-28 Datenverarbeitungssystem
EP93305039A EP0577370B1 (en) 1992-06-30 1993-06-28 Information processing system
US08/517,654 US5535418A (en) 1992-06-30 1995-08-22 Information processing system with selection of input/output processing control according to precalculated input/output processing time

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP19615992A JP3263135B2 (ja) 1992-06-30 1992-06-30 情報処理装置

Publications (2)

Publication Number Publication Date
JPH0619823A JPH0619823A (ja) 1994-01-28
JP3263135B2 true JP3263135B2 (ja) 2002-03-04

Family

ID=16353192

Family Applications (1)

Application Number Title Priority Date Filing Date
JP19615992A Expired - Fee Related JP3263135B2 (ja) 1992-06-30 1992-06-30 情報処理装置

Country Status (4)

Country Link
US (1) US5535418A (ja)
EP (1) EP0577370B1 (ja)
JP (1) JP3263135B2 (ja)
DE (1) DE69321167T2 (ja)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5935217A (en) * 1994-04-19 1999-08-10 Canon Kabushiki Kaisha Network system in which a plurality of image processing apparatuses are connected
JP3199966B2 (ja) * 1994-11-21 2001-08-20 キヤノン株式会社 情報処理装置及びそのプリンタ選択方法
FR2728369B1 (fr) * 1994-12-19 1997-01-31 Sgs Thomson Microelectronics Procede et dispositif pour accroitre la securite d'un circuit integre
JPH08249008A (ja) * 1995-03-09 1996-09-27 Toyota Motor Corp 等価回路参照型制御装置と制御方法
US5826106A (en) * 1995-05-26 1998-10-20 National Semiconductor Corporation High performance multifunction direct memory access (DMA) controller
US5805787A (en) * 1995-12-29 1998-09-08 Emc Corporation Disk based disk cache interfacing system and method
EP0903670A1 (en) * 1997-09-19 1999-03-24 Hewlett-Packard Company Improved peripheral device control in data processing systems
US6353845B1 (en) * 1998-06-25 2002-03-05 International Business Machines Corporation Computer system, program product and method for tracking asynchronous I/O with timeout support
JP3411238B2 (ja) * 1999-06-14 2003-05-26 インターナショナル・ビジネス・マシーンズ・コーポレーション 復帰時間予測方法、復帰時間予測装置及びハードディスクドライブ
US6557055B1 (en) * 1999-10-06 2003-04-29 Apple Computer, Inc. Adaptive throughput optimization
US20060112208A1 (en) * 2004-11-22 2006-05-25 International Business Machines Corporation Interrupt thresholding for SMT and multi processor systems
JP4387970B2 (ja) 2005-03-31 2009-12-24 富士通株式会社 データ入出力プログラム,装置,および方法
JP5349816B2 (ja) * 2008-03-18 2013-11-20 富士通株式会社 回線監視装置及び回線監視方法
US8245229B2 (en) * 2008-09-30 2012-08-14 Microsoft Corporation Temporal batching of I/O jobs
US8479214B2 (en) * 2008-09-30 2013-07-02 Microsoft Corporation Hardware throughput saturation detection
US8346995B2 (en) 2008-09-30 2013-01-01 Microsoft Corporation Balancing usage of hardware devices among clients
JP5473643B2 (ja) * 2010-02-04 2014-04-16 キヤノン株式会社 電源装置及びそれを使用する画像形成装置
JP5676945B2 (ja) 2010-07-08 2015-02-25 キヤノン株式会社 電子装置、電子装置の素子分離方法、電子装置の製造方法、及び電子装置を備えた表示装置
WO2013176304A1 (en) * 2012-05-23 2013-11-28 Taejin Info Tech Co., Ltd. Polling-driven device driver interface
US9846657B2 (en) * 2015-02-06 2017-12-19 Mediatek Inc. Electronic device for packing multiple commands in one compound command frame and electronic device for decoding and executing multiple commands packed in one compound command frame
KR102335649B1 (ko) 2015-06-09 2021-12-03 한화테크윈 주식회사 데이터 처리 장치 및 방법
JP7080623B2 (ja) 2017-11-29 2022-06-06 キヤノン株式会社 電源装置及び画像形成装置
JP6914900B2 (ja) 2018-09-18 2021-08-04 株式会社東芝 スイッチ装置、スイッチング方法及びプログラム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63159960A (ja) * 1986-12-24 1988-07-02 Fujitsu Ltd 割込みタイミング制御方式
DE69124878T2 (de) * 1990-08-31 1997-10-23 Advanced Micro Devices Inc Übertragungssteuerungsvorrichtung für Rechnersysteme

Also Published As

Publication number Publication date
JPH0619823A (ja) 1994-01-28
US5535418A (en) 1996-07-09
DE69321167T2 (de) 1999-03-04
DE69321167D1 (de) 1998-10-29
EP0577370B1 (en) 1998-09-23
EP0577370A1 (en) 1994-01-05

Similar Documents

Publication Publication Date Title
JP3263135B2 (ja) 情報処理装置
EP0313097B1 (en) Microcomputer system including master processor and slave processor
JP2005050208A (ja) マルチタスクシステムにおけるメモリ管理方式およびタスク制御装置
EP0239078A2 (en) Register saving/restoring system
US5594880A (en) System for executing a plurality of tasks within an instruction in different orders depending upon a conditional value
JPH01124031A (ja) マイクロ・コンピュータ
JPH07104830B2 (ja) コンピュータ・システム及びコンピュータ・システムを作動させる方法
JP2665836B2 (ja) 液晶表示制御装置
JP2723847B2 (ja) マイクロプロセッサ
JP2007087244A (ja) コプロセッサ及びコンピュータシステム
JPS6148741B2 (ja)
JPH0520247A (ja) チヤネルシステム
JP3900660B2 (ja) シーケンスコントローラ
JPH0447350A (ja) 主記憶読み出し応答制御方式
JPH03111961A (ja) マルチcpuのプログラムロード方式
JPH0323942B2 (ja)
JPH0644193A (ja) I/oレジスタアクセス方式
JPH02133827A (ja) 情報処理装置
JPH08123725A (ja) ライトバック式キャッシュシステム
JPH10171670A (ja) タスク切り替え装置及びタスク切り替えプログラムを記録した媒体
JPH0820934B2 (ja) ディスクキャッシュ制御方式
JPH0258648B2 (ja)
JPH02259838A (ja) プロセッサシステム
JPS62276634A (ja) 仮想計算機システム
JPH04307652A (ja) マルチプロセッサ間通信方式

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees