JP5158576B2 - 入出力制御システム、入出力制御方法、及び、入出力制御プログラム - Google Patents
入出力制御システム、入出力制御方法、及び、入出力制御プログラム Download PDFInfo
- Publication number
- JP5158576B2 JP5158576B2 JP2009517771A JP2009517771A JP5158576B2 JP 5158576 B2 JP5158576 B2 JP 5158576B2 JP 2009517771 A JP2009517771 A JP 2009517771A JP 2009517771 A JP2009517771 A JP 2009517771A JP 5158576 B2 JP5158576 B2 JP 5158576B2
- Authority
- JP
- Japan
- Prior art keywords
- input
- output
- information
- cache
- request
- 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
Links
- 238000000034 method Methods 0.000 title claims description 652
- 230000008569 process Effects 0.000 claims description 564
- 238000012545 processing Methods 0.000 claims description 262
- 230000004044 response Effects 0.000 claims description 31
- 230000010365 information processing Effects 0.000 claims description 15
- 238000006243 chemical reaction Methods 0.000 claims description 5
- 238000012544 monitoring process Methods 0.000 claims 3
- 238000010422 painting Methods 0.000 claims 1
- 238000011084 recovery Methods 0.000 claims 1
- 238000007726 management method Methods 0.000 description 153
- 230000007246 mechanism Effects 0.000 description 26
- 238000010586 diagram Methods 0.000 description 24
- 230000004043 responsiveness Effects 0.000 description 19
- 230000006870 function Effects 0.000 description 18
- 238000012546 transfer Methods 0.000 description 12
- 230000015556 catabolic process Effects 0.000 description 11
- 238000006731 degradation reaction Methods 0.000 description 11
- FFBHFFJDDLITSX-UHFFFAOYSA-N benzyl N-[2-hydroxy-4-(3-oxomorpholin-4-yl)phenyl]carbamate Chemical compound OC1=C(NC(=O)OCC2=CC=CC=C2)C=CC(=C1)N1CCOCC1=O FFBHFFJDDLITSX-UHFFFAOYSA-N 0.000 description 8
- 238000013507 mapping Methods 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 238000010187 selection method Methods 0.000 description 5
- 238000001514 detection method Methods 0.000 description 4
- 238000013519 translation Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000002730 additional effect Effects 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 235000019580 granularity Nutrition 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
- G06F12/0868—Data transfer between cache memory and other subsystems, e.g. storage devices or host systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0804—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0842—Multiuser, multiprocessor or multiprocessing cache systems for multiprocessing or multitasking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/31—Providing disk cache in a specific location of a storage system
- G06F2212/311—In host system
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Programmable Controllers (AREA)
Description
このように、プロセスの応答性は、様々な粒度で存在する。
例えば、プロセス1からの入力要求“1−1”に対して、キャッシュ管理機構1320はキャッシュ領域1310に、キャッシュ領域“1−1”を確保する。そのキャッシュ領域“1−1”上にデータは存在しないため、OS1000はプロセス1のコンテキストのまま、データ入力要求を入出力スケジューラ1400に発行する。入出力スケジューラ1400は、外部記憶装置1600へ入力要求“1−1”を要求し、外部記憶装置1600からデータをキャッシュ領域1310のキャッシュ領域“1−1”へ転送する。OS1000は、読み込んだデータをプロセスへ返答する、すなわち、プロセス空間へコピー、マッピングすることで読込要求は完了する。
プロセス1からの出力要求“1−3”に対して、キャッシュ管理機構1320はキャッシュ領域1310に、キャッシュ領域“1−3”を確保する。書き込むデータをプロセス空間からキャッシュ領域1310のキャッシュ領域“1−3”へコピーすることで出力要求に対する処理は完了する。プロセスから見て、出力処理はキャッシュ1300への出力のみで終了するため、高速に出力処理を実行することができる。一方、実際に外部記憶装置1600へ出力結果、すなわち、更新データを反映させるのは、ライトバックプロセス1500が行う。
この出力の場合、ライトバックプロセス1500は、ライトバックプロセス1500のコンテキストとして、出力要求を入出力スケジューラ1400へ発行する。OS1000は、その入力要求を発行した現在動作中のプロセスとしてライトバックプロセスの情報を保持している。そのため、入出力スケジューラ1400はその出力要求を受信するとき、プロセス情報をライトバックプロセスと特定する。すなわち、出力要求を発した大元のプロセス情報を特定することができない。例えば、上記の例(出力要求“RB(1−3)”では、出力要求の要求元のプロセス=ライトバックプロセスと特定し、大元のプロセスID=1を特定することができない。更に、キャッシュ領域1310に格納されたデータそのものは、どのプロセスによるデータかを示すプロセス情報(例示:プロセスID)を含んでいない。そのため、データそのものからも大元のプロセスID=1を特定することができない。
このように、出力要求RB(x−y)は、ライトバックプロセスによる出力要求と特定されるため、入出力スケジューラ1400は、既述のように、プロセス(例示:プロセスID)に応じた優先度等を用いた入出力制御を実行することができなくなる。従って、図1に示されるような場合では、プロセスの優先度等に応じて、出力要求に関する処理を実行することができない。すなわち、入出力スケジューラによる出力に関する処理の応答性を向上させることができない。
一方、図2Bを参照すると、出力の場合、ライトバックプロセス1500は、プロセス1、2、3からの出力要求を一元化してライトバックプロセス1500からの出力要求として、入出力スケジューラ1400へ発行する。そのとき、入出力スケジューラ1400は、出力の要求元情報として、出力を要求するプロセスをライトバックプロセスと特定する。そのため、入出力スケジューラ1400は、要求元情報としてプロセスIDを知ることができず、プロセスIDに応じた優先度等を用いた出力制御を実行することができない。この図では、例えば、出力処理を出力要求の古い順やアドレスの近い順などで行うことになる。
本発明の入出力制御システム、入出力制御方法、及び、入出力制御プログラムの第1の実施例について、添付図面を参照して説明する。なお、本発明に関し、キャッシュを用いた入出力において、プロセスの入出力に関する情報を伝達することを主に説明するために、キャッシュ制御、および、キャッシュからの入出力要求生成に関わる構成要素を主に説明する。
本発明の入出力制御システム、入出力制御方法、及び、入出力制御プログラムの第2の実施例について、添付図面を参照して説明する。
ただし、プログラム(プロセス)からの入出力要求は、入出力の要求を示す情報、及び、プロセスを特定する情報を含む。入出力の要求を示す情報は、リクエスト識別子、データ位置や量、入出力バッファ(キャッシュ領域を含む)等の位置に例示される。プロセスを特定する情報は、入出力先識別子に例示され、プロセスグループIDやプロセスのIDのようなプロセスグループやプロセスの識別子、入出力の優先度を含んでいても良い。
入出力特定情報記憶部111の管理方法として、例えば、キャッシュ領域を表す情報と入出力特定情報とを対応(関連)付けた管理表を作成して記憶することができる。また、入出力特定情報記憶部111の管理方法の別の例として、OSがキャッシュを管理している管理構造体の中に、パラメータとして入出力特定情報を加えることができる。その場合、例えば、メモリ管理構造体のキャッシュ領域を示すアドレススペース構造体やページ構造体に、プロセスやプロセスグループの識別子を関連付けるように加える方法が考えられる。
ライトバック部120は、背景技術のライトバックプロセス1500と概ね同様である。しかし、更新データの選択として、入出力特定情報記憶部111に記憶されている入出力特定情報を参照することができる点で異なる。すなわち、例えば、入出力特定情報から特定のプロセスの識別子を抽出することにより、特定のプロセスに対するキャッシュ領域のみを選択する手法が実現できる。選択されたキャッシュ領域のみにおいて出力処理することで、実質的に出力要求に優先度を持たせることができる。さらに、上記の入出力特定情報を用いて更新データ選択手法と従来の更新データ選択手法を組み合わせた手法も、更新データの選択手法となる。ライトバック部120は、外部記憶装置へのデータ出力要求を入出力特定情報復元部130に発行する。
また、別の入出力情報の復元方法としては、例えば、入出力スケジューリング部300へのインタフェース(API)にラッパープログラムとして変換部を用意し、入出力スケジューリング部300がプロセスコンテキストから入出力特定情報を読み取ろうとするときに、データをキャッシュへ出力したプロセスの入出力特定情報に変換して受け渡す方法も挙げられる。
復元する入出力特定情報の選択としては、例えば、出力要求の対象となっているキャッシュ領域に対して合計容量の割合の一番高い入出力特定情報を選択することができる。復元する入出力特定情報の選択の別の例として、出力要求の対象となっているキャッシュ領域に対して入出力優先度が一番高い、すなわち、一番優先する入出力特定情報を選択することができる。復元する入出力特定情報の選択の別の例として、出力要求の対象となっているキャッシュ領域に対して最後に更新したキャッシュ領域に対する入出力特定情報を選択することができる。
入力要求時には、スループット向上のために、データ読込パターンを予測し先行して読み出しておく、一般に「先読み」と呼ばれる技術を適用する場合もある。本説明では、これは入力要求発行時に入出力要求部200にて適用されているものとし、その後のキャッシュ確保と外部記憶からのデータ読み出し部分について説明する。
ステップS101にて、キャッシュ上にデータ領域が未だ確保されていない場合(ステップS101:NO)、キャッシュ管理部110は、空きメモリ領域から新規キャッシュ領域を確保し、該当データ領域としてキャッシュ管理情報に登録する(ステップS102)。
ステップS101にて、キャッシュ上にデータ領域が既に確保されている場合(ステップS101:YES)、キャッシュ管理部110は当該キャッシュ上に既にデータが存在するかどうかをチェックする(ステップS103)。
ステップS103にて、データ領域に対応するキャッシュ上のデータが存在しない場合(ステップS103:NO)、又は、ステップS102で新規キャッシュ領域を確保した場合、そのキャッシュ領域にデータを転送するために、キャッシュ管理部110は、外部出力装置に対するデータ入力要求を入出力スケジューリング部300へ発行する。その後、入出力要求スケジューリング部300を経て、外部出力からデータの伝送が終了する応答が到着するまで、待機状態に入る(ステップS104)。
ステップS103にて、データ領域に対応するキャッシュ上にデータが存在した場合、もしくは、ステップS104にて、キャッシュ上へのデータの転送が完了した場合、キャッシュ管理部110は、該当キャッシュからプロセス空間(プログラム)へデータを転送する(ステップS105)。
これにて、データの入力処理が完了する。
データ出力要求がプログラムの入出力要求部200から発行された場合、キャッシュ管理部110は、要求されたデータ領域が既に確保されているかどうかをチェックする(ステップS201)。
ステップS201において、キャッシュ上にデータ領域が存在しない場合(ステップS201:NO)、キャッシュ管理部110は空きメモリ領域から新規キャッシュ領域を確保し、該当データ領域として管理情報に登録する(ステップS202)。ここで、管理情報は、対応表(マッピングテーブル)に例示される。キャッシュ管理部110は、新規キャッシュ領域を確保した後、必要に応じてデータ入力要求を発行し、キャッシュ上のデータを補完する(ステップS203)。
ステップS201において、キャッシュ上にデータ領域が存在している場合(ステップS201:YES)、または、ステップS202、S203を経てキャッシュ上にデータ領域を確保した場合、キャッシュ管理部110はデータをプロセス空間からキャッシュへ転送する(ステップS204)。
キャッシュ管理部110は、出力先のキャッシュ領域と入出力特定情報とを関連付けて、入出力特定情報記憶部111に記憶する(ステップS205)。
これにより、データの出力処理が完了する。
ライトバック処理は、前述した種々のタイミングを契機に処理を開始する。更新データを反映させる容量などもタイミングに対する設定に従って決定する。ライトバック処理要求のタイミングを契機に、ライトバック部120は起動する(フローチャート開始)。
ライトバック部120は、キャッシュ管理部110の管理情報(例示:対応表(マッピングテーブル))を参照して、LRUなど前述の種々のポリシーに基づいて、キャッシュ上から更新すべきデータ領域を回収する(ステップS301)。このとき、入出力特定情報も入出力特定情報記憶部111で記憶しているため、入出力特定情報を参照して更新データ領域の回収に利用することも可能になる。例えば、特定のプロセスに関わるキャッシュ領域のみを回収するといったポリシーを持つことが可能になる。
ライトバック部120は、回収したキャッシュ領域に対するデータ出力要求を作成し、入出力特定情報復元部130へ渡す(ステップS302)。
入出力特定情報復元部130は、渡されたデータ出力要求に対して、入出力特定情報記憶部111の情報を参照し、入出力特定情報を復元する(ステップS303)。
例えば、このデータ出力要求を発行するプログラム(ライトバック部120)において、そのライトバック部120を示すプロセスやプロセスグループの識別子、または、入出力優先度を、復元された大元の出力要求元のプロセスの識別子等へ変更する。それにより、入出力スケジューリング部300に対して、ライトバック部120からの出力要求ではなく、更新データを出力したプロセス(大元の出力要求元)からの出力要求であるかのように見せかける。また、別の例では、入出力スケジューリング部300へのAPIに対して、上記復元された入出力特定情報を見せかけるためのラッパーAPIを設定する。
入出力特定情報復元部130は、入出力特定情報復元後に、入出力要求スケジューリング部300へデータ出力要求を発行する(ステップS304)。それにより、入出力要求スケジューリング部300は、復元された入出力特定情報に対応したプロセスによる出力要求として出力処理を実行する。従って、入出力要求スケジューリング部300は、その所定のプロセスに対応した優先度等に基づく出力制御を実行することができる。
その後、入出力特定情報復元部130は、ステップS303にて行った入出力特定情報復元において、後の処理に影響する情報変換を元の情報へ戻す(ステップS305)。
例えば、データ出力要求を発行するプログラム(ライトバック部120)のプロセスの識別子を変更した場合、その後のプロセス管理において同一番号プロセスが存在するという悪影響を起こす。そのため、プロセスの識別子を元のデータ出力要求を発行するプログラム(ライトバック部120)のプロセスの識別子に戻すという後処理を行う。
ライトバック部120、および、入出力特定情報復元部130は、ステップS301乃至S305までを行い、最初に決定された容量のキャッシュからのデータ出力要求が行われているか否かを判断する(ステップS306)。そして、最初に決定された容量のキャッシュからのデータ出力要求が行われていない場合(ステップS306:NO)、再度、探索範囲を変える、各種パラメータを変更するなどして、外部出力装置へのデータ反映条件を変更してステップS301乃至S305を繰り返す。
ステップS306において、決定された容量のキャッシュからのデータ出力要求が行われた場合、更新データがキャッシュ上にない場合、又は、一定回数のキャッシュ領域の探索が終了した場合(ステップS306:YES)、繰り返しを終了する。
最後に、ライトバック部120は、データ出力に対する外部記憶装置の応答を待ち、更新フラグをクリアする(ステップS307)。
これにより、キャッシュ上の更新データを外部記憶装置へ反映させるライトバック処理が完了する。
本実施例では、入出力特定情報をキャッシュに関連付けて記憶し、キャッシュから外部記憶装置への反映時に復元するというように構成されているため、キャッシュを用いたデータの出力においても、入出力スケジューリング部へ正しく入出力特定情報を伝播することができる。これにより、キャッシュを用いた入出力においても設定した入出力スケジューリングの機能を提供でき、性能低下、応答性低下を回避することができる。
本発明の入出力制御システム、入出力制御方法、及び、入出力制御プログラムの第3の実施例について、添付図面を参照して説明する。図9は、本発明の入出力制御システムの第3の実施例の構成を示すブロック図である。入出力制御システムは、入出力制御プログラムとしてのキャッシュ管理部140と、ライトバック部120と、入出力特定情報復元部130とを具備する。パーソナルコンピュータに例示される情報処理装置に、本発明の入出力制御プログラム(入出力制御方法)がインストールされて、本発明の入出力制御システムとして機能する。
キャッシュ確保制御部142は、入出力特定情報記憶部141、および、キャッシュ管理部140に管理されているキャッシュに関する情報を参照して、キャッシュ領域の使用状況を把握する。キャッシュ領域の使用状況とは、キャッシュ領域をプロセスや外部記憶装置、またはその組合せや全体においてどのように利用しているかという情報である。キャッシュ領域の使用状況の情報としては、例えば、キャッシュ容量、使用キャッシュ容量、使用キャッシュ割合、予め確保されているキャッシュ領域、最大キャッシュ容量設定値、新規キャッシュとして確保できる容量などが挙げられる。特に、入出力特定情報記憶部141の入出力特定情報を参照すれば、キャッシュ領域とプロセスやプロセスグループとの関係が分かるので、プロセスごとやプロセスグループごとのキャッシュ領域の使用状況を把握することができる。
キャッシュ確保制御部142は、参照し、計算したキャッシュ使用状況を基に、新規キャッシュが確保できるかどうかを判定する(ステップS402)。
新規キャッシュ確保ができない場合(ステップS402:NO)、キャッシュ確保制御部142は、ライトバック部120へキャッシュ領域解放の契機を促す(ステップS403)。キャッシュ確保制御部142は、キャッシュ解放処理を待つ(ステップS404)。キャッシュ確保制御部142は、キャッシュ解放待機後、再び、キャッシュ使用状況を取得し、キャッシュ確保が可能かどうかの判定に移る(ステップS401、S402)。
新規キャッシュ確保ができる場合(ステップS402:YES)、対象キャッシュ領域に新規キャッシュ領域を確保する(ステップS405)。
以上の処理により、キャッシュ確保処理を実行する。
本実施例では、キャッシュ確保処理に対して、キャッシュの使用状況を反映させることができる構成をとることで、第2の実施例の効果に加えて、前述した単一プロセスのキャッシュ占有による性能低下も防ぐことができる。
本発明の入出力制御システム、入出力制御方法、及び、入出力制御プログラムの第4の実施例について、添付図面を参照して説明する。
なお、上記技術は、入力の場合にも同様に適用できる。
すなわち、本実施例は、第2の実施例と比較して、キャッシュ管理部150、入出力特定情報記憶部151、プロセス生成部170、入出力処理プロセス生成部171、及び、入出力処理プロセス管理部180が異なる。従って、それら各部について説明する。なお、その他の点は、第2の実施例と同じであるのでその説明を省略する。
なお、処理の終了した処理プロセスの発生は、キャッシュ管理部150の有する対応表を参照して判断することも可能である。
入出力特定情報記憶部151は、入出力特定情報記憶部111と同様に、キャッシュ領域情報と入出力特定情報とを関連付けて記憶する。ここで、入出力特定情報として、処理プロセスの識別子の代わりに入出力処理プロセスの識別子を記憶することもできる。入出力処理プロセスの識別子を記憶させる場合、キャッシュ管理部150は、入出力処理プロセス管理部180へ処理プロセスの識別子に対する入出力処理プロセスの識別子を問い合わせる。
データ入力要求が処理プロセスの入出力要求部200から発行された場合、キャッシュ管理部150は、要求されたデータ領域が既に確保されているかどうかをチェックする(ステップS501)。
ステップS501にて、キャッシュ上にデータ領域が未だ確保されていない場合(ステップS501:NO)、キャッシュ管理部150は、空きメモリ領域から新規キャッシュ領域を確保し、該当データ領域としてキャッシュ管理情報(例示:対応表(マッピングテーブル))に登録する(ステップS502)。
ステップS501にて、キャッシュ上にデータ領域が既に確保されている場合(ステップS501:YES)、キャッシュ管理部150は当該キャッシュ上に既にデータが存在するかどうかをチェックする(ステップS503)。
ステップS503にて、データ領域に対応するキャッシュ上のデータが存在しない場合(ステップS503:NO)、又は、ステップS502で新規キャッシュ領域を確保した場合、そのキャッシュ領域にデータを転送するために、キャッシュ管理部150は、外部出力装置に対するデータ入力要求を作成し、入出力処理プロセス選択部160へ発行する(ステップS504)。
入出力処理プロセス選択部160は、外部出力装置に対するデータ入力要求を受信した場合、処理プロセスの識別子に基づいて、入出力処理プロセス管理部180へ、対応する入出力処理プロセスの識別子を問い合わせる(ステップS505)。
入出力処理プロセス管理部180は、管理表を参照して、処理プロセスの識別子に対応する入出力処理プロセスの識別子を入出力処理プロセス選択部160へ回答する。入出力処理プロセス選択部160は、入出力処理プロセス管理部180から回答された入出力処理プロセスの識別子の入出力処理プロセスへ、外部出力装置に対するデータ入力要求を発行する(ステップS506)。
入出力処理プロセスは、受信した外部出力装置に対するデータ入力要求を、自身からの入力要求として発行する。それにより、入出力要求スケジューリング部300は、入出力処理プロセスによる入力要求として入力処理を実行する。そのとき、入出力処理プロセスが所定の処理プロセスに対応しているので、入出力要求スケジューリング部300は、その所定の処理プロセスに対応した優先度等に基づく入力制御を実行することができる。その後、入出力要求スケジューリング部300を経て、外部出力からデータの伝送が終了する応答が到着するまで、待機状態に入る(ステップS507)。
ステップS503にて、データ領域に対応するキャッシュ上にデータが存在した場合(ステップS503:YES)、もしくは、ステップS507にて、キャッシュ上へのデータの転送が完了した場合、キャッシュ管理部150は、該当キャッシュからプロセス空間へデータを転送する(ステップS508)。
キャッシュ管理部150は、キャッシュ領域と入出力特定情報を、入出力特定情報記憶部151を介して記憶する。入出力特定情報として入出力処理プロセスの識別子を記憶する場合は、S505のステップと同じ処理を行い、入出力処理プロセスの識別子に変換する(ステップS509)。
以上で、データの入力処理が完了する。
ライトバック処理要求のタイミングを契機に、ライトバック部120は起動する(フローチャート開始)。
ライトバック部120は、キャッシュ管理部150の管理情報を参照して、前述の種々のポリシーを基に、キャッシュ上から更新すべきデータ領域を回収する(ステップS601)。ライトバック部120は、回収したキャッシュ領域に対するデータ出力要求を作成し、入出力処理プロセス選択部160へ発行する(ステップS602)。
入出力処理プロセス選択部160は、受信したデータ出力要求に対して、入出力特定情報記憶部151の情報を参照し、データ出力要求に対する主要処理プロセスを特定する。そして、処理プロセスの識別子に基づいて、入出力処理プロセス管理部180へ、対応する入出力処理プロセスの識別子を問い合わせる。入出力処理プロセス管理部180は、管理表を参照して、処理プロセスの識別子に対応する入出力処理プロセスの識別子を入出力処理プロセス選択部160へ回答する。一方、入出力特定情報として入出力処理プロセスの識別子が記憶されている場合、入出力特定情報記憶部151の情報を参照し、主要な入出力処理プロセスを決定する(ステップS603)。
入出力処理プロセス選択部160は、回答、または、決定された入出力処理プロセスの識別子の入出力処理プロセスへ外部出力装置に対するデータ出力要求を発行する(ステップS604)。
入出力処理プロセスは、受信した外部出力装置に対するデータ入力要求を、自身からの出力要求として発行する(ステップS605)。それにより、入出力要求スケジューリング部300は、入出力処理プロセスによる出力要求として出力処理を実行する。そのとき、入出力処理プロセスが所定の処理プロセスに対応しているので、入出力要求スケジューリング部300は、その所定の処理プロセスに対応した優先度等に基づく出力制御を実行することができる。
ライトバック部120、および、入出力処理プロセス選択部160は、ステップS601乃至S605までを行い、最初に決定された容量分のキャッシュからのデータ出力要求が行われていない場合(ステップS606:NO)、再度、探索範囲を変える、各種パラメータを変更する等をして、外部出力装置へのデータ反映条件を変更してステップS301乃至S305を繰り返す。
ステップS606において、決定された容量のキャッシュからのデータ出力要求が行われた場合、更新データがキャッシュ上にない場合、又は、一定回数のキャッシュ領域の探索が終了した場合(ステップS606:YES)、繰り返しを終了する。
最後に、ライトバック部120は、データ出力に対する外部記憶装置の応答を待ち、更新フラグをクリアする(ステップS607)。
以上により、キャッシュ上の更新データを外部記憶装置へ反映させるライトバック処理が完了する。
プロセス生成部170は、プロセス生成システムコールを、例えば、アプリケーションから受信したとき、既存のプロセス生成処理、すなわち、処理プロセスの生成を行う。(ステップS701)
プロセス生成部170は、入出力処理プロセス生成部171を呼び出し、入出力処理プロセス生成に入る。入出力処理プロセス生成部171は、生成された処理プロセスに対して、対となる入出力処理プロセスが生成されていないかチェックする(ステップS702)。これは、プロセスグループごとに入出力処理プロセスが生成される場合に起こりうる。一つの入出力処理プロセスは、複数の処理プロセスに対して生成されるからである。処理プロセスに対して、必ず対となる入出力処理プロセスが生成される場合、ステップS702を省略しても良い。
対となる入出力処理プロセスが生成されていない場合(ステップS702:NO)、入出力処理プロセス生成部171は入出力処理プロセスを生成する。(ステップS703)
入出力処理プロセス生成部171は、処理プロセスと対となる入出力処理プロセスの識別情報を入出力処理プロセス管理部180へ発行し、入出力処理プロセス管理部180は、処理プロセスと、対となる入出力処理プロセスの識別情報との対応関係を記録する(ステップS704)。
以上により、プロセス生成処理が完了する。
入出力処理プロセス終了の判定は、何らかのイベントが発生じたときに動作する。発生イベントの例としては、時間間隔、入出力特定情報の変更、キャッシュ情報の変更、処理プロセスの終了等が挙げられる。イベント発生を契機に、入出力処理プロセス管理部180は、入出力処理プロセスに対して、対となる処理プロセスが1つでも存在するかどうかを管理表によりチェックする(ステップS801)。
対となる処理プロセスが1つも存在しない場合、入出力処理プロセス管理部180は、入出力処理プロセスに対して、関係があるキャッシュ領域が存在するかどうかを対応表によりチェックする(ステップS802)。関係があるキャッシュ領域とは、例えば、入出力処理プロセスの対となる処理プロセスが入出力要求を行ったキャッシュ領域のことである。関係があるキャッシュ領域の別の例としては、入出力処理プロセスの対となる処理プロセスが入出力要求を行ったキャッシュ領域で、更新データを保存している領域のことである。
対となる処理プロセスが1つも存在しなく、関係があるキャッシュ領域が存在しない場合は、入出力処理プロセスを終了する(ステップS803)。
ステップS801、および、ステップS802において、対となる処理プロセスが1つも存在した場合、または、関係があるキャッシュ領域が存在した場合は、何も処理しない。
以上により、入出力処理プロセスの終了判定、および、終了処理が完了する。
本実施例では、処理プロセスに対応した入出力処理用のプロセスを明示的に生成させ、必ず入出力処理用のプロセスにより命令を発行させることで、入出力スケジューリング部300へプロセスに対する一定の入出力特定情報を伝播することができる。これにより、キャッシュを用いた入出力においても設定された入出力スケジューリングの機能を提供でき、性能低下、応答性低下を回避することができる。
更に、追加の効果として、入出力処理に対してプロセス情報等の変更を行わないため、一貫したプロセス情報管理下での動作を保証することができる。例えば、プロセスの識別子を変更する必要もなく、入出力スケジューリング部の情報取得APIに対する変更を必要としないため、一貫したプロセスの識別子の管理と、その下での無修正の入出力スケジューリング部で実現することが可能になる。
次に、本発明の第1具体例について説明する。図17は、本発明の入出力制御システムとしての計算機システム装置の具体例を示すブロック図である。入出力制御システムとしての計算機システム装置は、入主記憶装置1、主記憶制御装置2、演算装置3、入出力制御部4、外部記憶装置5及びバス6を具備する。
計算機システム装置を動作させる基盤プログラムであるオペレーティングシステム(OS)11といくつかのプロセス(AP)13とは、例えば外部記憶装置5に記憶されている。そして、それらOS11やAP13は、動作時に、外部記憶装置5から読み出されて主記憶装置1上に展開され、演算装置3により実行される。なお、入出力要求部200はAP13が有している。
キャッシュ14は、主記憶装置1の未使用領域に、キャッシュ領域として確保され、利用される。
なお、図においては、OS11と入出力情報特定プログラム12とを分けているが、入出力情報特定プログラム12はOS11内部に取り込まれ、OS11と一体に動作するものであっても良い。
図18に示される例では、データの入出力要求の表現は、図1の場合と同様に“x−y”、“RB(x−y)”の表現を用いる。また、入出力スケジューラ1400、1500はOS11の機能として実現され、プロセスあたり1要求ごとに均等に処理をする。更に、キャッシュ1300、外部記憶装置1700は、それぞれキャッシュ14、外部記憶装置5に対応する。
キャッシュ領域を制限したとしても、データ出力要求はライトバックプロセスから出力され、入出力スケジューラの段階では一元化され順番に処理されることに変わりはなく、ライトバックプロセスの動作やスケジューリングに大きく影響する。すなわち、制限したキャッシュ領域に対して初期の書込みはキャッシュとして未使用状態であるため、キャッシュ確保問題における性能低下を防ぐことにつながる。しかし、キャッシュ領域を使用しつくした状態からは、すべて外部記憶装置への入出力を伴うことになる。ライトバックプロセスによりデータ出力要求は一元化されて動作することにより、入出力スケジューラが既に保持している他プロセスに対する出力要求を処理しなければ、新たな出力要求に応答することはできない。そのため、キャッシュのときと同様の性能低下、応答性低下を招くことになる。これに対して、本発明を適用すると、従来技術のキャッシュ制限によるキャッシュ領域確保時の他のプロセスからの影響を避けると同時に、入出力スケジューラにおける他のプロセスからの影響を防ぐことができる。
本発明は、2種類の速度の異なる記憶装置が存在する場合に、高速な記憶装置をキャッシュとして利用し、低速な記憶装置に対する入出力を高速化する計算機システムにおいても実現できる。例えば、高速な記憶装置としてUSBメモリやフラッシュメモリなどを利用し、それらをHDDやDVD装置の低速な記憶装置のためのキャッシュとして利用することがあげられる。この場合、第1具体例において、主記憶装置上に確保されていたキャッシュ領域が、高速な記憶装置上に確保されていることに相当する。
キャッシュ14は、高速な外部記憶装置9に、キャッシュ領域として確保され、利用される。
また、別の回路の実現方法として、プログラミング可能なLSIを用いて、本発明のフローチャートの動作するプログラムと入出力特定情報を記憶する記憶スペースをプログラミングすることで実現することができる。例えば、FPGA(Field Programmable Gate Array)などが挙げられる。
入出力スケジューリング部300は、例えば、入出力要求制御回路に組み込まれており、インタフェース24を介して計算機システムから要求された外部記憶装置への入出力を、入出力特定情報を基に要求順序を入れ替えたりすることができる。
また、別の例として、外部記憶装置5の機能として実施することができる。
同様に、記憶媒体を一時記憶場所として利用する全ての入出力装置において、管理部に本発明を実施することができる。
本発明におけるプログラムは、コンピュータ読取可能な記憶媒体に記録され、その記憶媒体から情報処理装置に読み込まれても良い。
Claims (33)
- 第1記憶部及び第2記憶部を具備し、前記第1記憶部の一部または全部をキャッシュ領域として用い、入出力処理を行う情報処理装置の入出力制御システムであって、
前記第2記憶部に入出力するデータを第前記キャッシュ領域へ記憶するキャッシュ管理部と、
前記キャッシュ領域に記憶されたデータのデータ領域と、前記入出力に関する情報とを関連付けて記憶する入出力特定情報記憶部と、
前記キャッシュ領域前記データ領域から前記第2記憶部への前記データの出力要求を生成するライトバック部と、
前記生成された出力要求の対象であるデータのデータ領域に関連付けられた入出力に関する情報を、前記入出力特定記憶部を参照して、特定し、前記ライトバック部の動作により特定できなくなった入出力に関する情報を前記第2記憶部の入出力処理部へ伝達する入出力特定部とを備え、
前記入出力に関する情報は、前記入出力の発行元を特定する情報、前記入出力の発行元に応じた優先度のいずれか一つを少なくとも含む
入出力制御システム。 - 請求項1に記載の入出力制御システムにおいて、
前記入出力特定部が、
前記出力要求に応答して、前記データ領域に基づいて、前記入出力特定情報記憶部を参照して、前記ライトバック部の動作により特定できなくなった入出力に関する情報を復元する入出力特定情報復元部であり、
前記入出力に関する情報を復元することで伝達する
入出力制御システム。 - 請求項2に記載の入出力制御システムにおいて、
復元方法が、関連処理部の情報取得時に前記出力要求に入出力に関する情報を一時的に変更する、または、変換処理を加えることで実現する
入出力制御システム。 - 請求項2又は3に記載の入出力制御システムにおいて、
前記出力要求を、前記復元された入出力に関する情報を参照して、管理する入出力要求管理部を更に備え、
前記入出力特定部は、前記復元された入出力に関する情報に基づいて、前記出力要求に対する処理を決定する
入出力制御システム。 - 請求項4に記載の入出力制御システムにおいて、
前記入出力要求管理部が、入出力をスケジューリングする入出力スケジューリング部、入出力の監視、及び統計をとる入出力モニタ部、入出力のアクセスを制御する入出力アクセスコントロール部のいずれか一つの機能を少なくとも含む
入出力制御システム。 - 請求項2乃至5のいずれか一項に記載の入出力制御システムにおいて、
前記ライトバック部は、前記入出力特定情報記憶部の前記入出力に関する情報を参照して、前記キャッシュ領域から前記第2記憶部へ出力するデータ領域を決定する
入出力制御システム。 - 請求項1に記載の入出力制御システムにおいて、
前記入出力に関する情報は、前記入出力を発行したプロセス又はプロセスグループを特定する情報、入出力優先度第2記憶部のいずれか一つを少なくとも含む
入出力制御システム。 - 請求項1に記載の入出力制御システムにおいて、
プロセスを生成するプロセス生成部に含まれ、前記プロセスに対応する入出力要求発行を担当する入出力処理プロセスを生成する入出力処理プロセス生成部と、
前記プロセスと前記入出力処理プロセスとを関連付けて管理する入出力処理プロセス管理部とを更に備え、
前記入出力特定部が、
前記出力要求に応答して、前記データ領域に基づいて、前記入出力特定情報記憶部及び前記入出力処理プロセス管理部を参照して、前記入出力に関する情報に対応し前記プロセスに対応する前記入出力処理プロセスを選択する入出力処理プロセス選択部であり、
選択された前記入出力処理プロセスが、前記出力要求を発行することにより、前記入出力に関する情報を対応する入出力処理プロセスに関連付けることで伝達する
入出力制御システム。 - 請求項8に記載の入出力制御システムにおいて、
前記入出力特定部が、
前記プロセスによる入力要求の応答に関しても、前記データ領域に基づいて、前記入出力処理プロセス管理部を参照して、前記プロセスに対応する前記入出力処理プロセスを選択する入出力処理プロセス選択部であり、
選択された前記入出力処理プロセスが、前記入力要求を発行することにより、前記入出力に関する情報を対応する入出力処理プロセスに関連付けることで伝達する
入出力制御システム。 - 請求項8又は9に記載の入出力制御システムにおいて、
前記入出力要求を、前記選択された入出力処理プロセスの処理として管理する入出力要求管理部を更に備え、
前記入出力要求管理部は、前記プロセスと前記入出力処理プロセスとが関連付けられていることにより、前記入出力処理プロセスの入出力を、間接的に前記プロセスの入出力として管理することが可能である
入出力制御システム。 - 請求項8乃至10のいずれか一項に記載の入出力制御システムにおいて、
前記ライトバック部は、前記入出力特定情報記憶部の前記入出力に関する情報を参照して、前記キャッシュ領域から前記第2記憶部へ出力する記憶領域を決定する
入出力制御システム。 - 請求項8に記載の入出力制御システムにおいて、
前記入出力に関する情報は、前記入出力を発行したプロセス又はプロセスグループを特定する情報、入出力優先度第2記憶部のいずれか一つを少なくとも含む
入出力制御システム。 - 請求項8乃至11のいずれか一項に記載の入出力制御システムにおいて、
前記入出力に関する情報は、前記入出力要求を発行するプロセスを特定する情報を含む
入出力制御システム。 - 請求項13に記載の入出力制御システムにおいて、
前記入出力に関する情報は、入出力処理プロセス又は入出力処理プロセスグループを特定する情報を含む
入出力制御システム。 - 請求項2乃至14のいずれか一項に記載の入出力制御システムにおいて、
前記キャッシュ管理部は、前記キャッシュ領域に前記データを記憶するためのキャッシュを確保するとき、前記入出力特定情報記憶部の前記入出力に関する情報を参照して、前記確保の可否を決定する
入出力制御システム。 - 第1記憶部及び第2記憶部を具備し、前記第1記憶部の一部または全部をキャッシュ領域として用い、入出力処理を行う情報処理装置の入出力制御方法であって、
前記第2記憶部に入出力するデータを、前記キャッシュ領域へ記憶するステップと、
前記キャッシュ領域へ記憶されたデータのデータ領域と、前記入出力に関する情報とを関連付けて入出力特定情報記憶部に記憶するステップと、
前記キャッシュ領域のデータ領域から前記第2記憶部への前記データの出力要求を生成するステップと、
前記生成された出力要求の対象であるデータのデータ領域に関連付けられた入出力に関する情報を、前記入出力特定情報記憶部を参照して、特定し、前記出力要求を生成するステップにより特定できなくなった入出力に関する情報を前記第2記憶部の入出力処理ステップへ伝達するステップとを備え、
前記入出力に関する情報は、前記入出力の発行元を特定する情報、前記入出力の発行元に応じた優先度のいずれか一つを少なくとも含む
入出力制御方法。 - 請求項16に記載の入出力制御方法において、
前記出力要求を生成するステップにより特定できなくなった入出力に関する情報を第2記憶部の入出力処理ステップへ伝達するステップは、
前記出力要求に応答して、前記データ領域に基づいて、前記入出力特定情報記憶部を参照して、前記出力要求を生成するステップにより特定できなくなった入出力に関する情報を復元するステップであり、
前記入出力に関する情報を復元することで伝達する
入出力制御方法。 - 請求項17に記載の入出力制御システムにおいて、
復元方法が、関連処理部の情報取得時に前記出力要求に入出力に関する情報を一時的に変更する、または、変換処理を加えることで実現する
入出力制御方法。 - 請求項16乃至18のいずれか一項に記載の入出力制御方法において、
前記出力要求を、前記復元された入出力に関する情報を参照して、管理するステップを更に備え、
前記特定するステップは、
前記復元された入出力に関する情報に基づいて、前記出力要求に対する処理を決定するステップを更に有する
入出力制御方法。 - 請求項16乃至19のいずれか一項に記載の入出力制御方法において、
前記管理するステップは、
入出力をスケジューリングする、入出力の監視及び統計をとる、入出力のアクセスを制御する、のいずれか一つを少なくとも実行するステップを有する
入出力制御方法。 - 請求項16乃至20のいずれか一項に記載の入出力制御方法において、
前記生成ステップは、
前記入出力特定情報記憶部の前記入出力に関する情報を参照して、前記キャッシュ領域から前記第2記憶部へ出力するデータ領域を決定するステップを有する
入出力制御方法。 - 請求項16に記載の入出力制御方法において、
前記入出力に関する情報は、前記入出力を発行したプロセス又はプロセスグループを特定する情報、入出力優先度第2記憶部のいずれか一つを少なくとも含む
入出力制御方法。 - 請求項16に記載の入出力制御方法において、
プロセスを生成するプロセス生成部に含まれ、前記プロセスに対応する入出力要求発行を担当する入出力処理プロセスを生成するステップと、
前記プロセスと前記入出力処理プロセスとを関連付けて管理するステップとを更に備え、
前記出力要求を生成するステップにより特定できなくなった入出力に関する情報を第2記憶部の入出力処理ステップへ伝達するステップは、
前記出力要求に応答して、前記データ領域に基づいて、前記入出力特定情報記憶部及び前記入出力プロセス管理部を参照して、前記入出力に関する情報に対応し前記プロセスに対応する前記入出力処理プロセスを選択するステップであり、かつ、選択された前記入出力処理プロセスが、前記出力要求を発行するステップとを有し、
選択された前記入出力処理プロセスが、前記出力要求を発行することにより、前記入出力に関する情報を対応する入出力処理プロセスに関連付けることで伝達する
入出力制御方法。 - 請求項23に記載の入出力制御方法において、
前記入出力処理プロセスを選択するステップが、
前記プロセスによる入力要求の応答に関しても、前記データ領域に基づいて、前記入出力処理プロセス管理部を参照して、前記プロセスに対応する前記入出力処理プロセスを選択するステップであり、
選択された前記入出力処理プロセスが、前記入出力要求を発行するステップとを更に備える
入出力制御方法。 - 請求項23又は24に記載の入出力制御方法において、
前記入出力要求を、前記選択された入出力処理プロセスの処理として管理するステップを更に備え、
前記入出力要求を管理するステップは、
前記プロセスと前記入出力処理プロセスとが関連付けられていることにより、前記入出力処理プロセスの入出力を、間接的に前記プロセスの入出力として管理するステップを有する
入出力制御方法。 - 請求項23乃至25のいずれか一項に記載の入出力制御方法において、
前記生成するステップは、
前記入出力特定情報記憶部の前記入出力に関する情報を参照して、前記キャッシュ領域から前記第2記憶部へ出力する記憶領域を決定するステップを有する
入出力制御方法。 - 請求項23に記載の入出力制御方法において、
前記入出力に関する情報は、前記入出力を発行したプロセス又はプロセスグループを特定する情報、入出力優先度第2記憶部のいずれか一つを少なくとも含む
入出力制御方法。 - 請求項23乃至26のいずれか一項に記載の入出力制御方法において、
前記入出力に関する情報は、前記入出力要求を発行するプロセスを特定する情報を含む
入出力制御方法。 - 請求項28に記載の入出力制御方法において、
前記入出力に関する情報は、入出力処理プロセス又は入出力処理プロセスグループを特定する情報を含む
入出力制御方法。 - 請求項16又は29に記載の入出力制御方法において、
前記データを前記キャッシュ領域へ記憶するステップは、
前記キャッシュ領域に前記データを記憶するためのキャッシュを確保するとき、前記入出力特定情報記憶部の前記入出力に関する情報を参照して、前記確保の可否を決定するステップを有する
入出力制御方法。 - 第1記憶部及び第2記憶部を具備し、前記第1記憶部の一部または全部をキャッシュ領域として用い、入出力処理を行う情報処理装置の入出力制御方法をコンピュータに実行させるプログラムであって、
前記第2記憶部に入出力するデータを、第1記憶部前記キャッシュ領域へ記憶するステップと、
前記キャッシュ領域へ記憶されたデータのデータ領域と、前記入出力に関する情報とを関連付けて入出力特定情報記憶部に記憶するステップと、
前記キャッシュ領域のデータ領域から前記第2記憶部への前記データの出力要求を生成するステップと、
前記生成された出力要求の対象であるデータのデータ領域に関連付けられた入出力に関する情報を、前記入出力特定情報記憶部を参照して、特定し、前記出力要求を生成するステップにより特定できなくなった入出力に関する情報を前記第2記憶部の入出力処理ステップへ伝達するステップと
を備え、
前記入出力に関する情報は、前記入出力の発行元を特定する情報、前記入出力の発行元に応じた優先度のいずれか一つを少なくとも含む入出力制御方法をコンピュータに実行させるプログラム。 - 請求項31に記載のプログラムにおいて、
前記出力要求を生成するステップにより特定できなくなった入出力に関する情報を第2記憶部の入出力処理ステップへ伝達するステップは、
前記出力要求に応答して、前記データ領域に基づいて、前記入出力特定情報記憶部を参照して、前記出力要求を生成するステップにより特定できなくなった入出力に関する情報を復元するステップである
プログラム。 - 請求項31に記載のプログラムにおいて、
プロセスを生成するプロセス生成部に含まれ、前記プロセスに対応する入出力要求発行を担当する入出力処理プロセスを生成するステップと、
前記プロセスと前記入出力処理プロセスとを関連付けて管理するステップとを更に備え、
前記出力要求を生成するステップにより特定できなくなった入出力に関する情報を第2記憶部の入出力処理ステップへ伝達するステップは、
前記出力要求に応答して、前記データ領域に基づいて、前記入出力特定情報記憶部及び前記入出力プロセス管理部を参照して、前記出力要求を生成するステップにより特定できなくなった入出力に関する情報に対応し前記プロセスに対応する前記入出力処理プロセスを選択するステップであり、かつ、選択された前記入出力処理プロセスが、前記出力要求を発行するステップとを有する
プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009517771A JP5158576B2 (ja) | 2007-06-05 | 2008-05-19 | 入出力制御システム、入出力制御方法、及び、入出力制御プログラム |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007149489 | 2007-06-05 | ||
JP2007149489 | 2007-06-05 | ||
JP2009517771A JP5158576B2 (ja) | 2007-06-05 | 2008-05-19 | 入出力制御システム、入出力制御方法、及び、入出力制御プログラム |
PCT/JP2008/059119 WO2008149657A1 (ja) | 2007-06-05 | 2008-05-19 | 入出力制御システム、入出力制御方法、及び、入出力制御プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2008149657A1 JPWO2008149657A1 (ja) | 2010-08-26 |
JP5158576B2 true JP5158576B2 (ja) | 2013-03-06 |
Family
ID=40093482
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009517771A Expired - Fee Related JP5158576B2 (ja) | 2007-06-05 | 2008-05-19 | 入出力制御システム、入出力制御方法、及び、入出力制御プログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US8239634B2 (ja) |
JP (1) | JP5158576B2 (ja) |
WO (1) | WO2008149657A1 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011022657A (ja) * | 2009-07-13 | 2011-02-03 | Fujitsu Ltd | メモリシステムおよび情報処理装置 |
CN104461931B (zh) * | 2014-08-18 | 2018-04-27 | 记忆科技(深圳)有限公司 | 多核存储装置及多核环境的跟踪日志输出处理方法 |
JP6653710B2 (ja) * | 2015-10-02 | 2020-02-26 | 株式会社日立製作所 | 計算機および計算機の制御方法 |
US10482632B2 (en) | 2017-04-28 | 2019-11-19 | Uih America, Inc. | System and method for image reconstruction |
JP2020170458A (ja) * | 2019-04-05 | 2020-10-15 | 富士通株式会社 | 情報処理装置、制御プログラム、及び制御方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03265958A (ja) * | 1990-03-15 | 1991-11-27 | Nec Corp | 入出力優先度変更方式 |
JPH05128002A (ja) * | 1991-11-01 | 1993-05-25 | Fujitsu Ltd | キヤツシユメモリ分割制御方式 |
JPH06119282A (ja) * | 1992-10-05 | 1994-04-28 | Mitsubishi Electric Corp | デバイス制御装置及びその優先処理方式 |
JPH0895896A (ja) * | 1994-09-27 | 1996-04-12 | Matsushita Electric Ind Co Ltd | 情報記録再生装置用上位接続制御装置 |
JPH11265262A (ja) * | 1998-03-18 | 1999-09-28 | Hitachi Ltd | 高速ライトキャッシュディスク装置 |
JP2005301638A (ja) * | 2004-04-12 | 2005-10-27 | Hitachi Ltd | ディスクアレイ装置及びディスクアレイ装置のリザーブ解除制御方法 |
JP2005323245A (ja) * | 2004-05-11 | 2005-11-17 | Hitachi Ltd | 仮想ストレージの通信品質制御装置 |
JP2007094995A (ja) * | 2005-09-30 | 2007-04-12 | Fujitsu Ltd | ディスク記憶装置及びディスク記憶装置のキャッシュ制御方法 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08328956A (ja) | 1995-05-30 | 1996-12-13 | Toshiba Corp | マルチプロセッサシステムのメモリ管理方式 |
EP1061449A4 (en) | 1998-02-04 | 2005-12-21 | Hitachi Ltd | METHOD OF MANAGING ANEMATORY DISK, DISC STRUCTURE AND MEMORY |
JP3506024B2 (ja) | 1998-12-10 | 2004-03-15 | 日本電気株式会社 | 情報処理装置 |
JP2001109661A (ja) * | 1999-10-14 | 2001-04-20 | Hitachi Ltd | キャッシュメモリの割当方法及びオペレーティングシステム及びそのオペレーティングシステムを有するコンピュータシステム |
US7062609B1 (en) * | 2001-09-19 | 2006-06-13 | Cisco Technology, Inc. | Method and apparatus for selecting transfer types |
JP4429780B2 (ja) * | 2004-03-31 | 2010-03-10 | 富士通株式会社 | 記憶制御装置、制御方法、および制御プログラム。 |
US8279886B2 (en) * | 2004-12-30 | 2012-10-02 | Intel Corporation | Dataport and methods thereof |
US7337280B2 (en) * | 2005-02-10 | 2008-02-26 | International Business Machines Corporation | Data processing system and method for efficient L3 cache directory management |
JP4435705B2 (ja) * | 2005-03-14 | 2010-03-24 | 富士通株式会社 | 記憶装置、その制御方法及びプログラム |
JP2006350780A (ja) | 2005-06-17 | 2006-12-28 | Hitachi Ltd | キャッシュ割当制御方法 |
US8234457B2 (en) * | 2006-06-30 | 2012-07-31 | Seagate Technology Llc | Dynamic adaptive flushing of cached data |
US20080065718A1 (en) * | 2006-09-12 | 2008-03-13 | Emc Corporation | Configuring a cache prefetch policy that is controllable based on individual requests |
US7949834B2 (en) * | 2007-01-24 | 2011-05-24 | Qualcomm Incorporated | Method and apparatus for setting cache policies in a processor |
-
2008
- 2008-05-19 US US12/663,201 patent/US8239634B2/en not_active Expired - Fee Related
- 2008-05-19 JP JP2009517771A patent/JP5158576B2/ja not_active Expired - Fee Related
- 2008-05-19 WO PCT/JP2008/059119 patent/WO2008149657A1/ja active Application Filing
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03265958A (ja) * | 1990-03-15 | 1991-11-27 | Nec Corp | 入出力優先度変更方式 |
JPH05128002A (ja) * | 1991-11-01 | 1993-05-25 | Fujitsu Ltd | キヤツシユメモリ分割制御方式 |
JPH06119282A (ja) * | 1992-10-05 | 1994-04-28 | Mitsubishi Electric Corp | デバイス制御装置及びその優先処理方式 |
JPH0895896A (ja) * | 1994-09-27 | 1996-04-12 | Matsushita Electric Ind Co Ltd | 情報記録再生装置用上位接続制御装置 |
JPH11265262A (ja) * | 1998-03-18 | 1999-09-28 | Hitachi Ltd | 高速ライトキャッシュディスク装置 |
JP2005301638A (ja) * | 2004-04-12 | 2005-10-27 | Hitachi Ltd | ディスクアレイ装置及びディスクアレイ装置のリザーブ解除制御方法 |
JP2005323245A (ja) * | 2004-05-11 | 2005-11-17 | Hitachi Ltd | 仮想ストレージの通信品質制御装置 |
JP2007094995A (ja) * | 2005-09-30 | 2007-04-12 | Fujitsu Ltd | ディスク記憶装置及びディスク記憶装置のキャッシュ制御方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2008149657A1 (ja) | 2008-12-11 |
JPWO2008149657A1 (ja) | 2010-08-26 |
US8239634B2 (en) | 2012-08-07 |
US20100174871A1 (en) | 2010-07-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9483187B2 (en) | Quality of service implementation in a networked storage system with hierarchical schedulers | |
US9639469B2 (en) | Coherency controller with reduced data buffer | |
US20210089343A1 (en) | Information processing apparatus and information processing method | |
JP4464378B2 (ja) | 同一データを纏める事で格納領域を節約する計算機システム、ストレージシステム及びそれらの制御方法 | |
JP7539202B2 (ja) | コンピューティング環境におけるアクセラレータとストレージとの間のダイレクト・データ・アクセス | |
CN106527967A (zh) | 减小存储设备中的读命令时延 | |
US10545791B2 (en) | Methods to apply IOPS and MBPS limits independently using cross charging and global cost synchronization | |
JP5158576B2 (ja) | 入出力制御システム、入出力制御方法、及び、入出力制御プログラム | |
JP2015520425A (ja) | 計算機システム及びその制御方法 | |
JP6244949B2 (ja) | 情報処理装置、制御方法、および制御プログラム | |
US9934147B1 (en) | Content-aware storage tiering techniques within a job scheduling system | |
JP5124430B2 (ja) | 仮想マシンの移行方法、サーバ、及び、プログラム | |
TW200925871A (en) | Dynamic logical data channel assignment using time-grouped allocations | |
JP2009087282A (ja) | 並列計算システムおよび並列計算方法 | |
WO2017056219A1 (ja) | ストレージ装置およびストレージ装置の制御方法 | |
WO2018188959A1 (en) | Method and apparatus for managing events in a network that adopts event-driven programming framework | |
US9858204B2 (en) | Cache device, cache system, and cache method | |
EP3293625B1 (en) | Method and device for accessing file, and storage system | |
JP5737298B2 (ja) | スケジューリング方法およびスケジューリングシステム | |
US10430233B1 (en) | Scheduling computational tasks among multiple classes of storage resources based on job classification | |
JP2021135538A (ja) | ストレージ制御装置及びストレージ制御プログラム | |
US10824640B1 (en) | Framework for scheduling concurrent replication cycles | |
JP5334048B2 (ja) | メモリ装置および計算機 | |
WO2007039933A1 (ja) | 演算処理装置 | |
KR102076248B1 (ko) | 선택 지연 가비지 컬렉션 방법 및 이를 이용한 메모리 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110408 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120416 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120606 |
|
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: 20121119 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20121202 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5158576 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20151221 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |