JP2003044328A - ディスクサブシステム、および、その記憶制御方法 - Google Patents
ディスクサブシステム、および、その記憶制御方法Info
- Publication number
- JP2003044328A JP2003044328A JP2001233181A JP2001233181A JP2003044328A JP 2003044328 A JP2003044328 A JP 2003044328A JP 2001233181 A JP2001233181 A JP 2001233181A JP 2001233181 A JP2001233181 A JP 2001233181A JP 2003044328 A JP2003044328 A JP 2003044328A
- Authority
- JP
- Japan
- Prior art keywords
- storage area
- data
- logical
- block
- physical storage
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】
【課題】論理記憶領域と物理記憶領域とを対応付けて配
置をおこなう機能を有するディスクサブシステムにおい
て、論理記憶領域と物理記憶領域の再配置をおこなって
いるときにも、ホストからアクセスの遅延やタイムアウ
トの発生させることのなく、高いアクセス性能を維持で
きるようにする。 【解決手段】論理記憶領域を物理記憶領域に対応付けて
配置する手段、再配置する手段と、論理記憶領域に含ま
れるブロックがどの物理記憶領域にあるかを示す対応表
とを設け、計算機からのデータのアクセスは、キャッシ
ュを経由しておこない、キャッシュ内にあるブロック
を、廃棄するかディスク装置に書き戻す必要が生じたと
きで、そのデータの属する論理記憶領域が再配置中であ
るときに、キャッシュ内にあるブロックを再配置先の物
理記憶領域に書き込むようにする。
置をおこなう機能を有するディスクサブシステムにおい
て、論理記憶領域と物理記憶領域の再配置をおこなって
いるときにも、ホストからアクセスの遅延やタイムアウ
トの発生させることのなく、高いアクセス性能を維持で
きるようにする。 【解決手段】論理記憶領域を物理記憶領域に対応付けて
配置する手段、再配置する手段と、論理記憶領域に含ま
れるブロックがどの物理記憶領域にあるかを示す対応表
とを設け、計算機からのデータのアクセスは、キャッシ
ュを経由しておこない、キャッシュ内にあるブロック
を、廃棄するかディスク装置に書き戻す必要が生じたと
きで、そのデータの属する論理記憶領域が再配置中であ
るときに、キャッシュ内にあるブロックを再配置先の物
理記憶領域に書き込むようにする。
Description
【0001】
【発明の属する技術分野】本発明は、ディスクサブシス
テムに係り、特に、ホストからデータをアクセスするた
めの論理記憶領域と前記ディスク装置にアクセスするた
めの物理記憶領域とを対応付けて配置をおこなう機能を
有するディスクサブシステムにおいて、付加分散のため
の再配置をおこなっているときにも、ホストからアクセ
スの遅延やタイムアウトの発生をおこすことのないディ
スクサブシステムに関する。
テムに係り、特に、ホストからデータをアクセスするた
めの論理記憶領域と前記ディスク装置にアクセスするた
めの物理記憶領域とを対応付けて配置をおこなう機能を
有するディスクサブシステムにおいて、付加分散のため
の再配置をおこなっているときにも、ホストからアクセ
スの遅延やタイムアウトの発生をおこすことのないディ
スクサブシステムに関する。
【0002】
【従来の技術】従来、大容量のディスク記憶装置を制御
するためのディスクサブシステムにおいて、ホストから
のアクセスを仮想化して論理的なアクセスとし、ディス
クサブシステムのアクセスを物理的なアクセスとし、両
者をマッピングすることにより、ディスクアクセスの性
能を高める技術が知られている。
するためのディスクサブシステムにおいて、ホストから
のアクセスを仮想化して論理的なアクセスとし、ディス
クサブシステムのアクセスを物理的なアクセスとし、両
者をマッピングすることにより、ディスクアクセスの性
能を高める技術が知られている。
【0003】例えば、特開2000−293317号公
報の「記憶制御装置」には、パリティグループをブロッ
クサイズより大きなサイズで分割した物理記憶領域を単
位として、異なる性能、信頼性を持つRAIDレベルや
ディスク装置へデータを移動し、データ再配置前に連続
であったブロックは、移動後にも連続となるようにし、
シーケンシャルアクセス性能の向上が可能なディスクサ
ブシステムが開示されている。
報の「記憶制御装置」には、パリティグループをブロッ
クサイズより大きなサイズで分割した物理記憶領域を単
位として、異なる性能、信頼性を持つRAIDレベルや
ディスク装置へデータを移動し、データ再配置前に連続
であったブロックは、移動後にも連続となるようにし、
シーケンシャルアクセス性能の向上が可能なディスクサ
ブシステムが開示されている。
【0004】
【発明が解決しようとする課題】特開2000−293
317号公報に代表されるような物理記憶領域を単位と
したデータ再配置機能は、ディスクサブシステム内部の
パリティグループの負荷集中を解消する手段として有効
だと考えられる。そして、その負荷集中を解決するため
のデータ再配置の適用シナリオとして、高負荷なパリテ
ィグループ内部の高負荷な物理記憶領域を他の低負荷な
パリティグループへ再配置するような場合が十分考えら
れる。
317号公報に代表されるような物理記憶領域を単位と
したデータ再配置機能は、ディスクサブシステム内部の
パリティグループの負荷集中を解消する手段として有効
だと考えられる。そして、その負荷集中を解決するため
のデータ再配置の適用シナリオとして、高負荷なパリテ
ィグループ内部の高負荷な物理記憶領域を他の低負荷な
パリティグループへ再配置するような場合が十分考えら
れる。
【0005】しかしながら、上記従来技術では、ホスト
のアクセスとは独立なバックグラウンド処理でデータ移
動がおこなわれるため、負荷の高くなっている仮想ディ
スク装置に、さらにコピーのためのディスクアクセスが
生じる。その副作用として、ホストからの記憶領域への
アクセスに遅れが生じたり、タイムアウトする可能性が
あるという問題点があった。
のアクセスとは独立なバックグラウンド処理でデータ移
動がおこなわれるため、負荷の高くなっている仮想ディ
スク装置に、さらにコピーのためのディスクアクセスが
生じる。その副作用として、ホストからの記憶領域への
アクセスに遅れが生じたり、タイムアウトする可能性が
あるという問題点があった。
【0006】本発明は、上記問題点を解決するためにな
されたもので、その目的は、ホストからデータをアクセ
スするための論理記憶領域とディスク装置にアクセスす
るための物理記憶領域とを対応付けて配置をおこなう機
能を有するディスクサブシステムにおいて、論理記憶領
域と物理記憶領域の再配置をおこなっているときにも、
ホストからアクセスの遅延やタイムアウトの発生させる
ことのなく、高いアクセス性能を維持できるディスクサ
ブシステムを提供することにある。
されたもので、その目的は、ホストからデータをアクセ
スするための論理記憶領域とディスク装置にアクセスす
るための物理記憶領域とを対応付けて配置をおこなう機
能を有するディスクサブシステムにおいて、論理記憶領
域と物理記憶領域の再配置をおこなっているときにも、
ホストからアクセスの遅延やタイムアウトの発生させる
ことのなく、高いアクセス性能を維持できるディスクサ
ブシステムを提供することにある。
【0007】
【課題を解決するための手段】上記目的を達成するため
に、本発明のディスクサブシステムに係る発明の構成
は、計算機に接続され、データを記憶するディスク装置
とそれらを制御する手段とを有するディスクサブシステ
ムにおいて、計算機がデータをアクセスするための論理
記憶領域と、前記ディスクサブシステムの制御手段が前
記ディスク装置にアクセスするための物理記憶領域とを
設け、前記論理記憶領域を前記物理記憶領域に対応付け
て配置する手段と、前記論理記憶領域を前記物理記憶領
域に再配置する手段とを有し、前記計算機が再配置中の
論理記憶領域にアクセスするとき、前記再配置のための
データ移動を前記計算機からのアクセスと連携しておこ
なうようにしたものである。
に、本発明のディスクサブシステムに係る発明の構成
は、計算機に接続され、データを記憶するディスク装置
とそれらを制御する手段とを有するディスクサブシステ
ムにおいて、計算機がデータをアクセスするための論理
記憶領域と、前記ディスクサブシステムの制御手段が前
記ディスク装置にアクセスするための物理記憶領域とを
設け、前記論理記憶領域を前記物理記憶領域に対応付け
て配置する手段と、前記論理記憶領域を前記物理記憶領
域に再配置する手段とを有し、前記計算機が再配置中の
論理記憶領域にアクセスするとき、前記再配置のための
データ移動を前記計算機からのアクセスと連携しておこ
なうようにしたものである。
【0008】より詳しくは、上記ディスクサブシステム
において、計算機に接続され、データを記憶するディス
ク装置とそれらを制御する手段とを有するディスクサブ
システムにおいて、計算機がデータをアクセスするため
の論理記憶領域と、前記ディスクサブシステムの制御手
段が前記ディスク装置にアクセスするための物理記憶領
域とを設け、前記論理記憶領域を前記物理記憶領域に対
応付けて配置する手段と、前記論理記憶領域を前記物理
記憶領域に再配置する手段と、前記論理記憶領域に含ま
れるブロックがどの物理記憶領域にあるかを示す対応表
と、一時的にデータを格納する記憶装置とを有し、前記
計算機からのデータのアクセスは、前記一時的にデータ
を格納する記憶装置を経由しておこない、前記一時的に
データを格納する記憶装置内にあるブロックを、廃棄ま
たは前記ディスク装置に書き戻す必要が生じたとき、そ
のブロックの属する論理記憶領域が再配置中であるとき
に、前記一時的にデータを格納する記憶装置内にあるブ
ロックを前記再配置先の物理記憶領域に書き込むように
したものである。
において、計算機に接続され、データを記憶するディス
ク装置とそれらを制御する手段とを有するディスクサブ
システムにおいて、計算機がデータをアクセスするため
の論理記憶領域と、前記ディスクサブシステムの制御手
段が前記ディスク装置にアクセスするための物理記憶領
域とを設け、前記論理記憶領域を前記物理記憶領域に対
応付けて配置する手段と、前記論理記憶領域を前記物理
記憶領域に再配置する手段と、前記論理記憶領域に含ま
れるブロックがどの物理記憶領域にあるかを示す対応表
と、一時的にデータを格納する記憶装置とを有し、前記
計算機からのデータのアクセスは、前記一時的にデータ
を格納する記憶装置を経由しておこない、前記一時的に
データを格納する記憶装置内にあるブロックを、廃棄ま
たは前記ディスク装置に書き戻す必要が生じたとき、そ
のブロックの属する論理記憶領域が再配置中であるとき
に、前記一時的にデータを格納する記憶装置内にあるブ
ロックを前記再配置先の物理記憶領域に書き込むように
したものである。
【0009】さらに詳しくは、上記ディスクサブシステ
ムにおいて、前記計算機がデータにアクセスをおこなっ
ていないときに、前記再配置のための前記物理記憶領域
間のデータ移動をおこなうようにしたものである。
ムにおいて、前記計算機がデータにアクセスをおこなっ
ていないときに、前記再配置のための前記物理記憶領域
間のデータ移動をおこなうようにしたものである。
【0010】本発明の手段により、物理記憶領域のデー
タ移動をホストからのアクセスを利用しておこなうこと
ができるため、データ移動のためのバックグラウンド処
理を削減することができる。その結果として、従来の技
術では高負荷な記憶領域のデータ移動操作をおこなった
場合に生じたホスト側のアクセス遅延や、タイムアウト
を軽減したり、なくしたりすることができる。これによ
って、負荷分散を図るためにおこなっていた負荷の高い
物理記憶領域を負荷の低いパリティグループへの移動す
る処理を、ホスト側のアクセス遅延やタイムアウトを伴
うことなく実行できる。
タ移動をホストからのアクセスを利用しておこなうこと
ができるため、データ移動のためのバックグラウンド処
理を削減することができる。その結果として、従来の技
術では高負荷な記憶領域のデータ移動操作をおこなった
場合に生じたホスト側のアクセス遅延や、タイムアウト
を軽減したり、なくしたりすることができる。これによ
って、負荷分散を図るためにおこなっていた負荷の高い
物理記憶領域を負荷の低いパリティグループへの移動す
る処理を、ホスト側のアクセス遅延やタイムアウトを伴
うことなく実行できる。
【0011】また、ホストからのアクセスに局所性が見
られる場合、アクセスされたブロックから順次移動され
るため、従来よりも早い時間で負荷の移動が完了する。
られる場合、アクセスされたブロックから順次移動され
るため、従来よりも早い時間で負荷の移動が完了する。
【0012】
【発明の実施の形態】以下、本発明に係る一実施形態
を、図1ないし図12を用いて説明する。〔ディスクサ
ブシステムのシステム構成〕先ず、図1を用いて本発明
に係るディスクサブシステムのシステム構成について説
明する。図1は、本発明に係るディスクサブシステムの
システム構成図である。
を、図1ないし図12を用いて説明する。〔ディスクサ
ブシステムのシステム構成〕先ず、図1を用いて本発明
に係るディスクサブシステムのシステム構成について説
明する。図1は、本発明に係るディスクサブシステムの
システム構成図である。
【0013】本実施形態の情報処理システムは、ディス
クサブシステム100と一つ以上のホスト110とSV
P120で構成されるものである。
クサブシステム100と一つ以上のホスト110とSV
P120で構成されるものである。
【0014】ホスト110は、メモリ、CPU等の計算
機を構成する上で必要な装置を有しており、ディスク装
置のデータをアクセスする。
機を構成する上で必要な装置を有しており、ディスク装
置のデータをアクセスする。
【0015】SVP120は、ディスクサブシステム制
御処理装置101からシステム稼働情報182を受け取
り、その情報をオペレータに提示したり、オペレータか
らの再配置要求を受け付け、ディスクサブシステム制御
処理装置101へ要求を送る装置である。
御処理装置101からシステム稼働情報182を受け取
り、その情報をオペレータに提示したり、オペレータか
らの再配置要求を受け付け、ディスクサブシステム制御
処理装置101へ要求を送る装置である。
【0016】ディスクサブシステム100とホスト11
0は、I/Oネットワーク150で接続され、ホスト1
10同士、または、ホスト110とSVP120間は、
ネットワーク130で接続され、ディスクサブシステム
100とSVP120間はネットワーク140で接続さ
れる。
0は、I/Oネットワーク150で接続され、ホスト1
10同士、または、ホスト110とSVP120間は、
ネットワーク130で接続され、ディスクサブシステム
100とSVP120間はネットワーク140で接続さ
れる。
【0017】ここで、ネットワーク130、ネットワー
ク140、I/Oネットワーク150は、イーサーネッ
ト、無線ネットワークのようなTCP/IPプロトコル
を利用可能なメディアに加えて、SCSI、ファイバー
チャネル、ATMが考えられる。また、それら以外のも
のであってもよい。なお、図1中のネットワーク130
とネットワーク140とI/Oネットワーク150の関
係については、一例であり、ネットワーク130とネッ
トワーク140が同じセグメントである場合等、これ以
外の接続形態であってもよい。また、SVP120とデ
ィスクサブシステム100は統合された形態であっても
よい。
ク140、I/Oネットワーク150は、イーサーネッ
ト、無線ネットワークのようなTCP/IPプロトコル
を利用可能なメディアに加えて、SCSI、ファイバー
チャネル、ATMが考えられる。また、それら以外のも
のであってもよい。なお、図1中のネットワーク130
とネットワーク140とI/Oネットワーク150の関
係については、一例であり、ネットワーク130とネッ
トワーク140が同じセグメントである場合等、これ以
外の接続形態であってもよい。また、SVP120とデ
ィスクサブシステム100は統合された形態であっても
よい。
【0018】ディスクサブシステム100は、ディスク
サブシステム100全体を制御するディスクサブシステ
ム制御処理装置101、キャッシュ102、複数のパリ
ティグループ103から構成される装置である。
サブシステム100全体を制御するディスクサブシステ
ム制御処理装置101、キャッシュ102、複数のパリ
ティグループ103から構成される装置である。
【0019】ディスクサブシステム制御処理装置101
のハードウェア構成として、1チップで構成していても
よいし、複数のチップで構成してもよい。
のハードウェア構成として、1チップで構成していても
よいし、複数のチップで構成してもよい。
【0020】キャッシュ102は、ホスト110からデ
ィスク装置のデータをアクセスするときに、そのデータ
を一時的に記憶するメモリである。キャッシュ102
は、揮発性のメモリでもよいし、不揮発メモリを用いて
実装してもよい。
ィスク装置のデータをアクセスするときに、そのデータ
を一時的に記憶するメモリである。キャッシュ102
は、揮発性のメモリでもよいし、不揮発メモリを用いて
実装してもよい。
【0021】パリティグループ103は、ディスク装置
でRAIDを構成するときの論理的な単位である。パリ
ティグループ103は、一つ以上の物理記憶領域191
に分割され、それぞれの物理記憶領域191は等しいサ
イズを持つものとする。
でRAIDを構成するときの論理的な単位である。パリ
ティグループ103は、一つ以上の物理記憶領域191
に分割され、それぞれの物理記憶領域191は等しいサ
イズを持つものとする。
【0022】このディスクサブシステム制御処理装置1
01とキャッシュ102とパリティグループ103間の
接続形態はどのようなものであってもよい。また、それ
ぞれのパリティグループ103は容量、性能的に異なっ
てもよいし同じであってもよい。
01とキャッシュ102とパリティグループ103間の
接続形態はどのようなものであってもよい。また、それ
ぞれのパリティグループ103は容量、性能的に異なっ
てもよいし同じであってもよい。
【0023】ディスクサブシステム制御処理装置101
は、ホストから論理記憶領域によるアクセスを、ディス
ク装置上に取られる物理記憶領域と対応付けアクセスす
る機能を有している。すなわち、論理記憶領域とは、デ
ィスクサブシステムがホストに提供する仮想的な記憶領
域であり、ディスクサブシステム制御処理装置内部で物
理記憶領域と対応づけられている。
は、ホストから論理記憶領域によるアクセスを、ディス
ク装置上に取られる物理記憶領域と対応付けアクセスす
る機能を有している。すなわち、論理記憶領域とは、デ
ィスクサブシステムがホストに提供する仮想的な記憶領
域であり、ディスクサブシステム制御処理装置内部で物
理記憶領域と対応づけられている。
【0024】また、特定のディスク記憶装置にアクセス
が集中するのを避けるために、いったん、論理記憶領域
を物理記憶領域に配置したものを、再配置する機能を有
している。そして、論理記憶領域は、複数のブロックで
構成されており、物理記憶領域191からキャッシュ1
02にデータを持ってくるとき、また、再配置のための
データ移動をおこなうときには、このブロック単位で物
理記憶領域上のデータ移動をおこなう。
が集中するのを避けるために、いったん、論理記憶領域
を物理記憶領域に配置したものを、再配置する機能を有
している。そして、論理記憶領域は、複数のブロックで
構成されており、物理記憶領域191からキャッシュ1
02にデータを持ってくるとき、また、再配置のための
データ移動をおこなうときには、このブロック単位で物
理記憶領域上のデータ移動をおこなう。
【0025】本実施形態のディスクサブシステム100
においては、キャッシュに存在するデータは論理記憶領
域と関連して管理されており、キャッシュ制御機能17
2によって制御され、論理記憶領域と物理記憶領域の変
換をおこなったり、該当する物理記憶領域191のデー
タをロードしたり、または、ライトバックする。
においては、キャッシュに存在するデータは論理記憶領
域と関連して管理されており、キャッシュ制御機能17
2によって制御され、論理記憶領域と物理記憶領域の変
換をおこなったり、該当する物理記憶領域191のデー
タをロードしたり、または、ライトバックする。
【0026】コンポーネントとしてみると、ディスクサ
ブシステム制御処理装置101は、I/O処理部16
1、キャッシュ制御機能処理部172、再配置用論理・
物理変換情報181、システム稼働情報182、再配置
決定機能処理部165、再配置手続き機能処理部17
1、システム情報処理部164、非同期データ移動機能
処理部175を有する。なお、図1中影付きのブロック
で示したものが本発明で新しい機能を含むものである。
ブシステム制御処理装置101は、I/O処理部16
1、キャッシュ制御機能処理部172、再配置用論理・
物理変換情報181、システム稼働情報182、再配置
決定機能処理部165、再配置手続き機能処理部17
1、システム情報処理部164、非同期データ移動機能
処理部175を有する。なお、図1中影付きのブロック
で示したものが本発明で新しい機能を含むものである。
【0027】I/O処理部161は、ホストから論理記
憶領域に対するリードまたはライト要求を受け付け、ラ
イト要求の場合にはキャッシュ102へデータを書き込
み、リード要求の場合には、キャッシュ102上にデー
タが存在しなければ、再配置用キャッシュ制御機能17
2へキャッシュロードを依頼し、キャッシュ102から
データを読み込んでホスト110へ返す機能を有する。
憶領域に対するリードまたはライト要求を受け付け、ラ
イト要求の場合にはキャッシュ102へデータを書き込
み、リード要求の場合には、キャッシュ102上にデー
タが存在しなければ、再配置用キャッシュ制御機能17
2へキャッシュロードを依頼し、キャッシュ102から
データを読み込んでホスト110へ返す機能を有する。
【0028】キャッシュ制御機能処理部172は、論理
記憶領域のブロックのキャッシュロードやライトバック
をおこなう機能を有し、処理部分としては、再配置中キ
ャッシュロード処理部176、再配置中ライトバック処
理部177、再配置非処理中キャッシュ制御処理部16
2、キャッシュ制御決定処理部166に分かれている。
記憶領域のブロックのキャッシュロードやライトバック
をおこなう機能を有し、処理部分としては、再配置中キ
ャッシュロード処理部176、再配置中ライトバック処
理部177、再配置非処理中キャッシュ制御処理部16
2、キャッシュ制御決定処理部166に分かれている。
【0029】再配置中キャッシュロード処理部176、
再配置中ライトバック処理部177は、それぞれ、再配
置中の論理記憶領域のキャッシュロード、ライトバック
をおこなう機能である。
再配置中ライトバック処理部177は、それぞれ、再配
置中の論理記憶領域のキャッシュロード、ライトバック
をおこなう機能である。
【0030】再配置非処理中キャッシュ制御処理部16
2は、再配置中でない論理記憶領域のブロックのキャッ
シュロードやライトバックをおこなう機能である。すな
わち、論理記憶領域のキャッシュロードやライトバック
を要求されると、内部に持つ変換情報を元に論理記憶領
域から物理記憶領域への変換をおこない、ブロックをキ
ャッシュにロードしたり、ライトバックをおこなう。
2は、再配置中でない論理記憶領域のブロックのキャッ
シュロードやライトバックをおこなう機能である。すな
わち、論理記憶領域のキャッシュロードやライトバック
を要求されると、内部に持つ変換情報を元に論理記憶領
域から物理記憶領域への変換をおこない、ブロックをキ
ャッシュにロードしたり、ライトバックをおこなう。
【0031】キャッシュ制御決定処理部166は、LR
U等のキャッシングアルゴリズムによってどのデータを
キャッシュにロードしたり、ライトバックするかを決定
する機能である。なお、キャッシングアルゴリズムは、
LRU以外であってもよい。
U等のキャッシングアルゴリズムによってどのデータを
キャッシュにロードしたり、ライトバックするかを決定
する機能である。なお、キャッシングアルゴリズムは、
LRU以外であってもよい。
【0032】再配置用論理・物理変換情報181は、再
配置用のための論理記憶領域と物理記憶領域に関する情
報であり、これは、次に図2により詳細に説明する。
配置用のための論理記憶領域と物理記憶領域に関する情
報であり、これは、次に図2により詳細に説明する。
【0033】システム稼働情報182は、物理記憶領域
191毎のアクセス情報を集めた物理記憶領域稼働情報
183と、パリティグループ稼働情報や構成情報等のそ
の他の稼働情報184を有する。
191毎のアクセス情報を集めた物理記憶領域稼働情報
183と、パリティグループ稼働情報や構成情報等のそ
の他の稼働情報184を有する。
【0034】再配置決定機能処理部165は、SVP1
20からの入力や、内部に備える負荷分散計算能力等に
よって再配置の時期、再配置レイアウトを決定する。
20からの入力や、内部に備える負荷分散計算能力等に
よって再配置の時期、再配置レイアウトを決定する。
【0035】再配置手続き機能処理部171は、論理記
憶領域の再配置に必要な初期化、終了処理をおこなう機
能を有する。
憶領域の再配置に必要な初期化、終了処理をおこなう機
能を有する。
【0036】システム情報処理部164は、物理記憶領
域稼働情報183を含めたシステム稼働情報182を取
得したり、他の機能からの情報提供要求に応える機能を
有する。
域稼働情報183を含めたシステム稼働情報182を取
得したり、他の機能からの情報提供要求に応える機能を
有する。
【0037】非同期データ移動機能処理部175は、再
配置に伴う物理記憶領域191上のデータの移動をI/
O処理とは非同期におこなう機能を有する。〔再配置用
論理・物理変換情報〕次に、図2を用いて再配置用論理
・物理変換情報181について説明する。図2は、再配
置用論理・物理変換情報181の構成図である。
配置に伴う物理記憶領域191上のデータの移動をI/
O処理とは非同期におこなう機能を有する。〔再配置用
論理・物理変換情報〕次に、図2を用いて再配置用論理
・物理変換情報181について説明する。図2は、再配
置用論理・物理変換情報181の構成図である。
【0038】再配置用論理・物理変換情報181は、再
配置手続き機能171、キャッシュ制御機能172、非
同期データ移動機能175によって用いられる情報であ
り、一つの再配置中フラグテーブル200と、再配置中
の論理記憶領域と同数存在する再配置中論理記憶領域情
報210によって構成される。
配置手続き機能171、キャッシュ制御機能172、非
同期データ移動機能175によって用いられる情報であ
り、一つの再配置中フラグテーブル200と、再配置中
の論理記憶領域と同数存在する再配置中論理記憶領域情
報210によって構成される。
【0039】再配置中フラグテーブル200は、論理記
憶領域が再配置中であるか否かを示すテーブルであり、
テーブルの要素として論理記憶領域識別子201、再配
置中フラグ202として持っており、再配置中フラグ2
02がYESの場合は、対応する仮想記憶領域が現在移
動中であることを示している。再配置中フラグテーブル
200は、論理記憶領域と同数のエントリを持ってい
る。
憶領域が再配置中であるか否かを示すテーブルであり、
テーブルの要素として論理記憶領域識別子201、再配
置中フラグ202として持っており、再配置中フラグ2
02がYESの場合は、対応する仮想記憶領域が現在移
動中であることを示している。再配置中フラグテーブル
200は、論理記憶領域と同数のエントリを持ってい
る。
【0040】再配置中論理記憶領域情報210は、再配
置中の論理記憶領域に関する情報を保持するテーブルで
あり、論理記憶領域識別子211と再配置先物理記憶領
域識別子212とブロック保存先テーブル220から構
成される。
置中の論理記憶領域に関する情報を保持するテーブルで
あり、論理記憶領域識別子211と再配置先物理記憶領
域識別子212とブロック保存先テーブル220から構
成される。
【0041】論理記憶領域識別子211は、再配置中論
理記憶領域情報210がどの論理記憶領域に対応するか
を示すために用いられ、再配置先物理記憶領域識別子2
12は前出の論理記憶領域の再配置先となる物理記憶領
域191の識別子が格納される。
理記憶領域情報210がどの論理記憶領域に対応するか
を示すために用いられ、再配置先物理記憶領域識別子2
12は前出の論理記憶領域の再配置先となる物理記憶領
域191の識別子が格納される。
【0042】既述のように、論理記憶領域は、複数のブ
ロックに分割して再配置される。ブロック保存先テーブ
ル220は、その論理記憶領域のブロックが存在する場
所についての情報を保持するためのテーブルであり、論
理アドレス221とオンキャッシュフラグ222とブロ
ック保存先物理記憶領域識別子223をテーブルの要素
としている。論理アドレス221は、論理記憶領域のブ
ロックの論理的なアドレスを示し、オンキャッシュフラ
グ222は、論理アドレス221が示すブロックがキャ
ッシュ上に存在するかを表し、ブロック保存先物理記憶
領域識別子223は論理アドレス221が示すブロック
が存在する物理記憶領域191の識別子を示している。
このブロック保存先テーブル220は、論理記憶領域の
ブロック数と同じエントリを有している。
ロックに分割して再配置される。ブロック保存先テーブ
ル220は、その論理記憶領域のブロックが存在する場
所についての情報を保持するためのテーブルであり、論
理アドレス221とオンキャッシュフラグ222とブロ
ック保存先物理記憶領域識別子223をテーブルの要素
としている。論理アドレス221は、論理記憶領域のブ
ロックの論理的なアドレスを示し、オンキャッシュフラ
グ222は、論理アドレス221が示すブロックがキャ
ッシュ上に存在するかを表し、ブロック保存先物理記憶
領域識別子223は論理アドレス221が示すブロック
が存在する物理記憶領域191の識別子を示している。
このブロック保存先テーブル220は、論理記憶領域の
ブロック数と同じエントリを有している。
【0043】図2の例では、論理記憶領域のL1が、物
理記憶領域識別子がP2からP12に再配置中であるこ
とを示している。この場合に、再配置が終ったときに
は、ブロック保存先物理記憶領域識別子223の値は、
全て、P12になる。〔本発明の記憶制御方法の処理概
要〕次に、図3および図4を用いて本発明に係るディス
クサブシステムの記憶制御方法の処理の概要について説
明する。図3は、ホストから論理記憶領域にアクセスす
るときの処理の概要を説明する図である。図4は、キャ
ッシュ上のブロックをライトバックするときの処理の概
要を説明する図である。
理記憶領域識別子がP2からP12に再配置中であるこ
とを示している。この場合に、再配置が終ったときに
は、ブロック保存先物理記憶領域識別子223の値は、
全て、P12になる。〔本発明の記憶制御方法の処理概
要〕次に、図3および図4を用いて本発明に係るディス
クサブシステムの記憶制御方法の処理の概要について説
明する。図3は、ホストから論理記憶領域にアクセスす
るときの処理の概要を説明する図である。図4は、キャ
ッシュ上のブロックをライトバックするときの処理の概
要を説明する図である。
【0044】キャッシュへの書き込みアルゴリズムとし
ては、キャッシュのブロックと物理記憶領域のブロック
を常に一致させておくライトースルー方式と、通常は、
キャッシュのみデータを変更し、必要なときに物理記憶
領域に書き戻すライトバック方式がある。本発明では、
どちらのアルゴリズムにも適用可能であるが、実施形態
としては、ライトバック方式を例にとって説明するもの
とする。
ては、キャッシュのブロックと物理記憶領域のブロック
を常に一致させておくライトースルー方式と、通常は、
キャッシュのみデータを変更し、必要なときに物理記憶
領域に書き戻すライトバック方式がある。本発明では、
どちらのアルゴリズムにも適用可能であるが、実施形態
としては、ライトバック方式を例にとって説明するもの
とする。
【0045】先ず、図3に示されるようにホスト110
から論理記憶領域のリード・ライトアクセスがあったと
する(1)。そのときに、アクセスしようとするブロッ
クがキャッシュ上にあるか否かが判定される(2)。そ
して、キャッシュ102上にない場合には、論理記憶領
域のブロックのアドレスを、該当する物理記憶領域に変
換して(3)、ロードする(4)。
から論理記憶領域のリード・ライトアクセスがあったと
する(1)。そのときに、アクセスしようとするブロッ
クがキャッシュ上にあるか否かが判定される(2)。そ
して、キャッシュ102上にない場合には、論理記憶領
域のブロックのアドレスを、該当する物理記憶領域に変
換して(3)、ロードする(4)。
【0046】ただし、ライトアクセスの場合は、一般的
に、ホストからの書き込みデータのサイズが、ブロック
サイズの整数倍でないときにのみ、キャッシュ102に
ブロックがロードされ、ホストからの書き込みデータの
サイズが、ブロックサイズの整数倍のときには、キャッ
シュ102にブロックのロードはおこなわない。
に、ホストからの書き込みデータのサイズが、ブロック
サイズの整数倍でないときにのみ、キャッシュ102に
ブロックがロードされ、ホストからの書き込みデータの
サイズが、ブロックサイズの整数倍のときには、キャッ
シュ102にブロックのロードはおこなわない。
【0047】リードアクセスのときには、キャッシュ1
02上に有る場合には、そのまま、そのブロックを、キ
ャッシュ102上にない場合には、ロードしてきたデー
タをホスト110に転送する(5−a)。ライトアクセ
スのときには、キャッシュ102上のブロックにデータ
を書きこむ(5−b)。
02上に有る場合には、そのまま、そのブロックを、キ
ャッシュ102上にない場合には、ロードしてきたデー
タをホスト110に転送する(5−a)。ライトアクセ
スのときには、キャッシュ102上のブロックにデータ
を書きこむ(5−b)。
【0048】次に、図4に示されるようにキャッシュ1
02の領域があふれたなどの要因により、キャッシュ1
02のブロックを、廃棄またはライトバックする必要が
生じたとする(10)。例えば、これは、新たなブロッ
クをキャッシュ102にロードしたときなどに発生す
る。
02の領域があふれたなどの要因により、キャッシュ1
02のブロックを、廃棄またはライトバックする必要が
生じたとする(10)。例えば、これは、新たなブロッ
クをキャッシュ102にロードしたときなどに発生す
る。
【0049】そのときに、再配置用論理・物理変換情報
181によりそのブロックの属する論理記憶領域が再配
置中か調べる(11)。
181によりそのブロックの属する論理記憶領域が再配
置中か調べる(11)。
【0050】そして、再配置中のときには、再配置用論
理・物理変換情報181を見て、再配置先の物理記憶領
域に、ブロックを書き戻す(12−a)。
理・物理変換情報181を見て、再配置先の物理記憶領
域に、ブロックを書き戻す(12−a)。
【0051】論理記憶領域が、再配置中でないときに
は、通常と同様に、対応する物理記憶領域にブロックを
書き戻す(12−b)。 〔本発明の記憶制御方法の処理詳細〕次に、図5ないし
図12を用いて本発明に係るディスクサブシステムの記
憶制御方法の処理の詳細について説明する。 (I)再配置処理 先ず、図5を用いて再配置処理について説明する。図5
は、再配置処理を示すフローチャートである。
は、通常と同様に、対応する物理記憶領域にブロックを
書き戻す(12−b)。 〔本発明の記憶制御方法の処理詳細〕次に、図5ないし
図12を用いて本発明に係るディスクサブシステムの記
憶制御方法の処理の詳細について説明する。 (I)再配置処理 先ず、図5を用いて再配置処理について説明する。図5
は、再配置処理を示すフローチャートである。
【0052】先ず、処理の初期化として、図2の再配置
中フラグテーブル200の初期化をおこなう。初期化
は、論理記憶領域識別子201の列に全ての論理記憶領
域の識別子を登録し、各再配置中フラグ202に、NO
を設定する(S301)。
中フラグテーブル200の初期化をおこなう。初期化
は、論理記憶領域識別子201の列に全ての論理記憶領
域の識別子を登録し、各再配置中フラグ202に、NO
を設定する(S301)。
【0053】次に、再配置決定機能165からの再配置
要求が来ているか確認する(S302)。もし、来てい
るならば、S305を処理し、そうでなければ、S30
3を処理する。
要求が来ているか確認する(S302)。もし、来てい
るならば、S305を処理し、そうでなければ、S30
3を処理する。
【0054】再配置要求が来ている場合には、再配置中
フラグテーブル200の該当する再配置中フラグ202
をYESに変更し(S305)、再配置する論理記憶領
域のための再配置中論理記憶領域情報210を作成する
(S306)。
フラグテーブル200の該当する再配置中フラグ202
をYESに変更し(S305)、再配置する論理記憶領
域のための再配置中論理記憶領域情報210を作成する
(S306)。
【0055】すなわち、再配置中論理記憶領域情報21
0の領域を確保し、論理記憶領域識別子211に該当す
る論理記憶領域識別子を登録し、ブロック保存先テーブ
ル220の論理アドレス221の列には論理記憶領域が
保持する全てのブロックの論理アドレスを登録する。そ
して、各オンキャッシュフラグ222には、現在、キャ
ッシュ上に論理アドレス221が示すブロックが存在し
ている場合には、YESを、そうでなければ、NOを設
定し、各ブロック保存先物理記憶領域識別子223に
は、現在、論理記憶領域が存在する物理記憶領域191
の識別子を登録する。
0の領域を確保し、論理記憶領域識別子211に該当す
る論理記憶領域識別子を登録し、ブロック保存先テーブ
ル220の論理アドレス221の列には論理記憶領域が
保持する全てのブロックの論理アドレスを登録する。そ
して、各オンキャッシュフラグ222には、現在、キャ
ッシュ上に論理アドレス221が示すブロックが存在し
ている場合には、YESを、そうでなければ、NOを設
定し、各ブロック保存先物理記憶領域識別子223に
は、現在、論理記憶領域が存在する物理記憶領域191
の識別子を登録する。
【0056】そして、最後に、再配置先物理記憶領域識
別子212に再配置先の物理記憶領域191の識別子を
登録してS302へ戻る(S307)。
別子212に再配置先の物理記憶領域191の識別子を
登録してS302へ戻る(S307)。
【0057】S302で再配置要求が来ていない場合に
は、再配置中論理記憶領域情報210の情報を監視し
て、再配置処理中の論理記憶領域のいずれかが処理完了
したかを確認し、確認できればS308を処理し、そう
でなければ、S302へ戻る(S303)。
は、再配置中論理記憶領域情報210の情報を監視し
て、再配置処理中の論理記憶領域のいずれかが処理完了
したかを確認し、確認できればS308を処理し、そう
でなければ、S302へ戻る(S303)。
【0058】なお、再配置が完了したことの確認は、ブ
ロック保存先テーブル220の全ての行について、ブロ
ック保存先物理記憶領域識別子223が再配置先物理記
憶領域識別子212と同じ値を示していることを確かめ
ることにより、おこなうことができる。
ロック保存先テーブル220の全ての行について、ブロ
ック保存先物理記憶領域識別子223が再配置先物理記
憶領域識別子212と同じ値を示していることを確かめ
ることにより、おこなうことができる。
【0059】再配置が完了しているときには、再配置中
フラグテーブル200の再配置が完了した論理記憶領域
の再配置中フラグ202をNOにし(S308)、再配
置中論理記憶領域情報210を削除する(S309)。
フラグテーブル200の再配置が完了した論理記憶領域
の再配置中フラグ202をNOにし(S308)、再配
置中論理記憶領域情報210を削除する(S309)。
【0060】そして、再配置非処理中キャッシュ制御処
理部162に、内部で保持する処理時の論理記憶領域識
別子から物理記憶領域識別子への変換情報の更新を依頼
する(S310)。
理部162に、内部で保持する処理時の論理記憶領域識
別子から物理記憶領域識別子への変換情報の更新を依頼
する(S310)。
【0061】再後に、再配置決定機能処理部165に再
配置が完了したことを通知し、S301へ戻る(S31
1)。 (II)読込み処理 次に、図6を用いて読込み処理について説明する。図6
は、読込み処理を示すフローチャートである。
配置が完了したことを通知し、S301へ戻る(S31
1)。 (II)読込み処理 次に、図6を用いて読込み処理について説明する。図6
は、読込み処理を示すフローチャートである。
【0062】先ず、読込み処理をおこなうときには、I
/O処理部161がホスト110からの要求を受け取り
(S401)、次に、要求されたブロックがキャッシュ
102上に存在するか確認し、存在する場合にはS40
4を処理し、存在しない場合には、S403を処理する
(S402)。
/O処理部161がホスト110からの要求を受け取り
(S401)、次に、要求されたブロックがキャッシュ
102上に存在するか確認し、存在する場合にはS40
4を処理し、存在しない場合には、S403を処理する
(S402)。
【0063】次に、I/O処理部161からのロードの
要求を受けて、後に説明する(V)キャッシュ制御読込
み処理をおこなう。これにより、物理記憶領域191か
らキャッシュにブロックがロードされる(S403)。
要求を受けて、後に説明する(V)キャッシュ制御読込
み処理をおこなう。これにより、物理記憶領域191か
らキャッシュにブロックがロードされる(S403)。
【0064】最後に、I/O処理部161がキャッシュ
102上のブロックデータをホストへ返し、S401へ
戻る(S404)。
102上のブロックデータをホストへ返し、S401へ
戻る(S404)。
【0065】なお、この図6で示した処理は、キャッシ
ュのロード処理を、I/O処理部161の要求と同期し
ておこなう例であったが、予測ロード処理のように、I
/O処理部161とは非同期にキャッシュのロード処理
をおこなってもよい。 (III)書込み処理 次に、図7を用いて書込み処理について説明する。図7
は、書込み処理を示すフローチャートである。
ュのロード処理を、I/O処理部161の要求と同期し
ておこなう例であったが、予測ロード処理のように、I
/O処理部161とは非同期にキャッシュのロード処理
をおこなってもよい。 (III)書込み処理 次に、図7を用いて書込み処理について説明する。図7
は、書込み処理を示すフローチャートである。
【0066】先ず、書込み処理をおこなうときには、I
/O処理部161がホストからの要求を受け取り(S5
01)、要求されたブロックがキャッシュ102上に存
在するか確認し(S502)、存在する場合には、S5
03を処理し、存在しない場合はS504を処理する。
/O処理部161がホストからの要求を受け取り(S5
01)、要求されたブロックがキャッシュ102上に存
在するか確認し(S502)、存在する場合には、S5
03を処理し、存在しない場合はS504を処理する。
【0067】そして、ブロックがキャッシュ102上に
存在するときには、 I/O処理部が既にキャッシュ上
に存在する該当ブロックデータ領域へ書き込みデータを
上書きし(S503)、S505へ移る。
存在するときには、 I/O処理部が既にキャッシュ上
に存在する該当ブロックデータ領域へ書き込みデータを
上書きし(S503)、S505へ移る。
【0068】ブロックがキャッシュ102上に存在しな
いときには、I/O処理部が新たにキャッシュ上の新規
領域へ書き込みデータを書き込み(S504)、S50
5へ移る。
いときには、I/O処理部が新たにキャッシュ上の新規
領域へ書き込みデータを書き込み(S504)、S50
5へ移る。
【0069】ここで、書き込みデータの開始アドレス、
または、終了アドレスがブロック境界で無い場合には、
それに関わるブロックのロードが必要になる。
または、終了アドレスがブロック境界で無い場合には、
それに関わるブロックのロードが必要になる。
【0070】すなわち、書き込み動作、ブロックのロー
ド動作と書き込みブロックのアドレスの関係を正確に述
べると、以下のようになる。
ド動作と書き込みブロックのアドレスの関係を正確に述
べると、以下のようになる。
【0071】書き込みデータの開始アドレスがブロック
境界で無い場合には、記憶領域から開始アドレスを含む
ブロックをロードし、そのキャッシュ領域に開始アドレ
スから直後のブロック境界までを上書きするまた、書き
込みデータの終了アドレスがブロック境界で無い場合
に、記憶領域から終了アドレスを含むブロックをロード
し、そのキャッシュ領域に直前のブロック境界から終了
アドレスまでを上書きするそれ以外、すなわち、書き込
みデータの開始アドレス、終了アドレス共に、ブロック
境界にある場合には、単に領域を作成して、その新規領
域へ書き込めば良い。
境界で無い場合には、記憶領域から開始アドレスを含む
ブロックをロードし、そのキャッシュ領域に開始アドレ
スから直後のブロック境界までを上書きするまた、書き
込みデータの終了アドレスがブロック境界で無い場合
に、記憶領域から終了アドレスを含むブロックをロード
し、そのキャッシュ領域に直前のブロック境界から終了
アドレスまでを上書きするそれ以外、すなわち、書き込
みデータの開始アドレス、終了アドレス共に、ブロック
境界にある場合には、単に領域を作成して、その新規領
域へ書き込めば良い。
【0072】次に、I/O処理部161は、実際にデー
タが物理記憶領域191へ書き込まれる前にホスト11
0へ処理完了を通知する(S505)。
タが物理記憶領域191へ書き込まれる前にホスト11
0へ処理完了を通知する(S505)。
【0073】次に、キャッシュ102の空き領域の大き
さをチェックし(S506)、残り少ないときには、S
507を実行し、そうでないときには、S501に戻
る。
さをチェックし(S506)、残り少ないときには、S
507を実行し、そうでないときには、S501に戻
る。
【0074】キャッシュ102の空き領域の大きさが残
り少ないときには、キャッシュ制御決定処理部166の
機能により、ライトバックするブロックを決定する(S
507)。
り少ないときには、キャッシュ制御決定処理部166の
機能により、ライトバックするブロックを決定する(S
507)。
【0075】次に、決定されたブロックに対して、後に
説明する(VI)キャッシュ制御書込み処理をおこなう
(S508)。
説明する(VI)キャッシュ制御書込み処理をおこなう
(S508)。
【0076】なお、この図7で示した処理は、キャッシ
ュのライトバックを、I/O処理部161の要求と同期
しておこなう例であったが、ライトバックをスケジュー
リングによりおこなうなど、I/O処理部161とは、
非同期にキャッシュのライトバック処理をおこなっても
よい。 (IV)キャッシュ制御読込み処理 次に、図8を用いてキャッシュ制御読込み処理について
説明する。図8は、キャッシュ制御読込み処理を示すフ
ローチャートである。
ュのライトバックを、I/O処理部161の要求と同期
しておこなう例であったが、ライトバックをスケジュー
リングによりおこなうなど、I/O処理部161とは、
非同期にキャッシュのライトバック処理をおこなっても
よい。 (IV)キャッシュ制御読込み処理 次に、図8を用いてキャッシュ制御読込み処理について
説明する。図8は、キャッシュ制御読込み処理を示すフ
ローチャートである。
【0077】この処理は、(II)読込み処理のS403
から呼び出される処理である。
から呼び出される処理である。
【0078】先ず、キャッシュ102の空き領域の大き
さをチェックし(S601)、残り少ないときには、S
602を実行し、そうでないときには、S604に行
く。
さをチェックし(S601)、残り少ないときには、S
602を実行し、そうでないときには、S604に行
く。
【0079】キャッシュ102の空き領域の大きさが残
り少ないときには、キャッシュ制御決定処理部166の
機能により、ライトバックするブロックを決定する(S
602)。
り少ないときには、キャッシュ制御決定処理部166の
機能により、ライトバックするブロックを決定する(S
602)。
【0080】次に、決定されたブロックに対して、後に
説明する(VI)キャッシュ制御書込み処理をおこなう
(S603)。
説明する(VI)キャッシュ制御書込み処理をおこなう
(S603)。
【0081】次に、I/O処理部161からロードすべ
きブロックの論理記憶領域識別子と論理アドレスを受け
取る。(S604) そして、受け取った論理記憶領域識別子が示す論理記憶
領域が再配置中であるか再配置中フラグテーブル200
を参照して確認し(S605)、再配置中のときには、
後に説明する(V)再配置中キャッシュロード処理をお
こない(S607)、再配置中でなければ、再配置非処
理中キャッシュ制御機能処理部162にキャッシュロー
ド処理を依頼する(S606)。
きブロックの論理記憶領域識別子と論理アドレスを受け
取る。(S604) そして、受け取った論理記憶領域識別子が示す論理記憶
領域が再配置中であるか再配置中フラグテーブル200
を参照して確認し(S605)、再配置中のときには、
後に説明する(V)再配置中キャッシュロード処理をお
こない(S607)、再配置中でなければ、再配置非処
理中キャッシュ制御機能処理部162にキャッシュロー
ド処理を依頼する(S606)。
【0082】本実施形態では、詳細には説明しないが、
再配置非処理中キャッシュ制御機能処理部162では、
通常の再配置をおこなっていないときのキャッシュ制御
処理のアルゴリズムにしたがって、キャッシュへのロー
ド処理がおこなわれる。 (V)再配置中キャッシュロード処理 次に、図9を用いて再配置中キャッシュロード処理につ
いて説明する。図9は、再配置中キャッシュロード処理
を示すフローチャートである。
再配置非処理中キャッシュ制御機能処理部162では、
通常の再配置をおこなっていないときのキャッシュ制御
処理のアルゴリズムにしたがって、キャッシュへのロー
ド処理がおこなわれる。 (V)再配置中キャッシュロード処理 次に、図9を用いて再配置中キャッシュロード処理につ
いて説明する。図9は、再配置中キャッシュロード処理
を示すフローチャートである。
【0083】先ず、該当する論理記憶領域の再配置中論
理記憶領域情報210を参照してブロックが保存されて
いる物理記憶領域を捜し出し(S701)、ブロックを
キャッシュへロードする(S702)。
理記憶領域情報210を参照してブロックが保存されて
いる物理記憶領域を捜し出し(S701)、ブロックを
キャッシュへロードする(S702)。
【0084】そして、ロードしたブロックのオンキャッ
シュフラグ222をYESとする(S703)。 (VI)キャッシュ制御書込み処理 次に、図10を用いてキャッシュ制御書込み処理を説明
する。図10は、キャッシュ制御書込み処理を示すフロ
ーチャートである。
シュフラグ222をYESとする(S703)。 (VI)キャッシュ制御書込み処理 次に、図10を用いてキャッシュ制御書込み処理を説明
する。図10は、キャッシュ制御書込み処理を示すフロ
ーチャートである。
【0085】この処理は、(III)書込み処理と(VI)
キャッシュ制御読込み処理において、キャッシュ内にあ
るブロックをライトバックするときに呼ばれる処理であ
る。
キャッシュ制御読込み処理において、キャッシュ内にあ
るブロックをライトバックするときに呼ばれる処理であ
る。
【0086】先ず、キャッシュ制御決定処理部166か
らライトバックすべきブロックの論理記憶領域識別子と
論理アドレスを受け取る(S801)。
らライトバックすべきブロックの論理記憶領域識別子と
論理アドレスを受け取る(S801)。
【0087】次に、受け取った論理記憶領域識別子が示
す論理記憶領域が再配置中であるか再配置中フラグテー
ブル200を参照して確認し(S802)、再配置中の
ときには、後に説明する(VI)再配置中キャッシュライ
トバック処理をおこない(S804)、再配置中でなけ
れば、再配置非処理中キャッシュ制御機能処理部162
にブロックのライトバック処理を依頼する(S80
3)。
す論理記憶領域が再配置中であるか再配置中フラグテー
ブル200を参照して確認し(S802)、再配置中の
ときには、後に説明する(VI)再配置中キャッシュライ
トバック処理をおこない(S804)、再配置中でなけ
れば、再配置非処理中キャッシュ制御機能処理部162
にブロックのライトバック処理を依頼する(S80
3)。
【0088】本実施形態では、詳細には説明しないが、
再配置非処理中キャッシュ制御機能処理部162では、
通常の再配置をおこなっていないときのキャッシュ制御
処理のアルゴリズムにしたがって、キャッシュへのライ
トバック処理がおこなわれる。なお、キャッシュにロー
ドされたブロックで、ロード以降、その内容が変更され
なかったものについては、ライトバック処理中に実際に
データを書きこまなくて良い。 (VII)再配置中ライトバック処理 次に、図11を用いて再配置中ライトバック処理を説明
する。図11は、再配置中ライトバック処理を示すフロ
ーチャートである。
再配置非処理中キャッシュ制御機能処理部162では、
通常の再配置をおこなっていないときのキャッシュ制御
処理のアルゴリズムにしたがって、キャッシュへのライ
トバック処理がおこなわれる。なお、キャッシュにロー
ドされたブロックで、ロード以降、その内容が変更され
なかったものについては、ライトバック処理中に実際に
データを書きこまなくて良い。 (VII)再配置中ライトバック処理 次に、図11を用いて再配置中ライトバック処理を説明
する。図11は、再配置中ライトバック処理を示すフロ
ーチャートである。
【0089】先ず、該当するキャッシュ上のブロックを
一度でも変更されたことがあるかを調べる(S90
1)。これは、一般的なキャッシュ制御で、ブロックを
キャッシュにロードした後のデータ変更の有無を管理し
ているので、この情報を用いれば、判定することができ
る。
一度でも変更されたことがあるかを調べる(S90
1)。これは、一般的なキャッシュ制御で、ブロックを
キャッシュにロードした後のデータ変更の有無を管理し
ているので、この情報を用いれば、判定することができ
る。
【0090】そして、変更されたことがあるときには、
次に、S904の処理をする。
次に、S904の処理をする。
【0091】変更されたことがないときには、次に、該
当するキャッシュ上のブロックはすでに移動されている
かを調べる(S902)。これは、図2に示したブロッ
ク保存先物理記憶領域識別子223と、再配置先物理記
憶領域識別子212を調べることにより判定することが
できる。
当するキャッシュ上のブロックはすでに移動されている
かを調べる(S902)。これは、図2に示したブロッ
ク保存先物理記憶領域識別子223と、再配置先物理記
憶領域識別子212を調べることにより判定することが
できる。
【0092】そして、まだ移動していないときには、次
に、S904の処理をする。
に、S904の処理をする。
【0093】すでに移動しているときには、次に、該当
するブロックのオンキャッシュフラグ222をNOにし
て(S903)、キャッシュ102から書き込んだブロ
ックの情報を削除する(S906)。
するブロックのオンキャッシュフラグ222をNOにし
て(S903)、キャッシュ102から書き込んだブロ
ックの情報を削除する(S906)。
【0094】次に、該当する論理記憶領域の再配置中論
理記憶領域情報210の再配置先物理記憶領域識別子2
12が指し示す物理記憶領域191ブロックを書き込む
(S904)。
理記憶領域情報210の再配置先物理記憶領域識別子2
12が指し示す物理記憶領域191ブロックを書き込む
(S904)。
【0095】次に、書き込んだブロックのオンキャッシ
ュフラグ222をNOとし、ブロック保存先物理記憶領
域識別子223を書き込んだ物理記憶領域を示す物理記
憶領域191とする(S905)。これにより、書き込
んだブロックについては、再配置がおこなわれなくな
り、データの不整合がおこることはなくなる。
ュフラグ222をNOとし、ブロック保存先物理記憶領
域識別子223を書き込んだ物理記憶領域を示す物理記
憶領域191とする(S905)。これにより、書き込
んだブロックについては、再配置がおこなわれなくな
り、データの不整合がおこることはなくなる。
【0096】最後に、キャッシュ102から書き込んだ
ブロックの情報を削除する(S906)。 (VIII)非同期データ移動処理 次に、図12を用いて非同期データ移動処理について説
明する。図12は、非同期データ移動処理を示すフロー
チャートである。
ブロックの情報を削除する(S906)。 (VIII)非同期データ移動処理 次に、図12を用いて非同期データ移動処理について説
明する。図12は、非同期データ移動処理を示すフロー
チャートである。
【0097】この非同期データ移動処理は、ホストとの
データアクセスとは、無関係にバックグラウンドで再配
置をおこなう処理である。
データアクセスとは、無関係にバックグラウンドで再配
置をおこなう処理である。
【0098】先ず、アクセスされていないパリティグル
ープ103に存在する物理記憶領域191をリストアッ
プする(S1001)。
ープ103に存在する物理記憶領域191をリストアッ
プする(S1001)。
【0099】もしなければ、S1001へ戻る。リスト
が存在するならばS1003へ処理を移る(S100
2)。
が存在するならばS1003へ処理を移る(S100
2)。
【0100】次に、移動されていないブロックで移動
元、移動先の両方が上記の物理記憶領域リストに含まれ
るものをリストアップする(S1003)。具体的に
は、再配置用論理・物理変換情報181中の全ての再配
置中論理記憶領域情報210に含まれるブロック保存先
テーブル220で、オンキャッシュフラグ222がNO
かつブロック保存先物理記憶領域識別子223が再配置
先物理記憶領域識別子212と同じでないブロックを捜
し出す。
元、移動先の両方が上記の物理記憶領域リストに含まれ
るものをリストアップする(S1003)。具体的に
は、再配置用論理・物理変換情報181中の全ての再配
置中論理記憶領域情報210に含まれるブロック保存先
テーブル220で、オンキャッシュフラグ222がNO
かつブロック保存先物理記憶領域識別子223が再配置
先物理記憶領域識別子212と同じでないブロックを捜
し出す。
【0101】次に、S1003でリストアップしたブロ
ックを移動する(S1004)。ここで移動するブロッ
クの量はホストからのアクセスを妨げない程度の数にす
る。
ックを移動する(S1004)。ここで移動するブロッ
クの量はホストからのアクセスを妨げない程度の数にす
る。
【0102】そして、移動させたブロックについて、ブ
ロック保存先テーブル220のブロック保存先物理記憶
領域識別子223を再配置先物理記憶領域識別子212
へ変え、S1001へ戻る(S1005)。
ロック保存先テーブル220のブロック保存先物理記憶
領域識別子223を再配置先物理記憶領域識別子212
へ変え、S1001へ戻る(S1005)。
【0103】
【発明の効果】本発明によれば、ホストからデータをア
クセスするための論理記憶領域とディスク装置にアクセ
スするための物理記憶領域とを対応付けて配置をおこな
う機能を有するディスクサブシステムにおいて、論理記
憶領域と物理記憶領域の再配置をおこなっているときに
も、ホストからアクセスの遅延やタイムアウトの発生さ
せることのなく、高いアクセス性能を維持できるディス
クサブシステムを提供することができる。
クセスするための論理記憶領域とディスク装置にアクセ
スするための物理記憶領域とを対応付けて配置をおこな
う機能を有するディスクサブシステムにおいて、論理記
憶領域と物理記憶領域の再配置をおこなっているときに
も、ホストからアクセスの遅延やタイムアウトの発生さ
せることのなく、高いアクセス性能を維持できるディス
クサブシステムを提供することができる。
【図1】本発明に係るディスクサブシステムのシステム
構成図である。
構成図である。
【図2】再配置用論理・物理変換情報181の構成図で
ある。
ある。
【図3】ホストから論理記憶領域にアクセスするときの
処理の概要を説明する図である。
処理の概要を説明する図である。
【図4】キャッシュ上のブロックをライトバックすると
きの処理の概要を説明する図である。
きの処理の概要を説明する図である。
【図5】再配置処理を示すフローチャートである。
【図6】読込み処理を示すフローチャートである。
【図7】書込み処理を示すフローチャートである。
【図8】キャッシュ制御読込み処理を示すフローチャー
トである。
トである。
【図9】再配置中キャッシュロード処理を示すフローチ
ャートである。
ャートである。
【図10】キャッシュ制御書込み処理を示すフローチャ
ートである。
ートである。
【図11】再配置中ライトバック処理を示すフローチャ
ートである。
ートである。
【図12】非同期データ移動処理を示すフローチャート
である。
である。
100…ディスクサブシステム
101…ディスクサブシステム制御処理装置
102…キャッシュ
103…パリティグループ
110…ホスト
120…SVP
130…ネットワーク
140…ネットワーク
150…I/Oネットワーク
161…I/O処理部
162…再配置非処理中キャッシュ制御処理部
164…システム情報処理部
165…再配置決定機能処理部
166…キャッシュ制御決定処理部
171…再配置手続き機能
172…キャッシュ制御機能処理部
173…再配置中論理・物理変換機能処理部
175…非同期データ移動機能処理部
176…再配置中キャッシュロード処理部
177…再配置中ライトバック処理部
181…再配置用論理・物理変換情報
182…システム稼働情報
183…物理記憶領域稼働情報
184…その他の稼働情報
191…物理記憶領域
200…再配置中フラグテーブル
201…論理記憶領域識別子
202…再配置中フラグ
210…再配置中論理記憶領域情報
211…論理記憶領域識別子
212…再配置先物理記憶領域識別子
220…ブロック保存先テーブル
221…論理アドレス
222…オンキャッシュフラグ
223…ブロック保存先物理記憶領域識別子
─────────────────────────────────────────────────────
フロントページの続き
(72)発明者 江口 賢哲
神奈川県川崎市麻生区王禅寺1099番地 株
式会社日立製作所システム開発研究所内
(72)発明者 大枝 高
神奈川県川崎市麻生区王禅寺1099番地 株
式会社日立製作所システム開発研究所内
(72)発明者 荒井 弘治
神奈川県小田原市国府津2880番地 株式会
社日立製作所ストレージ事業部内
Fターム(参考) 5B005 JJ11 MM11
5B065 BA01 CA11 CA30 CC04 CC08
CE12 ZA15
5B082 CA11 FA04
Claims (6)
- 【請求項1】 計算機に接続され、データを記憶するデ
ィスク装置とそれらを制御する手段とを有するディスク
サブシステムにおいて、 計算機がデータをアクセスするための論理記憶領域と、
前記ディスクサブシステムの制御手段が前記ディスク装
置にアクセスするための物理記憶領域とを設け、 前記論理記憶領域を前記物理記憶領域に対応付けて配置
する手段と、 前記論理記憶領域を前記物理記憶領域に再配置する手段
とを有し、 前記計算機が再配置中の論理記憶領域にアクセスすると
き、 前記再配置のためのデータ移動を前記計算機からのアク
セスと連携しておこなうことを特徴とするディスクサブ
システム。 - 【請求項2】 計算機に接続され、データを記憶するデ
ィスク装置とそれらを制御する手段とを有するディスク
サブシステムの記憶制御方法において、 計算機がデータをアクセスするための論理記憶領域と、
前記ディスクサブシステムの制御手段が前記ディスク装
置にアクセスするための物理記憶領域とを設け、 前記論理記憶領域を前記物理記憶領域に対応付けて配置
する手順と、 前記論理記憶領域を前記物理記憶領域に再配置する手順
とをおこない、 前記計算機が再配置中の論理記憶領域にアクセスすると
き、 前記再配置のためのデータ移動を前記計算機からのアク
セスと連携しておこなうことを特徴とするディスクサブ
システムの記憶制御方法。 - 【請求項3】 計算機に接続され、データを記憶するデ
ィスク装置とそれらを制御する手段とを有するディスク
サブシステムにおいて、 計算機がデータをアクセスするための論理記憶領域と、
前記ディスクサブシステムの制御手段が前記ディスク装
置にアクセスするための物理記憶領域とを設け、 前記論理記憶領域を前記物理記憶領域に対応付けて配置
する手段と、 前記論理記憶領域を前記物理記憶領域に再配置する手段
と、 前記論理記憶領域に含まれるブロックがどの物理記憶領
域にあるかを示す対応表と、 一時的にデータを格納する記憶装置とを有し、 前記計算機からのデータのアクセスは、前記一時的にデ
ータを格納する記憶装置を経由しておこない、 前記一時的にデータを格納する記憶装置内にあるブロッ
クを、廃棄または前記ディスク装置に書き戻す必要が生
じたとき、 そのブロックの属する論理記憶領域が再配置中であると
きに、 前記一時的にデータを格納する記憶装置内にあるブロッ
クを前記再配置先の物理記憶領域に書き込むことを特徴
とするディスクサブシステム。 - 【請求項4】 計算機に接続され、データを記憶するデ
ィスク装置とそれらを制御する手段とを有するディスク
サブシステムの記憶制御方法において、 計算機がデータをアクセスするための論理記憶領域と、
前記ディスクサブシステムの制御手段が前記ディスク装
置にアクセスするための物理記憶領域とを設け、 前記論理記憶領域を前記物理記憶領域に対応付けて配置
する手順と、 前記論理記憶領域を前記物理記憶領域に再配置する手順
とをおこない、 前記サブシステムは、さらに、 前記論理記憶領域に含まれるブロックがどの物理記憶領
域にあるかを示す対応表と、 一時的にデータを格納する記憶装置とを有し、 前記計算機からのデータのアクセスは、前記一時的にデ
ータを格納する記憶装置を経由しておこない、 前記一時的にデータを格納する記憶装置内にあるブロッ
クを、廃棄または前記ディスク装置に書き戻す必要が生
じたとき、 そのブロックの属する論理記憶領域が再配置中であると
きに、 前記一時的にデータを格納する記憶装置内にあるブロッ
クを前記再配置先の物理記憶領域に書き込むことを特徴
とするディスクサブシステムの記憶制御方法。 - 【請求項5】 前記計算機がデータにアクセスをおこな
っていないときに、前記再配置のための前記物理記憶領
域間のデータ移動をおこなうことを特徴とする請求項1
および請求項3記載のいずれかのディスクサブシステ
ム。 - 【請求項6】 前記計算機がデータにアクセスをおこな
っていないときに、前記再配置のための前記物理記憶領
域間のデータ移動をおこなうことを特徴とする請求項2
および請求項4記載のいずれかのディスクサブシステム
の記憶制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001233181A JP2003044328A (ja) | 2001-08-01 | 2001-08-01 | ディスクサブシステム、および、その記憶制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001233181A JP2003044328A (ja) | 2001-08-01 | 2001-08-01 | ディスクサブシステム、および、その記憶制御方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2003044328A true JP2003044328A (ja) | 2003-02-14 |
Family
ID=19064985
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001233181A Pending JP2003044328A (ja) | 2001-08-01 | 2001-08-01 | ディスクサブシステム、および、その記憶制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2003044328A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7469315B2 (en) | 2005-12-16 | 2008-12-23 | Hitachi, Ltd. | Storage controller, and method of controlling storage controller to improve the reliability of the storage controller |
JP2009129025A (ja) * | 2007-11-20 | 2009-06-11 | Nec Corp | 記憶情報配置システム、記憶情報配置方法、および記憶情報配置プログラム |
US8879181B2 (en) | 2012-09-07 | 2014-11-04 | Kabushiki Kaisha Toshiba | Read/write apparatus and read/write method |
-
2001
- 2001-08-01 JP JP2001233181A patent/JP2003044328A/ja active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7469315B2 (en) | 2005-12-16 | 2008-12-23 | Hitachi, Ltd. | Storage controller, and method of controlling storage controller to improve the reliability of the storage controller |
US7836251B2 (en) | 2005-12-16 | 2010-11-16 | Hitachi, Ltd. | Storage controller, and method operative to relocate logical storage devices based on times and locations specified in a relocating plan |
JP2009129025A (ja) * | 2007-11-20 | 2009-06-11 | Nec Corp | 記憶情報配置システム、記憶情報配置方法、および記憶情報配置プログラム |
US8879181B2 (en) | 2012-09-07 | 2014-11-04 | Kabushiki Kaisha Toshiba | Read/write apparatus and read/write method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US12066931B2 (en) | Memory system and method for controlling nonvolatile memory | |
US10503407B2 (en) | Memory system and method for controlling nonvolatile memory | |
JP5315348B2 (ja) | シン・プロビジョニングの移行および取り消しのための方法および装置 | |
US8984248B2 (en) | Data migration system and data migration method | |
US10545862B2 (en) | Memory system and method for controlling nonvolatile memory | |
JP2018163659A (ja) | 逆キャッシュテーブルを用いるハードウェアベースのマップアクセラレーション | |
US8001323B2 (en) | Network storage system, management method therefor, and control program product therefor | |
JP2003162377A (ja) | ディスクアレイシステム及びコントローラ間での論理ユニットの引き継ぎ方法 | |
US7743209B2 (en) | Storage system for virtualizing control memory | |
WO2014006656A1 (en) | Computer system, cache control method and computer program | |
WO2017149592A1 (ja) | ストレージ装置 | |
JP2016510440A (ja) | 複合型ストレージシステム及び記憶制御方法 | |
KR20120050891A (ko) | 스토리지 시스템에서 요청에 대한 응답과 연관된 지연의 감소 | |
US11086562B2 (en) | Computer system having data amount reduction function and storage control method | |
JP2007108981A (ja) | ストレージ装置及びボリューム間のデータ交換方法 | |
JP2004110503A (ja) | 記憶制御装置、記憶システム、記憶制御装置の制御方法、チャネル制御部、及びプログラム | |
US20110238915A1 (en) | Storage system | |
JP2023055998A (ja) | ストレージシステム及びストレージシステムの制御方法 | |
CN107577733B (zh) | 一种数据复制的加速方法及系统 | |
JP2003044328A (ja) | ディスクサブシステム、および、その記憶制御方法 | |
US11455105B2 (en) | Storage system and data management method of switching access authority | |
JP3882461B2 (ja) | 記憶装置システム及びそのバックアップ取得方法 | |
KR100472207B1 (ko) | 다중 레이드 제어기를 통한 데이터 분산 공유 레이드 제어시스템 | |
US20240362162A1 (en) | Memory system and method for controlling nonvolatile memory | |
JP2003263276A (ja) | ディスクシステムおよびディスクアクセス方法 |