JP4770766B2 - Cache memory device, cache management method thereof, and cache management program - Google Patents

Cache memory device, cache management method thereof, and cache management program Download PDF

Info

Publication number
JP4770766B2
JP4770766B2 JP2007076247A JP2007076247A JP4770766B2 JP 4770766 B2 JP4770766 B2 JP 4770766B2 JP 2007076247 A JP2007076247 A JP 2007076247A JP 2007076247 A JP2007076247 A JP 2007076247A JP 4770766 B2 JP4770766 B2 JP 4770766B2
Authority
JP
Japan
Prior art keywords
cache
cache page
page
pseudo
data
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
JP2007076247A
Other languages
Japanese (ja)
Other versions
JP2008234532A (en
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2007076247A priority Critical patent/JP4770766B2/en
Publication of JP2008234532A publication Critical patent/JP2008234532A/en
Application granted granted Critical
Publication of JP4770766B2 publication Critical patent/JP4770766B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

本発明は、上位装置からのメイン記憶装置に対するI/O命令に応じてデータを一時格納し転送するキャッシュメモリ装置及びそのキャッシュ管理方法,キャッシュ管理用プログラムに関し、特に、キャッシュメモリのI/O命令に対する排他制御を実行するキャッシュメモリ装置及びそのキャッシュ管理方法,キャッシュ管理用プログラムに関する。   The present invention relates to a cache memory device that temporarily stores and transfers data in response to an I / O command from a host device to a main storage device, a cache management method thereof, and a cache management program. The present invention relates to a cache memory device that executes exclusive control on the cache, a cache management method thereof, and a cache management program.

従来、ディスクアレイ装置では、I/O命令を高速に処理するためのキャッシュメモリを搭載し、ホストからのリードI/O命令に対してキャッシュヒットすれば、低速のディスクアレイにアクセスせずにデータをホストへ出力することで高速レスポンスを可能とし、ホストからのライトI/O命令に対しても、キャッシュメモリにデータを書き込んだ時点でライトI/O命令の完了を出力し、そのデータを非同期でディスクアレイに転送し格納することで高速レスポンスを可能としている。   Conventionally, a disk array device is equipped with a cache memory for processing I / O instructions at high speed, and if a cache hit occurs in response to a read I / O instruction from a host, data is not accessed without accessing a low-speed disk array. Is output to the host, and high-speed response is possible. The write I / O instruction completion is output when data is written to the cache memory in response to a write I / O instruction from the host. The high-speed response is possible by transferring to and storing in the disk array.

このような従来技術を用いたものとして、例えば、キャッシュメモリ上の管理情報をローカルメモリ内にも記録して2元管理することでさらに高速レスポンスを可能としている記憶制御装置が特許文献1に開示されている。   For example, Patent Document 1 discloses a storage control device that enables faster response by recording management information in a cache memory in a local memory and performing two-way management as an example using such a conventional technique. Has been.

また、特許文献2には、コントローラを多重化した記憶サブシステムであって、コントローラごとに使用するキャッシュ領域を個別に割り当てることにより、別々のコントローラからのI/O命令がキャッシュメモリに競合することをなくし、レスポンスの遅延を軽減した記憶サブシステムが開示されている。   Patent Document 2 discloses a storage subsystem in which controllers are multiplexed, and I / O instructions from different controllers compete with the cache memory by individually allocating a cache area to be used for each controller. A storage subsystem is disclosed in which the response delay is reduced.

また、特許文献3には、複数のホストディレクタとこれらホストディレクタに共有されたディスクキャッシュの共有メモリを搭載したディスクアレイ装置であって、共有メモリ内のキャッシュページのオープン/クローズ処理について示す管理情報を、共有メモリ内に記録せずに、各ホストディレクタのローカルメモリに記録してキャッシュページは定常オープン状態にしておくことで、キャッシュページの管理情報へのアクセス時間を短縮したディスクアレイ装置が開示されている。   Further, Patent Document 3 discloses a disk array device equipped with a plurality of host directors and a shared memory of a disk cache shared by these host directors, and management information indicating cache page open / close processing in the shared memory. Is disclosed in the disk array device which shortens the access time to the management information of the cache page by recording the cache page in the local memory of each host director without recording it in the shared memory and keeping the cache page in a steady open state. Has been.

特開2001‐166993号公報JP 2001-166993 A 特開平9‐146842号公報JP-A-9-146842 特開2003‐228461号公報JP 2003-228461 A

しかしながら、これら開示された従来技術では、キャッシュメモリ使用における同一キャッシュページへのI/O命令競合時の排他制御によるレスポンス遅延については改善されていないという課題があった。   However, these disclosed prior arts have a problem that the response delay due to the exclusive control when the I / O instruction conflicts with the same cache page when using the cache memory is not improved.

例えば、図11に示すような、キャッシュメモリ240のデータ格納領域241を固定長区画のキャッシュページ0〜Nに区切ってメモリ使用の排他制御を行う主制御部250を備えた従来のストレージ装置は、ホスト側のサーバ100からライトI/O命令を入力すると、I/O長を処理可能な数のキャッシュページ1を取得してデータを受け取り、そのデータを用いてRAID処理を行いディスクエンクロージャ300内の物理ディスク(PD)へ書き込みを行っていた。   For example, as shown in FIG. 11, a conventional storage apparatus including a main control unit 250 that performs exclusive control of memory use by dividing a data storage area 241 of a cache memory 240 into cache pages 0 to N of fixed-length partitions. When a write I / O instruction is input from the server 100 on the host side, the cache page 1 that can process the I / O length is acquired and data is received, and RAID processing is performed using the data to perform internal processing within the disk enclosure 300. Writing to the physical disk (PD) was performed.

このような従来の装置において、キャッシュページ0〜Nを1ページあたり64セクタ(32KB)の固定長と仮定すると、ホスト側のサーバ100から1セクタのシーケンシャルライトI/O命令が連続で発行された場合、最初の1セクタを処理するためのキャッシュページ1が選択され、この1セクタを処理して物理ディスク(PD)に書き終えるまでこのキャッシュページ1は排他され、次の1セクタのライトI/O命令が待機状態になる。   In such a conventional apparatus, assuming that cache pages 0 to N have a fixed length of 64 sectors (32 KB) per page, a sequential write I / O instruction of 1 sector is continuously issued from the server 100 on the host side. In this case, the cache page 1 for processing the first sector is selected, and the cache page 1 is excluded until the one sector is processed and written to the physical disk (PD), and the write I / I of the next one sector is excluded. The O command enters a standby state.

このキャッシュページ単位の排他制御は、使用中のキャッシュページに対して、別のI/O命令がアクセスしたり、追い出し処理を実行したりするのを防ぐための処理であるが、この排他制御によるライトI/O命令の待機によってレスポンスの遅延が生じてしまい、さらに悪化するとI/Oエラーとなってしまうという問題があった。   This exclusive control for each cache page is a process for preventing another I / O instruction from accessing a cache page in use or executing an eviction process. There is a problem in that a response delay occurs due to waiting for a write I / O instruction, and an I / O error occurs if the response is further deteriorated.

[目的]
そこで、本発明は、上記従来技術の問題を改善し、ディスクキャッシュにおいて、キャッシュページの排他制御によって生じるライトI/O命令完了応答の遅延を軽減し、常にキャッシュヒットライトの応答性能を保証することを、その目的とする。
[the purpose]
Therefore, the present invention improves the above-described problems of the prior art, reduces the delay in the write I / O instruction completion response caused by the exclusive control of the cache page in the disk cache, and always guarantees the response performance of the cache hit write. Is the purpose.

上記目的を達成するため、本発明のキャッシュメモリ装置は、上位装置とメインメモリとの間で入出力されるデータを一時格納するキャッシュメモリを備え、このキャッシュメモリが複数のキャッシュページで分割されたキャッシュ領域を有した、キャッシュメモリ装置であり、記上位装置からの前記メインメモリに対するライトI/O命令に従って前記データを対応するキャッシュページに書き込み非同期で前記メインメモリに転送するキャッシュメモリ管理手段と、前記キャッシュページに前記データが書き込まれたタイミングで前記I/O命令の完了通知を前記上位装置へ出力する完了通知手段と、前記上位装置からのI/O命令の処理中にこの処理に係るキャッシュページが別のI/O命令によるアクセスを受けないように前記キャッシュページを排他制御するキャッシュページ排他制御手段とを備え、前記キャッシュメモリが前記キャッシュ領域とは別の記憶領域である擬似キャッシュページを有し、前記キャッシュメモリ管理手段が、記キャッシュページ排他制御手段により退けられたライトI/O命令を受け入れて前記擬似キャッシュページにデータを書き込む機能と、前記擬似キャッシュページに前記データを書き込むタイミングでこの擬似キャッシュページを当該データにかかるライトI/O命令に指定されたキャッシュページに対応付ける機能とを備え、前記完了通知手段が、前記擬似キャッシュページに前記データが書き込まれたタイミングで前記I/O命令の完了通知を出力する機能を備え、前記キャッシュメモリ管理手段が、前記擬似キャッシュページに記憶されたデータを、当該擬似キャッシュページに対応付けたキャッシュページの排他状態が前記キャッシュページ排他制御手段により解除されたタイミングで当該キャッシュページへ書き込む機能を備えたことを特徴とする。 To achieve the above object, a cache memory device according to the present invention includes a cache memory that temporarily stores data input and output between a host device and a main memory, and the cache memory is divided into a plurality of cache pages. had cache area, a cache memory device, writes the data the following write I / O instruction to the main memory from the previous SL host device to the corresponding cache page, the cache memory management means for transferring to said main memory asynchronously A completion notification means for outputting a completion notification of the I / O instruction to the upper device at the timing when the data is written to the cache page, and this processing during the processing of the I / O instruction from the upper device. The cache page is prevented from being accessed by another I / O instruction. And a cache page exclusive control means for exclusively controlling Yasshupeji, said cache memory has a pseudo cache page is a separate storage area from that of the cache area, the cache memory management means, before Symbol cache page exclusive control means The write I / O instruction rejected by the function is received and data is written to the pseudo cache page, and the pseudo cache page is designated as the write I / O instruction for the data at the timing of writing the data to the pseudo cache page. is provided with a function to be associated with the cache page, the completion notification means includes a function of outputting a completion notification of the I / O instruction by the data in the pseudo-cache pages are written timing, the cache memory management means Is the pseudo-cache The data stored in the over-di, characterized in that the exclusive state of the cache page that correlated with the pseudo-cache page is provided with a function of writing to the cache page is released timing by the cache page exclusive control unit.

このようなキャッシュメモリ装置によれば、キャッシュメモリがキャッシュページとは別の記憶領域として擬似キャッシュページを有し、キャッシュページ排他制御手段により退けられたライトI/O命令を、キャッシュメモリ管理手段が受け入れて擬似キャッシュページにデータを書き込み、擬似キャッシュページにデータが書き込まれたタイミングで完了通知手段がI/O命令の完了通知を出力するので、キャッシュページの排他制御によって生じるライトI/O命令完了応答の遅延を軽減できる。 According to such a cache memory device, the cache memory has a pseudo cache page as a separate storage area to the cache page, the write I / O instruction was rejected by the key Yasshupeji exclusive control unit, the cache memory management means Accept and write data to the pseudo cache page, and when the data is written to the pseudo cache page, the completion notification means outputs a completion notification of the I / O instruction, so the write I / O instruction completion caused by the exclusive control of the cache page is completed. Response delay can be reduced.

似キャッシュページは、キャッシュページがI/O処理を完了するまでの時間のみデータを記憶しておけばよいので、記憶容量を小さくすることができる。 Pseudo cache pages, because the cache page may be stored time only data to complete the I / O processing, it is possible to reduce the storage capacity.

また、上記のキャッシュメモリ装置において、上述した擬似キャッシュページがキャッシュページと同様の固定長区画であってもよい。このようにすると、擬似キャッシュページをキャッシュページの1つにリンクさせることができ、対応するキャッシュページに容易にデータを転送することができる。   In the above cache memory device, the above-described pseudo cache page may be a fixed-length partition similar to the cache page. In this way, the pseudo cache page can be linked to one of the cache pages, and data can be easily transferred to the corresponding cache page.

ータを格納している擬似キャッシュページにキャッシュページをリンクさせることができ、擬似キャッシュページ内のデータをそのまま対応するキャッシュページへ転送することができる。 Data can be linked to a cache page in a pseudo cache page that stores the data in a pseudo cache page can be directly transferred to the corresponding cache page.

また、上記のキャッシュメモリ装置において、上述したキャッシュメモリ管理手段が、排他状態のキャッシュページに対して新たにライトI/O命令が競合した場合にそのキャッシュページに対応付けられた擬似キャッシュページにデータを書き込み当該擬似キャッシュページ内のデータを統合する機能を備えてもよい。このようにすれば、排他状態のキャッシュページに対していくらライトI/O命令が競合しても、完了応答の遅延を生じることはない。   Further, in the above cache memory device, when the above-mentioned cache memory management unit newly conflicts with a write I / O instruction for an exclusive cache page, data is stored in a pseudo cache page associated with the cache page. May be provided with a function of integrating the data in the pseudo cache page. In this way, no matter how much the write I / O instruction competes with the cache page in the exclusive state, the completion response is not delayed.

次に、本発明のキャッシュ管理方法は、上位装置とメインメモリとの間で入出力されるデータを一時格納するキャッシュメモリを備え、このキャッシュメモリが複数のキャッシュページで分割されたキャッシュ領域を有したキャッシュメモリ装置にあって、前記上位装置からのI/O命令の処理中にこの処理に係るキャッシュページが別のI/O命令によるアクセスを受けないように前記キャッシュページを排他制御するキャッシュ管理方法であり、前記上位装置からの前記メインメモリに対するライトI/O命令を入力し、このライトI/O命令が指定するキャッシュページが排他状態に設定されている場合に、前記キャッシュメモリの記憶領域のうち前記キャッシュページとは別に確保された領域である擬似キャッシュページに前記ライトI/O命令に係るデータを書き込み、この擬似キャッシュページを当該データにかかるライトI/O命令が指定するキャッシュページに対応付け、前記擬似キャッシュページに前記データが書き込まれたタイミングで前記I/O命令の完了通知を前記上位装置へ出力し、前記キャッシュページの排他状態が解除されたタイミングで、当該キャッシュページに対応付けられた前記擬似キャッシュページに記憶されたデータを当該キャッシュページへ書き込むことを特徴とする。 Next, the cache management method of the present invention includes a cache memory for temporarily storing data input / output between the host device and the main memory, and the cache memory has a cache area divided by a plurality of cache pages. In the cache memory device, during the processing of the I / O instruction from the host device, the cache management for exclusive control of the cache page so that the cache page related to this processing is not accessed by another I / O instruction A storage area of the cache memory when a write I / O instruction for the main memory from the host device is input and a cache page specified by the write I / O instruction is set to an exclusive state. Among the cache pages that are allocated separately from the cache page. Write the data according to the I / O instruction, correspondence to the cache page write I / O command according to the pseudo-cache page to the data is designated, the in the said pseudo-cache page data is written timing I / O instruction completion notification is output to the host device, and the data stored in the pseudo cache page associated with the cache page is written to the cache page at the timing when the exclusive state of the cache page is released It is characterized by that.

また、上記のキャッシュ管理方法において、上述した擬似キャッシュページがキャッシュページと同様の固定長区画であってもよい。   In the above cache management method, the above-described pseudo cache page may be a fixed-length partition similar to the cache page.

また、上記のキャッシュ管理方法においては、排他状態のキャッシュページに対して新たにライトI/O命令が競合した場合には、そのキャッシュページに対応付けられた擬似キャッシュページにデータを書き込み当該擬似キャッシュページ内のデータを統合するデータ統合ステップを設けてもよい。   In the above cache management method, when a new write I / O instruction conflicts with an exclusive cache page, data is written to the pseudo cache page associated with the cache page. A data integration step for integrating the data in the page may be provided.

このようなキャッシュ管理方法によれば、ライトI/O命令が指定するキャッシュページが排他状態である場合に、予めキャッシュメモリ内に確保された擬似キャッシュページにライトI/O命令が示すデータを書き込み、擬似キャッシュページにデータが書き込まれたタイミングでI/O命令の完了通知を出力するので、上述したキャッシュメモリ装置と同様に、キャッシュページの排他制御によって生じるライトI/O命令完了応答の遅延を軽減できる。   According to such a cache management method, when the cache page specified by the write I / O instruction is in the exclusive state, the data indicated by the write I / O instruction is written to the pseudo cache page previously secured in the cache memory. Since the completion notification of the I / O instruction is output at the timing when the data is written to the pseudo cache page, the write I / O instruction completion response delay caused by the exclusive control of the cache page is delayed as in the cache memory device described above. Can be reduced.

次に、本発明のキャッシュ管理用プログラムは、上位装置とメインメモリとの間で入出力されるデータを一時格納するキャッシュメモリを備え、このキャッシュメモリが複数のキャッシュページで分割されたキャッシュ領域を有したキャッシュメモリ装置の動作を制御するコンピュータに、前記上位装置からの前記メインメモリに対するライトI/O命令を入力するI/O命令入力処理と、このライトI/O命令に従って前記データを対応するキャッシュページに書き込むデータ書込処理と、前記キャッシュページに前記データが書き込まれたタイミングで前記I/O命令の完了通知を前記上位装置へ出力する完了通知処理と、このキャッシュページに記憶されたデータを非同期で前記メインメモリに転送するデータ転送処理と、前記上位装置からのI/O命令の処理中にこの処理に係るキャッシュページが別のI/O命令によるアクセスを受けないように前記キャッシュページを排他制御するキャッシュページ排他制御処理と、前記キャッシュページ排他制御処理により退けられたライトI/O命令を受け入れて、前記キャッシュメモリの記憶領域のうち前記キャッシュページとは別に確保された領域である擬似キャッシュページにデータを書き込む擬似キャッシュページ書込処理と、前記擬似キャッシュページに前記データを書き込むタイミングでこの擬似キャッシュページを当該データにかかるライトI/O命令に指定されたキャッシュページに対応付ける擬似キャッシュページ対応付け処理と、前記擬似キャッシュページに前記データが書き込まれたタイミングで前記I/O命令の完了通知を出力する擬似完了通知処理と、前記擬似キャッシュページに記憶されたデータを、当該擬似キャッシュページに対応付けたキャッシュページの排他状態が前記キャッスページ排他制御処理により解除されたタイミングで当該キャッシュページへ書き込むキャッシュページ書込処理とを実行させることを特徴とする。 Next, a cache management program according to the present invention includes a cache memory for temporarily storing data input / output between a host device and a main memory, and the cache memory has a cache area divided by a plurality of cache pages. I / O command input processing for inputting a write I / O command for the main memory from the host device to a computer that controls the operation of the cache memory device provided, and the data corresponding to the write I / O command Data write processing to be written to the cache page, completion notification processing to output a completion notification of the I / O instruction to the host device at the timing when the data is written to the cache page, and data stored in the cache page Data transfer processing for asynchronously transferring data to the main memory, and the host device A cache page exclusive control processing cache page according to the process during processing of I / O instruction is performing exclusive control of the cache page so that it is not subject to access by another I / O commands from the previous SL cache page exclusive control accept the write I / O instruction was rejected by the process, and a pseudo cache page program process to write data to the pseudo cache page and the cache page of the storage area which is an area that is reserved separately from the cache memory, wherein A pseudo cache page association process for associating the pseudo cache page with the cache page specified in the write I / O instruction for the data at the timing of writing the data to the pseudo cache page, and the data is written to the pseudo cache page. I / A pseudo completion notification process of outputting a completion notification of the instruction, the data stored in the pseudo cache page, at the timing when the exclusive state is released by the cash scan page exclusive control processing of the cache page that correlated with the pseudo-cache page A cache page writing process for writing to the cache page is executed.

また、上記のキャッシュ管理用プログラムにおいて、上述した擬似キャッシュページをキャッシュページと同様の固定長区画としてもよい。   In the above cache management program, the above-described pseudo cache page may be a fixed-length partition similar to the cache page.

また、上記のキャッシュ管理用プログラムにおいて、排他状態のキャッシュページに対して新たにライトI/O命令が競合した場合に、そのキャッシュページに対応付けられた擬似キャッシュページにデータを書き込み当該擬似キャッシュページ内のデータを統合するデータ統合処理をコンピュータに実行させてもよい。   In the above cache management program, when a new write I / O instruction competes with an exclusive cache page, data is written to the pseudo cache page associated with the cache page. You may make a computer perform the data integration process which integrates the data in this.

このようなキャッシュ管理用プログラムによれば、キャッシュページ排他制御処理により退けられたライトI/O命令を受け入れて、キャッシュメモリの記憶領域のうちキャッシュページとは別に確保された領域である擬似キャッシュページにデータを書き込み、擬似キャッシュページにデータが書き込まれたタイミングでI/O命令の完了通知を出力するので、上述したキャッシュメモリ装置と同様に、キャッシュページの排他制御によって生じるライトI/O命令完了応答の遅延を軽減できる。 According to the cache management program, key Yasshupeji exclusive control processing dismissed was accepted the write I / O instruction by the pseudo cache page cache page of the storage area of the cache memory is an area that is reserved separately Since the I / O instruction completion notification is output at the timing when the data is written to the pseudo cache page, the write I / O instruction completion caused by the exclusive control of the cache page is completed as in the cache memory device described above. Response delay can be reduced.

本発明は以上のように構成され機能するため、これにより、排他制御により退けられたライトI/O命令を待機させずに受け入れて、キャッシュメモリの記憶領域のうちキャッシュページとは別に確保された領域である擬似キャッシュページにデータを書き込み、この擬似キャッシュページにデータが書き込まれたタイミングでI/O命令の完了通知を出力すると共に、キャッシュページの排他制御が解除された時にそのキャッシュページに対応付けた擬似キャッシュページに書き込まれているデータを当該キャッシュページへ書き込むので、キャッシュページの排他制御を行うことによって生じるライトI/O命令完了応答の遅延をなくし、常にキャッシュヒットライトの応答性能を保証することができ、擬似キャッシュページは、キャッシュページがI/O処理を完了するまでの時間のみデータを記憶しておけばよいので、擬似キャッシュページの記憶容量を小さく設定することができる。
To present invention is constituted as described above functions, by which, by accepting a write I / O instruction was rejected by the exclusive control without waiting separately secured to the cache page of the storage area of the cache memory Data is written to the pseudo cache page, which is the specified area, a notification of completion of the I / O instruction is output at the timing when the data is written to the pseudo cache page, and when the exclusive control of the cache page is released, Since the data written in the associated pseudo cache page is written to the cache page, the write I / O instruction completion response delay caused by the exclusive control of the cache page is eliminated, and the response performance of the cache hit write is always improved. It can be guaranteed and pseudo cache page, cache Since Yupeji is may be stored time only data to complete the I / O processing, it can be set small storage capacity of the pseudo cache page.

以下、本発明における一実施形態を、図面を参照して説明する。   Hereinafter, an embodiment of the present invention will be described with reference to the drawings.

図1は、本実施形態のキャッシュメモリ装置の構成を示すブロック図である。本実施形態のキャッシュメモリ装置200は、図1に示すように、上位装置であるサーバ100と接続されたストレージ装置400内に搭載され、メインメモリに相当するデスクアレイを搭載したディスクエンクロージャ300とディスクアダプタ402を介して接続しており、ホストアダプタ401を介してサーバ100と接続している。   FIG. 1 is a block diagram showing the configuration of the cache memory device of this embodiment. As shown in FIG. 1, the cache memory device 200 of this embodiment is mounted in a storage device 400 connected to a server 100 that is a host device, and a disk enclosure 300 and a disk mounted with a desk array corresponding to a main memory. The connection is made through the adapter 402, and the connection with the server 100 is made through the host adapter 401.

本実施形態のキャッシュメモリ装置200は、キャッシュメモリ装置200の動作を制御する主制御部230と、サーバ100とディスクエンクロージャ300との間で入出力されるデータを一時格納するキャッシュメモリ240とを備えて構成されている。   The cache memory device 200 of this embodiment includes a main control unit 230 that controls the operation of the cache memory device 200 and a cache memory 240 that temporarily stores data input and output between the server 100 and the disk enclosure 300. Configured.

キャッシュメモリ240は、固定長のキャッシュページ0〜Nで分割されたキャッシュ領域241を有し、このキャッシュページ0〜Nを管理するためのコントロールデータ240Aを記憶している。そしてさらに、キャッシュメモリ240は、固定長の擬似キャッシュページA〜Jからなる擬似キャッシュ領域242をキャッシュページ0〜Nとは別に有し、この擬似キャッシュページA〜Jを管理するための擬似キャッシュコントロールデータ240Bを記憶している。   The cache memory 240 has a cache area 241 divided by fixed-length cache pages 0 to N, and stores control data 240A for managing the cache pages 0 to N. Further, the cache memory 240 has a pseudo cache area 242 composed of fixed-length pseudo cache pages A to J separately from the cache pages 0 to N, and a pseudo cache control for managing the pseudo cache pages A to J. Data 240B is stored.

主制御部230は、サーバ100からのディスクエンクロージャ300に対するライトI/O命令に従ってキャッシュページ0〜Nのうち対応するページにデータを書き込み非同期で対応する論理ディスクに書き込むためにディスクエンクロージャ300へ転送するキャッシュメモリ管理手段231と、キャッシュページ0〜Nにデータが書き込まれたタイミングでI/O命令の完了通知をサーバ100へ出力する完了通知手段232と、サーバ100からのI/O命令の処理中にこの処理に係るキャッシュページ0〜Nの1つが別のI/O命令によるアクセスを受けないようにキャッシュページ0〜Nを排他制御するキャッシュページ排他制御手段233とを備えている。   The main control unit 230 writes data to the corresponding page among the cache pages 0 to N in accordance with a write I / O command for the disk enclosure 300 from the server 100 and transfers the data to the disk enclosure 300 for asynchronous writing to the corresponding logical disk. A cache memory management unit 231, a completion notification unit 232 that outputs an I / O instruction completion notification to the server 100 at a timing when data is written to the cache pages 0 to N, and an I / O instruction from the server 100 being processed Cache page exclusive control means 233 for performing exclusive control of the cache pages 0 to N so that one of the cache pages 0 to N related to this processing is not accessed by another I / O instruction.

キャッシュメモリ管理手段231は、キャッシュページ0〜Nのうちの1つに競合し且つキャッシュページ排他制御手段233により退けられたライトI/O命令を受け入れて擬似キャッシュページA〜Jのいずれかにデータを書き込む機能と、擬似キャッシュページA〜Jの1つにデータを書き込んだタイミングでこの擬似キャッシュページA〜Jの1つを対応するキャッシュページ0〜Nの1つに対応付ける機能と、キャッシュページ0〜Nのうち排他状態のページに対して新たにライトI/O命令が競合した場合にそのページに対応付けられた擬似キャッシュページA〜Jの1つにデータを書き込みこの擬似キャッシュページ内のデータを統合する機能と、擬似キャッシュ領域242の擬似キャッシュページA〜Jの1つに記憶されたデータをその擬似キャッシュページA〜Jの1つに対応付けられたキャッシュページの排他状態がキャッシュページ排他制御手段233により解除されるタイミングでそのキャッシュページへ書き込む機能とを備えている。   The cache memory management unit 231 receives the write I / O instruction that competes with one of the cache pages 0 to N and is rejected by the cache page exclusive control unit 233, and stores data in any of the pseudo cache pages A to J. , A function of associating one of the pseudo cache pages A to J with one of the corresponding cache pages 0 to N at a timing when data is written to one of the pseudo cache pages A to J, and a cache page 0 When a write I / O instruction newly conflicts with a page in the exclusive state among .about.N, data is written to one of the pseudo cache pages A to J associated with the page and the data in this pseudo cache page. Stored in one of the pseudo cache pages A to J of the pseudo cache area 242 Over data to the exclusive state of the cache page associated with one of its pseudo cache page A~J and a function of writing to the cache page at the timing is canceled by the cache page exclusive control unit 233.

また、完了通知手段232は、擬似キャッシュ領域242にデータが書き込まれたタイミングでI/O命令の完了通知を出力する機能を備えている。   The completion notifying unit 232 has a function of outputting an I / O instruction completion notification at a timing when data is written to the pseudo cache area 242.

キャッシュメモリ240内のキャッシュページ0〜N及び擬似キャッシュページA〜Jは、それぞれが固定長のブロック領域であり、本実施形態では、この固定長を64セクタ(32KB)に設定している。キャッシュメモリ240に記憶されているコントロールデータ240Aは、図2に示すように、キャッシュページ0〜Nそれぞれに対して、関連付けされている論理ディスク番号(LDN),関連付けされている先頭論理セクタアドレス(LSN),書き込まれているデータの格納範囲を示す論理セクタアドレス(Dirty),転送済みデータの格納範囲を示す論理セクタアドレス(Clean),排他状態に設定されているか否かを表す情報(Seize)であり、キャッシュメモリ管理手段231によってキャッシュページ0〜Nのいずれかにデータが記録されるのに同期して該当する項目が書き換えられる。   Each of the cache pages 0 to N and the pseudo cache pages A to J in the cache memory 240 is a fixed-length block area. In the present embodiment, this fixed length is set to 64 sectors (32 KB). As shown in FIG. 2, the control data 240A stored in the cache memory 240 includes an associated logical disk number (LDN) and an associated leading logical sector address (for each cache page 0 to N). LSN), logical sector address (Dirty) indicating the storage range of the written data, logical sector address (Clean) indicating the storage range of the transferred data, and information indicating whether or not the exclusive state is set (Size) The corresponding item is rewritten in synchronization with the data being recorded in any one of the cache pages 0 to N by the cache memory management means 231.

また、擬似キャッシュコントロールデータ240Bは、図3に示すように、擬似キャッシュページA〜Jそれぞれに対して、関連付けされている論理ディスク番号,関連付けされている先頭論理セクタアドレス,書き込まれているデータの格納範囲を示す論理セクタアドレス,対応しているキャッシュページ番号を対応付けた情報であり、キャッシュメモリ管理手段231によって擬似キャッシュページA〜Jのいずれかにデータが記録されるのに同期して該当する項目が書き換えられることで、その擬似キャッシュページがキャッシュページ0〜Nのいずれかと対応付けられる。また、キャッシュメモリ管理手段231によって擬似キャッシュページA〜Jのいずれかに格納されたデータが対応するキャッシュページに転送されるのに同期して擬似キャッシュコントロールデータ240Bはリセットされる。   Further, as shown in FIG. 3, the pseudo cache control data 240B includes, for each of the pseudo cache pages A to J, an associated logical disk number, an associated head logical sector address, and written data. This is information in which a logical sector address indicating a storage range and a corresponding cache page number are associated with each other. Corresponding to data recorded in any one of the pseudo cache pages A to J by the cache memory management unit 231 By rewriting the item to be performed, the pseudo cache page is associated with one of the cache pages 0 to N. In addition, the pseudo cache control data 240B is reset in synchronization with the data stored in any of the pseudo cache pages A to J being transferred to the corresponding cache page by the cache memory management unit 231.

ここで、上述した主制御部230、すなわち、キャッシュメモリ管理手段231,完了通知手段232,キャッシュページ排他制御手段233については、その機能内容をプログラム化しコンピュータに実行させるように構成してもよい。   Here, the above-described main control unit 230, that is, the cache memory management unit 231, the completion notification unit 232, and the cache page exclusion control unit 233 may be configured such that the function content is programmed and executed by a computer.

次に、本実施形態の全体の動作について説明する。ここで、キャッシュ管理方法についてもその各ステップを示して同時に説明する。   Next, the overall operation of this embodiment will be described. Here, the cache management method will be described at the same time by showing each step.

図4は、本実施形態のキャッシュメモリ装置200の動作を示すフローチャートである。図5〜10は、キャッシュメモリ装置200が管理している論理ディスクに対して、ホストサーバ100から、1セクタずつのライトI/O命令が連続で発行された場合を例にして、本実施形態のキャッシュメモリ装置200の処理動作について示す説明図である。   FIG. 4 is a flowchart showing the operation of the cache memory device 200 of this embodiment. 5 to 10 exemplify a case where write I / O instructions for each sector are continuously issued from the host server 100 to the logical disk managed by the cache memory device 200. 6 is an explanatory diagram showing a processing operation of the cache memory device 200 of FIG.

まず、図5の[手順1]に示すように、ホストサーバ100から、論理ディスク番号4の論理セクタアドレス0×210から1セクタずつのライトI/O命令が連続で発行される。キャッシュメモリ装置200が、このライトI/O命令を入力すると(図4のステップS1のイエス,I/O命令入力ステップ)、図5の[手順2]に示すように、キャッシュメモリ装置200のキャッシュメモリ管理手段231が、コントロールデータ240Aを参照し、論理ディスクの論理セクタアドレス0×200から64セクタに関連付けられているキャッシュページを検索する(図4のステップS2)。   First, as shown in [Procedure 1] in FIG. 5, the host server 100 continuously issues a write I / O command for each sector from the logical sector address 0 × 210 of the logical disk number 4. When the cache memory device 200 inputs this write I / O command (Yes in step S1 in FIG. 4, I / O command input step), as shown in [Procedure 2] in FIG. The memory management unit 231 refers to the control data 240A and searches for a cache page associated with 64 sectors from the logical sector address 0 × 200 of the logical disk (step S2 in FIG. 4).

検索した結果、関連付けられたキャッシュページが見つかりそのキャッシュページが他のタスクで使用されていない状態だった場合、もしくは関連付けられたページが無く新たに関連付けたキャッシュページを作成する場合のキャッシュヒットライト可能な場合は(図4のステップS3のノー)、関連付けられたキャッシュページをそのまま取得する。本実施形態においては、キャッシュページ1を取得する。   As a result of the search, cache hit write is possible when the associated cache page is found and the cache page is not used by other tasks, or when there is no associated page and a newly associated cache page is created If not (No in step S3 in FIG. 4), the associated cache page is acquired as it is. In this embodiment, the cache page 1 is acquired.

キャッシュページ1の取得が完了したら、図6の[手順3]に示すように、キャッシュメモリ管理手段231は、サーバ100からのデータをキャッシュページ1へ格納すると共に、コントロールデータ240Aの書き込み範囲アドレスと排他状態情報とを更新する(図4のステップS4)。   When the acquisition of the cache page 1 is completed, as shown in [Procedure 3] in FIG. 6, the cache memory management unit 231 stores the data from the server 100 in the cache page 1 and the write range address of the control data 240A. The exclusive state information is updated (step S4 in FIG. 4).

そして、図6の[手順4]に示すように、キャッシュメモリ装置200の完了通知手段232が、サーバ100へライト処理完了を通知し(図4のステップS5)、その後、キャッシュページ1に格納されたデータを対応する論理ディスクへ書き込むために、キャッシュメモリ管理手段231がデータをディスクエンクロージャ300へ転送する(図4のステップS6)。   Then, as shown in [Procedure 4] in FIG. 6, the completion notifying means 232 of the cache memory device 200 notifies the server 100 of the completion of the write processing (step S5 in FIG. 4), and then stored in the cache page 1. In order to write the data to the corresponding logical disk, the cache memory management unit 231 transfers the data to the disk enclosure 300 (step S6 in FIG. 4).

一方で、キャッシュページ0〜Nを検索した結果、関連付けられたキャッシュページ1が見つかり、そのキャッシュページ1を他のタスクが使用中、すなわち、キャッシュページ1が排他状態に設定されていた場合(図4のステップS3のイエス)、従来のディスクアレイ装置では、図7に示すように、キャッシュページ1の解放待ちを行う必要があるが、本実施形態では、ここで解放待ちを行わず、図8の[手順8]に示すように、キャッシュメモリ管理手段231が、擬似キャッシュページA〜Jのうち擬似キャッシュページAを取得する。   On the other hand, as a result of searching for the cache pages 0 to N, the associated cache page 1 is found, and the cache page 1 is being used by another task, that is, the cache page 1 is set to the exclusive state (see FIG. 4), the conventional disk array apparatus needs to wait for the release of the cache page 1 as shown in FIG. 7, but in this embodiment, no waiting for release is performed here. As shown in [Procedure 8], the cache memory management unit 231 acquires the pseudo cache page A among the pseudo cache pages A to J.

擬似キャッシュページA〜Jは、キャッシュページ0〜Nと同様に固定長の領域であり、排他状態にあるキャッシュページ0〜Nの1つが解放されるまで一時的に使用される。図8の[手順9]に示すように、キャッシュメモリ管理手段231が、擬似キャッシュページAへデータを格納し(図4のステップS9,擬似キャッシュページ書込ステップ)、擬似キャッシュページコントロールデータを更新して擬似キャッシュページAにキャッシュページ1を対応付ける(擬似キャッシュページ対応付けステップ)。そして、完了通知手段232がサーバ100へライト処理完了を通知する(図4のステップS10,擬似完了通知ステップ)。これにより、常にキャッシュヒットライト状態の応答性能を保証する。   The pseudo cache pages A to J are fixed-length areas like the cache pages 0 to N, and are temporarily used until one of the cache pages 0 to N in the exclusive state is released. As shown in [Procedure 9] in FIG. 8, the cache memory management unit 231 stores the data in the pseudo cache page A (step S9 in FIG. 4, pseudo cache page write step), and updates the pseudo cache page control data. Then, the cache page 1 is associated with the pseudo cache page A (pseudo cache page association step). Then, the completion notification means 232 notifies the server 100 of the completion of the write process (step S10 in FIG. 4, pseudo completion notification step). As a result, the response performance in the cache hit write state is always guaranteed.

擬似キャッシュページAのデータはキャッシュページ1の排他状態がキャッシュページ排他制御手段233によって解放されるまで保持される。図9の[手順11]に示すように、キャッシュページ1が解放される前に、さらに競合するライトI/O命令が発行され受信した場合(図4のステップS8のイエス)、キャッシュメモリ管理手段231は、擬似キャッシュページAにデータを書き込み、擬似キャッシュページA内でデータをマージ(統合)する(図4のステップS14,データ統合ステップ)。   The data of the pseudo cache page A is held until the exclusive state of the cache page 1 is released by the cache page exclusive control means 233. As shown in [Procedure 11] in FIG. 9, when a competing write I / O instruction is issued and received before the cache page 1 is released (Yes in step S8 in FIG. 4), cache memory management means 231 writes data to the pseudo cache page A, and merges (integrates) the data in the pseudo cache page A (step S14 in FIG. 4, data integration step).

そして、図10の[手順13]に示すように、キャッシュページ排他制御手段233によってキャッシュページ1が解放されるタイミングで(図4のステップS11)、キャッシュメモリ管理手段231は、擬似キャッシュページAのデータをキャッシュページ1へ入れ替える(図4のステップS12,キャッシュページ書込ステップ)。そして、キャッシュメモリ管理手段231は、擬似キャッシュページA内のデータをキャッシュページ1へ格納すると、コントロールデータ240Aの書き込み範囲アドレスと排他状態情報とを更新する。その後、キャッシュページ1に格納されたデータを対応する論理ディスクへの書き込むために、キャッシュメモリ管理手段231がデータをディスクエンクロージャ300へ転送する(図4のステップS13)。   Then, as shown in [Procedure 13] in FIG. 10, at the timing when the cache page 1 is released by the cache page exclusive control means 233 (step S11 in FIG. 4), the cache memory management means 231 The data is replaced with the cache page 1 (step S12 in FIG. 4, cache page writing step). When the cache memory management unit 231 stores the data in the pseudo cache page A in the cache page 1, the cache memory management unit 231 updates the write range address and the exclusive state information of the control data 240A. Thereafter, in order to write the data stored in the cache page 1 to the corresponding logical disk, the cache memory management unit 231 transfers the data to the disk enclosure 300 (step S13 in FIG. 4).

本実施形態のキャッシュメモリ装置200は、以上のように構成し動作するので、同一キャッシュページへのI/O命令競合による応答遅延が発生しなくなり、常にキャッシュヒットライトの応答性能を保証することができる。   Since the cache memory device 200 of the present embodiment is configured and operates as described above, there is no response delay due to I / O instruction contention to the same cache page, and the cache hit write response performance is always guaranteed. it can.

ここで、本実施形態におけるキャッシュメモリ装置200は、サーバ100からのデータを記憶するストレージ装置400内に搭載されている構成であるが、上位とメインメモリとの間のキャッシュを担う構成であれば、これに限らず、クライアント端末など情報処理端末内に搭載されてもよい。   Here, the cache memory device 200 according to the present embodiment has a configuration that is mounted in the storage device 400 that stores data from the server 100. However, the present invention is not limited to this, and may be installed in an information processing terminal such as a client terminal.

本発明における一実施形態のキャッシュメモリ装置の構成を示すブロック図である。It is a block diagram which shows the structure of the cache memory apparatus of one Embodiment in this invention. 図1に開示された実施形態におけるコントロールデータを示す図である。It is a figure which shows the control data in embodiment disclosed by FIG. 図1に開示された実施形態における擬似コントロールデータを示す図である。It is a figure which shows the pseudo control data in embodiment disclosed by FIG. 図1に開示された実施形態のキャッシュメモリ装置の動作を示すフローチャートである。2 is a flowchart illustrating an operation of the cache memory device according to the embodiment disclosed in FIG. 1; 図1に開示された実施形態の全体動作の一例の一部分を示す説明図である。It is explanatory drawing which shows a part of example of the whole operation | movement of embodiment disclosed by FIG. 図1に開示された実施形態の全体動作の一例の一部分を示す説明図である。It is explanatory drawing which shows a part of example of the whole operation | movement of embodiment disclosed by FIG. 図1に開示された実施形態の全体動作の一例の一部分を示す説明図である。It is explanatory drawing which shows a part of example of the whole operation | movement of embodiment disclosed by FIG. 図1に開示された実施形態の全体動作の一例の一部分を示す説明図である。It is explanatory drawing which shows a part of example of the whole operation | movement of embodiment disclosed by FIG. 図1に開示された実施形態の全体動作の一例の一部分を示す説明図である。It is explanatory drawing which shows a part of example of the whole operation | movement of embodiment disclosed by FIG. 図1に開示された実施形態の全体動作の一例の一部分を示す説明図である。It is explanatory drawing which shows a part of example of the whole operation | movement of embodiment disclosed by FIG. 従来のストレージ装置を示すブロック図である。It is a block diagram which shows the conventional storage apparatus.

符号の説明Explanation of symbols

0〜N キャッシュページ
100 サーバ
110 ホストバスアダプタ
200 キャッシュメモリ装置
230 主制御部
231 キャッシュメモリ管理手段
232 完了通知手段
233 キャッシュページ排他制御手段
240 キャッシュメモリ
240A コントロールデータ
240B 擬似キャッシュコントロールデータ
241 キャッシュ領域
242 擬似キャッシュ領域
300 ディスクエンクロージャ
400 ストレージ装置
401 ホストアダプタ
402 ディスクアダプタ
A〜J 擬似キャッシュページ
0-N Cache page 100 Server 110 Host bus adapter 200 Cache memory device 230 Main controller 231 Cache memory management means 232 Completion notification means 233 Cache page exclusive control means 240 Cache memory 240A Control data 240B Pseudo cache control data 241 Cache area 242 Pseudo Cache area 300 Disk enclosure 400 Storage device 401 Host adapter 402 Disk adapter A to J Pseudo cache page

Claims (9)

上位装置とメインメモリとの間で入出力されるデータを一時格納するキャッシュメモリを備え、このキャッシュメモリが複数のキャッシュページで分割されたキャッシュ領域を有したキャッシュメモリ装置において、
記上位装置からの前記メインメモリに対するライトI/O命令に従って前記データを対応するキャッシュページに書き込み非同期で前記メインメモリに転送するキャッシュメモリ管理手段と、前記キャッシュページに前記データが書き込まれたタイミングで前記I/O命令の完了通知を前記上位装置へ出力する完了通知手段と、前記上位装置からのI/O命令の処理中にこの処理に係るキャッシュページが別のI/O命令によるアクセスを受けないように前記キャッシュページを排他制御するキャッシュページ排他制御手段とを備え、
前記キャッシュメモリが前記キャッシュ領域とは別の記憶領域である擬似キャッシュページを有し、前記キャッシュメモリ管理手段が、記キャッシュページ排他制御手段により退けられたライトI/O命令を受け入れて前記擬似キャッシュページにデータを書き込む機能と、前記擬似キャッシュページに前記データを書き込むタイミングでこの擬似キャッシュページを当該データにかかるライトI/O命令に指定されたキャッシュページに対応付ける機能とを備え、前記完了通知手段が、前記擬似キャッシュページに前記データが書き込まれたタイミングで前記I/O命令の完了通知を出力する機能を備え、
前記キャッシュメモリ管理手段が、前記擬似キャッシュページに記憶されたデータを、当該擬似キャッシュページに対応付けたキャッシュページの排他状態が前記キャッシュページ排他制御手段により解除されたタイミングで当該キャッシュページへ書き込む機能を備えたことを特徴とするキャッシュメモリ装置。
In a cache memory device that includes a cache memory that temporarily stores data input and output between a host device and a main memory, and the cache memory has a cache area divided by a plurality of cache pages,
Writing the data according to the write I / O command for the main memory from the previous SL host device to the corresponding cache page, the cache memory management means for transferring to said main memory asynchronously, the data in the cache page is written Completion notification means for outputting a completion notification of the I / O instruction to the higher-level device at a timing, and a cache page related to this processing accessed by another I / O command during processing of the I / O command from the higher-level device Cache page exclusive control means for exclusive control of the cache page so as not to receive,
Said cache memory has a pseudo cache page is a separate storage area from that of the cache area, the cache memory management means, before Symbol cache page exclusive control unit by rejected is write I / O the instruction accepting pseudo A function of writing data to a cache page, and a function of associating the pseudo cache page with a cache page specified in a write I / O instruction related to the data at a timing of writing the data to the pseudo cache page Means has a function of outputting a completion notification of the I / O instruction at a timing when the data is written to the pseudo cache page;
A function in which the cache memory management unit writes data stored in the pseudo cache page to the cache page at a timing when the exclusive state of the cache page associated with the pseudo cache page is released by the cache page exclusive control unit cache memory device characterized by comprising a.
前記請求項1に記載のキャッシュメモリ装置において、
前記擬似キャッシュページが前記キャッシュページと同様の固定長区画であることを特徴とするキャッシュメモリ装置。
The cache memory device according to claim 1,
The cache memory device, wherein the pseudo cache page is a fixed-length partition similar to the cache page.
前記請求項1又は2に記載のキャッシュメモリ装置において、
前記キャッシュメモリ管理手段が、前記排他状態のキャッシュページに対してさらにライトI/O命令が競合した場合にそのキャッシュページに対応付けられた擬似キャッシュページにデータを書き込み当該擬似キャッシュページ内のデータを統合する機能を備えたことを特徴とするキャッシュメモリ装置。
In the cache memory device according to claim 1 or 2,
When the cache memory management means further conflicts with a write I / O instruction for the cache page in the exclusive state, the cache memory management means writes data to the pseudo cache page associated with the cache page and stores the data in the pseudo cache page. A cache memory device having a function of integrating.
上位装置とメインメモリとの間で入出力されるデータを一時格納するキャッシュメモリを備え、このキャッシュメモリが複数のキャッシュページで分割されたキャッシュ領域を有したキャッシュメモリ装置にあって、前記上位装置からのI/O命令の処理中にこの処理に係るキャッシュページが別のI/O命令によるアクセスを受けないように前記キャッシュページを排他制御するキャッシュ管理方法において、
前記上位装置からの前記メインメモリに対するライトI/O命令を入力し、
このライトI/O命令が指定するキャッシュページが排他状態に設定されている場合に、前記キャッシュメモリの記憶領域のうち前記キャッシュページとは別に確保された領域である擬似キャッシュページに前記ライトI/O命令に係るデータを書き込み、この擬似キャッシュページを当該データにかかるライトI/O命令に指定されたキャッシュページに対応付け、
前記擬似キャッシュページに前記データが書き込まれたタイミングで前記I/O命令の完了通知を前記上位装置へ出力し、
前記キャッシュページの排他状態が解除されたタイミングで、当該キャッシュページに対応付けられた前記擬似キャッシュページに記憶されたデータを当該キャッシュページへ書き込むことを特徴とするキャッシュ管理方法。
A cache memory device having a cache memory for temporarily storing data input / output between a host device and a main memory, the cache memory having a cache area divided by a plurality of cache pages, the host device In a cache management method for exclusive control of the cache page so that the cache page related to this process is not accessed by another I / O instruction during the processing of an I / O instruction from
Input a write I / O command for the main memory from the host device ,
When the cache page specified by the write I / O instruction is set to the exclusive state, the write I / O is added to the pseudo cache page which is an area secured separately from the cache page in the storage area of the cache memory. write the data according to the O instruction, associating the specified cache pages in the write I / O command according to the pseudo-cache page in the data,
Output the completion notification of the I / O instruction to the host device at the timing when the data is written to the pseudo cache page
A cache management method , wherein data stored in the pseudo cache page associated with the cache page is written to the cache page at a timing when the exclusive state of the cache page is released .
前記請求項4に記載のキャッシュ管理方法において、
前記擬似キャッシュページが前記キャッシュページと同様の固定長区画に設定したことを特徴とするキャッシュ管理方法。
In the cache management method according to claim 4,
A cache management method, wherein the pseudo cache page is set to a fixed-length partition similar to the cache page.
前記請求項4又は5に記載のキャッシュ管理方法において、
前記排他状態のキャッシュページに対してさらにライトI/O命令が競合した場合には、そのキャッシュページに対応付けられた擬似キャッシュページにデータを書き込み当該擬似キャッシュページ内のデータを統合することを特徴とするキャッシュ管理方法。
In the cache management method according to claim 4 or 5,
If the further light I / O command to the cache page of the exclusive state is conflict, and Turkey to integrate the data in the pseudo-cache page write data to the pseudo cache page associated with that cache page A cache management method characterized by the above.
上位装置とメインメモリとの間で入出力されるデータを一時格納するキャッシュメモリを備え、このキャッシュメモリが複数のキャッシュページで分割されたキャッシュ領域を有したキャッシュメモリ装置の動作を制御するコンピュータに、
前記上位装置からの前記メインメモリに対するライトI/O命令を入力するI/O命令入力処理と、このライトI/O命令に従って前記データを対応するキャッシュページに書き込むデータ書込処理と、前記キャッシュページに前記データが書き込まれたタイミングで前記I/O命令の完了通知を前記上位装置へ出力する完了通知処理と、このキャッシュページに記憶されたデータを非同期で前記メインメモリに転送するデータ転送処理と、前記上位装置からのI/O命令の処理中にこの処理に係るキャッシュページが別のI/O命令によるアクセスを受けないように前記キャッシュページを排他制御するキャッシュページ排他制御処理と、
記キャッシュページ排他制御処理により退けられたライトI/O命令を受け入れて、前記キャッシュメモリの記憶領域のうち前記キャッシュページとは別に確保された領域である擬似キャッシュページにデータを書き込む擬似キャッシュページ書込処理と、前記擬似キャッシュページに前記データを書き込むタイミングでこの擬似キャッシュページを当該データにかかるライトI/O命令に指定されたキャッシュページに対応付ける擬似キャッシュページ対応付け処理と、前記擬似キャッシュページに前記データが書き込まれたタイミングで前記I/O命令の完了通知を出力する擬似完了通知処理と、前記擬似キャッシュページに記憶されたデータを、当該擬似キャッシュページに対応付けたキャッシュページの排他状態が前記キャッスページ排他制御処理により解除されたタイミングで当該キャッシュページへ書き込むキャッシュページ書込処理とを実行させることを特徴とするキャッシュ管理用プログラム。
A computer having a cache memory for temporarily storing data input / output between a host device and a main memory, and the cache memory having a cache area divided by a plurality of cache pages. ,
I / O command input processing for inputting a write I / O command for the main memory from the host device, data write processing for writing the data to a corresponding cache page according to the write I / O command, and the cache page A completion notification process for outputting the completion notification of the I / O instruction to the host device at a timing when the data is written to the host device, and a data transfer process for asynchronously transferring the data stored in the cache page to the main memory. A cache page exclusive control process for performing exclusive control of the cache page so that the cache page related to this process is not accessed by another I / O instruction during processing of the I / O instruction from the host device ;
Previous Stories cache page exclusive control dismissed was accepted the write I / O instruction by the processing, the pseudo cache pages from said cache page of the storage area of the cache memory and writes the data to the pseudo cache page is an area that is reserved separately A write process, a pseudo cache page associating process for associating the pseudo cache page with the cache page specified in the write I / O instruction for the data at the timing of writing the data to the pseudo cache page, and the pseudo cache page A pseudo-completion notification process for outputting a notification of completion of the I / O instruction at the timing when the data is written to the cache page, and an exclusive state of the cache page in which the data stored in the pseudo-cache page is associated with the pseudo-cache page Is the above-mentioned Program cache management, characterized in that to execute a cache page program process of writing at the timing is canceled by di exclusive control processing to the cache page.
前記請求項7に記載のキャッシュ管理用プログラムにおいて、
前記擬似キャッシュページを前記キャッシュページと同様の固定長区画に設定したことを特徴とするキャッシュ管理用プログラム。
In the cache management program according to claim 7,
A cache management program, wherein the pseudo cache page is set to a fixed-length partition similar to the cache page.
前記請求項7又は8に記載のキャッシュ管理用プログラムにおいて、
前記排他状態のキャッシュページに対してさらにライトI/O命令が競合した場合に、そのキャッシュページに対応付けられた擬似キャッシュページにデータを書き込み当該擬似キャッシュページ内のデータを統合するデータ統合処理を前記コンピュータに実行させることを特徴とするキャッシュ管理用プログラム。
In the cache management program according to claim 7 or 8,
When a write I / O instruction conflicts with the cache page in the exclusive state, a data integration process is performed in which data is written to the pseudo cache page associated with the cache page and the data in the pseudo cache page is integrated. A cache management program which is executed by the computer.
JP2007076247A 2007-03-23 2007-03-23 Cache memory device, cache management method thereof, and cache management program Expired - Fee Related JP4770766B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007076247A JP4770766B2 (en) 2007-03-23 2007-03-23 Cache memory device, cache management method thereof, and cache management program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007076247A JP4770766B2 (en) 2007-03-23 2007-03-23 Cache memory device, cache management method thereof, and cache management program

Publications (2)

Publication Number Publication Date
JP2008234532A JP2008234532A (en) 2008-10-02
JP4770766B2 true JP4770766B2 (en) 2011-09-14

Family

ID=39907199

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007076247A Expired - Fee Related JP4770766B2 (en) 2007-03-23 2007-03-23 Cache memory device, cache management method thereof, and cache management program

Country Status (1)

Country Link
JP (1) JP4770766B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5228935B2 (en) * 2009-01-19 2013-07-03 日本電気株式会社 Auxiliary storage
JP5455945B2 (en) * 2011-02-14 2014-03-26 株式会社東芝 Arbitration device, storage device, information processing device, and program
JP6101170B2 (en) * 2013-07-26 2017-03-22 株式会社日立製作所 Computer system, cache management method, and computer

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3358795B2 (en) * 1997-03-27 2002-12-24 インターナショナル・ビジネス・マシーンズ・コーポレーション Disk drive device and control method therefor
JP4131514B2 (en) * 2003-04-21 2008-08-13 インターナショナル・ビジネス・マシーンズ・コーポレーション Network system, server, data processing method and program
JP2006065402A (en) * 2004-08-24 2006-03-09 Fujitsu Ltd Access control method, disc control device, and storage device

Also Published As

Publication number Publication date
JP2008234532A (en) 2008-10-02

Similar Documents

Publication Publication Date Title
US4466059A (en) Method and apparatus for limiting data occupancy in a cache
US9053019B2 (en) Non-volatile memory device, a data processing device using the same, and a swapping method used by the data processing and non-volatile memory devices
JP4788528B2 (en) Disk control device, disk control method, and disk control program
JP5536658B2 (en) Buffer memory device, memory system, and data transfer method
US20050114592A1 (en) Storage system and data caching method in the system
US11494308B2 (en) Methods and devices for bypassing the internal cache of an advanced DRAM memory controller
JP2008269331A (en) Device driver
JPH06259197A (en) Control system for array type disk system
KR101075907B1 (en) Semiconductor memory device, data transfer device, and method of controlling semiconductor memory device
JP4770766B2 (en) Cache memory device, cache management method thereof, and cache management program
JP4892812B2 (en) Cache control and data processing system and processing program therefor
JP2007102436A (en) Storage controller and storage control method
JP2006323541A (en) Data transfer circuit and data transfer method
GB2361557A (en) Data storage device with data transfer before write instruction
JP2005258789A (en) Storage device, storage controller, and write back cache control method
JP4734432B2 (en) Data storage system
JP2018106573A (en) Storage control apparatus and control program
JP3964821B2 (en) Processor, cache system and cache memory
JP4506292B2 (en) Cache control method, data processing system, and processing program therefor
JP2852232B2 (en) Computer
JP4959766B2 (en) Device driver
JP2006065402A (en) Access control method, disc control device, and storage device
JP3614886B2 (en) File system
JP5228935B2 (en) Auxiliary storage
JP3460265B2 (en) Data transfer method between computers

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110112

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110309

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: 20110524

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110606

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

Free format text: PAYMENT UNTIL: 20140701

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4770766

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees