JP3710351B2 - Data processing device - Google Patents

Data processing device Download PDF

Info

Publication number
JP3710351B2
JP3710351B2 JP2000076284A JP2000076284A JP3710351B2 JP 3710351 B2 JP3710351 B2 JP 3710351B2 JP 2000076284 A JP2000076284 A JP 2000076284A JP 2000076284 A JP2000076284 A JP 2000076284A JP 3710351 B2 JP3710351 B2 JP 3710351B2
Authority
JP
Japan
Prior art keywords
cache
data
unit
request
external 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.)
Expired - Fee Related
Application number
JP2000076284A
Other languages
Japanese (ja)
Other versions
JP2001265653A (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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2000076284A priority Critical patent/JP3710351B2/en
Publication of JP2001265653A publication Critical patent/JP2001265653A/en
Application granted granted Critical
Publication of JP3710351B2 publication Critical patent/JP3710351B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、外部記憶ユニット、例えばハードディスク装置を備えるデータ処理装置、特にその外部記憶ユニットへの遅延書き込みに関する。
【0002】
【従来の技術】
磁気ディスク装置は、メモリに比べて単位容量当たりのコストが低いという長所を有する反面、その機械的動作に起因してアクセス時間がメモリに比べて長いという短所を有する。そのため、コンピュータシステムにおいては、主記憶を高価ではあるが高速の半導体メモリにて構成し、一方、磁気ディスク装置を外部記憶装置として用いるという階層記憶が用いられている。階層記憶においては、メモリと磁気ディスク装置とのアクセス速度差をディスクキャッシュ機構を用いて吸収することが行われる。
【0003】
この従来より用いられているディスクキャッシュは、中央処理装置を含む本体上でオペレーティングシステム(Operating System:OS)により提供される。ディスクキャッシュ機構は、磁気ディスク装置へのアクセスがあったとき、アクセスされたアドレスのデータのコピーを主記憶上のディスクキャッシュに記憶する。そして、同じアドレスへの磁気ディスクアクセス要求があった場合、実際の磁気ディスクへはアクセスせずにメモリ上のディスクキャッシュへの読み書きで対応する。但し、磁気ディスクへの書き込み要求があった場合、実際の磁気ディスク上でのデータとディスクキャッシュのデータとが不整合となるため、所定のタイミングでディスクキャッシュの内容を磁気ディスクにまとめて書き込む動作を行う。
【0004】
ここで、本体が不意に停止した場合には、ディスクキャッシュの内容が磁気ディスクに反映されず、両者間の不整合が生じるおそれがある。そこで、OSのアプリケーションインターフェースにディスクキャッシュを経由しないディスクI/O要求の種別を設けて、重要なデータに関しては直接、磁気ディスク装置に書き込むことを可能としてその保護が図られている。
【0005】
図5は、従来のコンピュータにおけるキャッシュ制御を説明するためのブロック図である。また図6は従来のコンピュータにおけるOSでのディスクI/O処理のフロー図であり、キャッシュ制御を説明するための図である。本体2にてOS4の上で動作するアプリケーションプログラムが磁気ディスク装置6へのアクセスを要求した場合、その要求の種別が要求判定ロジック8により判定される(S30)。要求判定ロジック8は、要求種別がディスクキャッシュを経由して行う通常I/O要求であるか、または利用せずに直接、ディスクコントローラ10にI/O要求を出す直接アクセス要求であるかを判定する。例えばアプリケーションプログラムAPP1が出したアクセス要求が通常I/O要求であった場合、要求判定ロジック8での判定S30に基づいて、OSが提供するディスクキャッシュロジック12を介してメモリ14上のディスクキャッシュメモリとの間でデータの読み書きが行われ(S32)、その完了を以て、APP1にREAD/WRITE完了が通知され(S34)、APP1からのREAD/WRITE要求処理が終了する(S36)。また、ディスクキャッシュロジック12は、所定のタイミングでメモリ14のディスクキャッシュの内容を磁気ディスク装置6へ反映させる。
【0006】
一方、例えばアプリケーションプログラムAPP2が出したアクセス要求が直接アクセス要求であった場合、要求判定ロジック8での判定S30に基づいて、OSはディスクコントローラ10へ直接にI/O要求を出して、APP2と磁気ディスク装置6との間の直接のデータの読み書きを実現する(S38)。そしてその完了を以て、APP2にREAD/WRITE完了が通知され(S34)、APP2からのREAD/WRITE要求処理が終了する(S36)。
【0007】
【発明が解決しようとする課題】
従来は、上述のように重要なデータの保護といった観点から、メモリ上のディスクキャッシュを利用せずに本体から直接に磁気ディスク装置にアクセスする場合があった。その場合、本体のアプリケーションからは磁気ディスク装置への実際のアクセス時間が見えることとなり、処理が迅速に行われないという問題があった。
【0008】
本発明は上記問題点を解消するためになされたもので、本体の故障等の影響に起因して本体と磁気ディスク装置との記憶内容に不整合が生じることを回避しつつ、アクセス時間の低下が防止されるデータ処理装置を提供することを目的とする。
【0009】
【課題を解決するための手段】
本発明に係るデータ処理装置は、記憶制御部が、記憶制御部キャッシュメモリと、前記外部記憶ユニットへ書き込み要求されたデータが前記メイン処理ユニットの前記キャッシュからのものか否かを、前記キャッシュから書き込み要求される前記データがブロック単位であるか否かに基づいて判定する判定手段と、前記判定手段により前記キャッシュからのものでないと判定されたデータを前記記憶制御部キャッシュメモリに一時格納して前記外部記憶ユニットへの遅延書き込みを行う一方、前記判定手段により前記キャッシュからのものであると判定されたデータを前記記憶制御部キャッシュメモリを介さずに前記外部記憶ユニットへ書き込みを行う書き込み制御手段とを有するものである。
【0010】
本発明に係るデータ処理装置においては、前記判定手段がさらに前記データのデータサイズを考慮して前記判定を行うことを特徴とする。
【0011】
本発明に係るデータ処理装置は、記憶制御部が、記憶制御部キャッシュメモリと、前記外部記憶ユニットへ書き込み要求されたデータが前記メイン処理ユニットの前記キャッシュからのものか否かを、前記データのデータサイズに基づいて判定し、前記データサイズが所定の閾値未満である場合には前記キャッシュからのものでないと判定し、前記データサイズが所定の閾値以上である場合には、前記キャッシュからのものであると判定する判定手段と、前記判定手段により前記キャッシュからのものでないと判定されたデータを前記記憶制御部キャッシュメモリに一時格納して前記外部記憶ユニットへの遅延書き込みを行う一方、前記判定手段により前記キャッシュからのものであると判定されたデータを前記記憶制御部キャッシュメモリを介さずに前記外部記憶ユニットへ書き込みを行う書き込み制御手段と、を有するものである。
【0012】
【発明の実施の形態】
次に、本発明の実施形態について図面を参照して説明する。
【0013】
図1は、本発明の実施の形態であるキャッシュ制御を説明するためのコンピュータシステムの概略のブロック図である。本コンピュータシステムの本体50(メイン処理ユニット)は基本的に従来より用いられているものと同様である。すなわち、OS52は図6のフロー図と基本的に同様の処理を行い、ディスクコントローラ54(記憶制御部)を介して磁気ディスク装置56(外部記憶ユニット)との間のデータの読み書きを行う。具体的には、OS52の上で動作するアプリケーションプログラムが磁気ディスク装置56へのアクセスを要求した場合、その要求の種別が要求判定ロジック58により判定される(S30)。要求判定ロジック58は、要求種別がディスクキャッシュを経由して行う通常I/O要求であるか、または利用せずに直接、ディスクコントローラ54にI/O要求を出す直接アクセス要求であるかを判定する。例えばアプリケーションプログラムAPP1が出したアクセス要求が通常I/O要求であった場合、要求判定ロジック58での判定S30に基づいて、OSが提供するディスクキャッシュロジックであるOSキャッシュロジック60を介してメモリ62上のディスクキャッシュメモリとの間でデータの読み書きが行われ(S32)、その完了を以て、APP1にREAD/WRITE完了が通知され(S34)、APP1からのREAD/WRITE要求処理が終了する(S36)。メモリ62のディスクキャッシュの内容は、OSキャッシュロジック60に基づいて、所定のタイミングで磁気ディスク装置56に対して遅延書き込みされ、その内容が磁気ディスク装置56に反映される。
【0014】
一方、例えばアプリケーションプログラムAPP2が出したアクセス要求が直接アクセス要求であった場合、要求判定ロジック58での判定S30に基づいて、OSはディスクコントローラ54へ直接にI/O要求を出してデータの読み書きを行う(S38)。そしてその完了を以て、APP2にREAD/WRITE完了が通知され(S34)、APP2からのREAD/WRITE要求処理が終了する(S36)。
【0015】
以上のように、本体50からはOS52の制御に従って、磁気ディスク装置56への書き込み要求が行われる。この書き込み要求はディスクコントローラ54によって処理される。本コンピュータシステムの特徴はこのディスクコントローラ54にある。
【0016】
従来のディスクコントローラ10は、OS4から書き込み要求があると、順次、磁気ディスク装置6にデータを書き込んでいた。これに対し、本システムは、ディスクコントローラ54に記憶制御部キャッシュメモリ64を備える。ディスクコントローラ54の制御ロジック部66は記憶制御部キャッシュメモリ64を用いた制御を行うために、特徴判定ロジック68とコントローラキャッシュロジック70とを備えている。ここで特徴判定ロジック68は、磁気ディスク装置56へ書き込み要求されたデータがOS52のキャッシュからのものか否かを判定する判定手段であり、コントローラキャッシュロジック70は、OS52のキャッシュからのものでないと判定されたデータを記憶制御部キャッシュメモリ64に一時格納して磁気ディスク装置56への遅延書き込みを行う書き込み制御手段であり、これらの動作は後述する説明により明らかとなる。
【0017】
図2はディスクコントローラ54における磁気ディスク装置56への書き込み制御を説明するためのフロー図である。制御ロジック部66は、OS52から磁気ディスク装置56へのアクセス要求を受けると処理を開始する(S80)。制御ロジック部66ではまず特徴判定ロジック68がそのアクセス要求のパラメータの特徴に基づいて、当該要求がOS52にてキャッシュされたデータの書き込み要求であるか否かを判定する(S82)。
【0018】
例えばアプリケーションプログラムAPP1の通常I/O要求に応じて、OS52にてキャッシュされたデータを磁気ディスク装置56へ反映させる場合、特徴判定ロジック68での判定S82に基づいて、制御ロジック部66は直ちにI/O要求を出して磁気ディスク装置56へアクセスする(S84)。そしてその完了を以て、OS52にREAD/WRITE完了が通知され(S86)、OS52からのREAD/WRITE要求処理が終了する(S88)。
【0019】
一方、アプリケーションプログラムAPP2の直接アクセス要求に応じて、OS52が、OS52のキャッシュを介さずに直接、磁気ディスク装置56へデータを書き込みことを要求した場合、特徴判定ロジック68での判定S82に基づいて、コントローラキャッシュロジック70を介して記憶制御部キャッシュメモリ64との間でデータの読み書きが行われ(S90)、その完了を以て、OS52にREAD/WRITE完了が通知され(S86)、OS52からのREAD/WRITE要求処理が終了する(S88)。記憶制御部キャッシュメモリ64の内容は、コントローラキャッシュロジック70に基づいて、所定のタイミングで磁気ディスク装置56に対して遅延書き込みされ、その内容が磁気ディスク装置56に反映される。
【0020】
OS52での従来のディスクキャッシュに加えて行われる上述のようなディスクコントローラ54でのキャッシュにより、アプリケーションプログラムが直接アクセス要求したデータに関しては、本体50に故障が生じても磁気ディスク装置56に反映されるとともに、磁気ディスク装置56へのアクセス時間の短縮が図られる。一方、OS52にてキャッシュされたデータに関しては、そのOS52でのキャッシュによりアクセス速度が確保されるので、ディスクコントローラ54でのキャッシュは特には必要ではない。よって、OS52にてキャッシュされたデータに対するディスクコントローラ54でのキャッシュを行わないこととすることで、記憶制御部キャッシュメモリ64の所要量を抑制することができる。
【0021】
次に、特徴判定ロジック68について説明する。上述したように特徴判定ロジック68はOS52からのアクセス要求のパラメータの特徴に基づいて、当該要求がOS52にてキャッシュされたデータの書き込み要求であるか否かを判定する判定手段である(S82)。アクセス要求のパラメータとしては、磁気ディスク装置56でのアクセスされる領域の開始アドレス及びデータ長がある。OS52のキャッシュと磁気ディスク装置56との読み書きに関するアクセス要求は、以下の特徴を有している。
【0022】
(i)ブロック単位での要求であるため、アクセス要求のパラメータの開始アドレスがブロックの倍数になっている。
【0023】
(ii)ブロック単位での要求であるため、アクセス要求のパラメータのデータ長がブロックの倍数になっている。
【0024】
(iii) OS52のキャッシュの容量に応じたまとまったデータ量の要求であるため、アクセス要求のパラメータのデータ長が比較的大きい。
【0025】
図3は、磁気ディスク装置56の記憶領域とアクセス要求の例とを示す模式図である。上記(i)〜(iii)の特徴の全てを有する磁気ディスク装置56の記憶領域100〜104が、OS52のキャッシュにかかわるアクセス要求によってアクセスされるアドレス範囲の例である。例えばブロック長は2048バイトといった比較的大きなサイズである。一方、上記(i)〜(iii)の特徴の少なくともいずれかを欠いた磁気ディスク装置56の記憶領域110〜114が、OS52のキャッシュを介さないアクセス要求によってアクセスされるアドレス範囲の例である。
【0026】
図4は、特徴判定ロジック68の処理のフロー図である。特徴判定ロジック68は、まずOS52からのアクセス要求のパラメータが上記特徴(iii)を有するか否かを判断し(S120)、データ長が所定の閾値未満である場合には、OS52のキャッシュを経由していないと判断する(S122)。一方、データ長が所定の閾値以上である場合には、次に同パラメータが上記特徴(i)を有するか否かを判断し(S124)、アクセス開始アドレスがブロック長の倍数ではない場合には、OS52のキャッシュを経由していないと判断する(S122)。一方、開始アドレスがブロック長の倍数である場合には、次に同パラメータが上記特徴(ii)を有するか否かを判断し(S126)、データ長がブロック長の倍数ではない場合には、OS52のキャッシュを経由していないと判断する(S122)。一方、データ長がブロック長の倍数である場合には、上記特徴(i)〜(iii)の全てが満たされたこととなるので、特徴判定ロジック68は当該アクセス要求がOS52のキャッシュのデータを書き込む要求であると判断する(S128)。なお、図3に示す例では、条件(iii)のデータ長の閾値は2ブロックである。
【0027】
上述したように、本実施の形態では、本体50側からのデータ書き込み要求がOS52のキャッシュを介したデータに関するものか否かは、アクセス要求のパラメータの特徴に基づいてディスクコントローラ54側にて判別することができる。この実施の形態では、本体50のOS52の動作は基本的に従来と同様のままでよい。
【0028】
なお、本発明の1つの特徴は、磁気ディスク装置56への直接アクセス要求、すなわちOS52でキャッシュされていないデータを磁気ディスク装置56へ書き込む要求に対して、ディスクコントローラ54にキャッシュする手段を設けた点にある。この特徴を有する構成を、従来と異なる本体OSにて実現することも可能である。例えば、OSが、当該OSのキャッシュからのデータに関する磁気ディスク装置56へのアクセス要求と直接アクセス要求とを識別し得る情報をそれら各アクセス要求に付与し、ディスクコントローラ54では、その識別情報に基づいて記憶制御部キャッシュメモリ64への一時格納を行うか否かを制御するといった構成が可能である。
【0029】
【発明の効果】
本発明のデータ処理装置によれば、磁気ディスク装置等の外部記憶ユニットを制御する記憶制御部に記憶制御部キャッシュメモリを備える。この記憶制御部キャッシュメモリは、外部記憶ユニットへ書き込み要求されたデータが本体OSのキャッシュからのものでない場合に、当該データを一時格納して外部記憶ユニットへの遅延書き込みを行う。これにより、アプリケーションプログラムが直接アクセス要求したデータに関しては、そのデータ内容が、本体に故障等を生じた場合でも外部記憶ユニットに反映されるとともに、外部記憶ユニットへのアクセス時間の短縮が図られる。すなわち、本発明によれば、外部記憶ユニットへの直接アクセス要求が行われるデータの保護と、そのアクセス時間の短縮との双方が図られるという効果がある。
【図面の簡単な説明】
【図1】 本発明の実施の形態であるキャッシュ制御を説明するためのコンピュータシステムの概略のブロック図である。
【図2】 ディスクコントローラにおける磁気ディスク装置への書き込み制御を説明するためのフロー図である。
【図3】 磁気ディスク装置上の記憶領域とアクセス要求の例とを示す模式図である。
【図4】 特徴判定ロジックの処理のフロー図である。
【図5】 従来のコンピュータにおけるキャッシュ制御を説明するためのブロック図である。
【図6】 従来のコンピュータにおけるOSでのディスクI/O処理のフロー図であり、キャッシュ制御を説明するための図である。
【符号の説明】
50 本体、52 オペレーティングシステム(OS)、54 ディスクコントローラ、56 磁気ディスク装置、62 メモリ、64 記憶制御部キャッシュメモリ、66 制御ロジック部、68 特徴判定ロジック、70 コントローラキャッシュロジック。
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a data processing apparatus including an external storage unit, for example, a hard disk device, and more particularly to delayed writing to the external storage unit.
[0002]
[Prior art]
The magnetic disk device has an advantage that the cost per unit capacity is lower than that of the memory, but has a disadvantage that the access time is longer than that of the memory due to its mechanical operation. Therefore, in the computer system, hierarchical storage is used in which the main memory is composed of an expensive but high-speed semiconductor memory, while the magnetic disk device is used as an external storage device. In hierarchical storage, a difference in access speed between a memory and a magnetic disk device is absorbed using a disk cache mechanism.
[0003]
This conventionally used disk cache is provided by an operating system (OS) on a main body including a central processing unit. When the magnetic disk device is accessed, the disk cache mechanism stores a copy of the accessed address data in the disk cache on the main memory. When a magnetic disk access request to the same address is made, the actual magnetic disk is not accessed, and the read / write to the disk cache on the memory is handled. However, when there is a write request to the magnetic disk, the actual data on the magnetic disk and the data in the disk cache become inconsistent, so the contents of the disk cache are written to the magnetic disk at a predetermined timing. I do.
[0004]
Here, if the main body stops unexpectedly, the contents of the disk cache are not reflected on the magnetic disk, and there is a risk of inconsistency between the two. Therefore, the OS application interface is provided with a type of disk I / O request that does not pass through the disk cache, and important data can be directly written to the magnetic disk device to protect it.
[0005]
FIG. 5 is a block diagram for explaining cache control in a conventional computer. FIG. 6 is a flowchart of disk I / O processing in an OS in a conventional computer, and is a diagram for explaining cache control. When an application program operating on the OS 4 in the main body 2 requests access to the magnetic disk device 6, the type of the request is determined by the request determination logic 8 (S30). The request determination logic 8 determines whether the request type is a normal I / O request made via a disk cache or a direct access request for issuing an I / O request directly to the disk controller 10 without using it. . For example, if the access request issued by the application program APP1 is a normal I / O request, based on the determination S30 in the request determination logic 8, the disk cache memory on the memory 14 via the disk cache logic 12 provided by the OS Is read / written (S32), and the completion of the READ / WRITE is notified to APP1 (S34), and the READ / WRITE request processing from APP1 is completed (S36). The disk cache logic 12 reflects the contents of the disk cache in the memory 14 to the magnetic disk device 6 at a predetermined timing.
[0006]
On the other hand, for example, when the access request issued by the application program APP2 is a direct access request, the OS issues an I / O request directly to the disk controller 10 based on the determination S30 in the request determination logic 8, and the The direct data read / write with the disk device 6 is realized (S38). Upon completion, the APP2 is notified of the completion of READ / WRITE (S34), and the READ / WRITE request processing from the APP2 ends (S36).
[0007]
[Problems to be solved by the invention]
Conventionally, from the viewpoint of protecting important data as described above, a magnetic disk device may be accessed directly from the main body without using a disk cache on a memory. In this case, the actual access time to the magnetic disk device can be seen from the application of the main body, and there is a problem that the processing cannot be performed quickly.
[0008]
The present invention has been made to solve the above-mentioned problems, and it is possible to reduce the access time while avoiding inconsistency in the storage contents of the main body and the magnetic disk device due to the influence of the main body failure or the like. An object of the present invention is to provide a data processing apparatus in which the above is prevented.
[0009]
[Means for Solving the Problems]
The data processing apparatus according to the present invention, the storage control unit, a storage control unit cache memory, whether the data write request to the external storage unit is from a said cache of said main processing unit, from said cache A determination unit configured to determine based on whether or not the data requested to be written is a block unit; and the data determined by the determination unit not to be from the cache is temporarily stored in the storage control unit cache memory Write control means for performing delayed writing to the external storage unit, while writing data determined by the determination means to be from the cache to the external storage unit without going through the storage controller cache memory It has.
[0010]
In the data processing apparatus according to the present invention, the determination unit further performs the determination in consideration of a data size of the data.
[0011]
In the data processing device according to the present invention, the storage control unit determines whether the data requested to be written to the storage control unit cache memory and the external storage unit is from the cache of the main processing unit. Judgment based on the data size, if the data size is less than a predetermined threshold, determine that the data is not from the cache, and if the data size is greater than or equal to the predetermined threshold, the data from the cache A determination unit that determines that the data is not from the cache by the determination unit and temporarily stores the data in the storage control unit cache memory to perform delayed writing to the external storage unit; Means for storing data determined to be from the cache by the storage controller cache memory And write control means for writing to the external storage unit without passing through, and has a.
[0012]
DETAILED DESCRIPTION OF THE INVENTION
Next, embodiments of the present invention will be described with reference to the drawings.
[0013]
FIG. 1 is a schematic block diagram of a computer system for explaining cache control according to an embodiment of the present invention. The main body 50 (main processing unit) of the computer system is basically the same as that conventionally used. That is, the OS 52 performs basically the same processing as the flowchart of FIG. 6 and reads / writes data from / to the magnetic disk device 56 (external storage unit) via the disk controller 54 (storage control unit). Specifically, when an application program operating on the OS 52 requests access to the magnetic disk device 56, the type of the request is determined by the request determination logic 58 (S30). The request determination logic 58 determines whether the request type is a normal I / O request made via a disk cache or a direct access request for issuing an I / O request directly to the disk controller 54 without using it. . For example, when the access request issued by the application program APP1 is a normal I / O request, based on the determination S30 in the request determination logic 58, the memory 62 passes through the OS cache logic 60 that is the disk cache logic provided by the OS. Data is read from and written to the upper disk cache memory (S32). Upon completion of the read / write, APP1 is notified of completion of READ / WRITE (S34), and the READ / WRITE request processing from APP1 is completed (S36). . The contents of the disk cache in the memory 62 are delayed and written to the magnetic disk device 56 at a predetermined timing based on the OS cache logic 60, and the contents are reflected in the magnetic disk device 56.
[0014]
On the other hand, for example, when the access request issued by the application program APP2 is a direct access request, the OS issues an I / O request directly to the disk controller 54 based on the determination S30 in the request determination logic 58 to read / write data. Perform (S38). Upon completion, the APP2 is notified of the completion of READ / WRITE (S34), and the READ / WRITE request processing from the APP2 ends (S36).
[0015]
As described above, the main body 50 issues a write request to the magnetic disk device 56 according to the control of the OS 52. This write request is processed by the disk controller 54. This computer system is characterized by this disk controller 54.
[0016]
The conventional disk controller 10 sequentially writes data to the magnetic disk device 6 when there is a write request from the OS 4. On the other hand, this system includes a storage controller cache memory 64 in the disk controller 54. The control logic unit 66 of the disk controller 54 includes a feature determination logic 68 and a controller cache logic 70 in order to perform control using the storage control unit cache memory 64. Here, the feature determination logic 68 is determination means for determining whether or not the data requested to be written to the magnetic disk device 56 is from the OS 52 cache, and the controller cache logic 70 is not from the OS 52 cache. This is write control means for temporarily storing the determined data in the storage control unit cache memory 64 and performing delayed writing to the magnetic disk device 56, and these operations will be apparent from the following description.
[0017]
FIG. 2 is a flowchart for explaining write control to the magnetic disk device 56 in the disk controller 54. When receiving an access request from the OS 52 to the magnetic disk device 56, the control logic unit 66 starts processing (S80). In the control logic unit 66, the feature determination logic 68 first determines whether or not the request is a write request for data cached in the OS 52 based on the feature of the parameter of the access request (S82).
[0018]
For example, when the data cached by the OS 52 is reflected on the magnetic disk device 56 in response to a normal I / O request of the application program APP1, the control logic unit 66 immediately determines the I based on the determination S82 in the feature determination logic 68. A / O request is issued to access the magnetic disk device 56 (S84). Upon completion, the OS 52 is notified of the completion of READ / WRITE (S86), and the READ / WRITE request processing from the OS 52 ends (S88).
[0019]
On the other hand, in response to the direct access request of the application program APP2, when the OS 52 requests to write data directly to the magnetic disk device 56 without going through the cache of the OS 52, based on the determination S82 in the feature determination logic 68, Data is read from and written to the storage controller cache memory 64 via the controller cache logic 70 (S90). Upon completion of the data read / write completion, the OS 52 is notified of completion of READ / WRITE (S86), and the READ / WRITE from the OS 52 is read. The request process ends (S88). The contents of the storage controller cache memory 64 are delayed and written to the magnetic disk device 56 at a predetermined timing based on the controller cache logic 70, and the contents are reflected in the magnetic disk device 56.
[0020]
Due to the above-described cache in the disk controller 54 performed in addition to the conventional disk cache in the OS 52, the data directly requested by the application program to be accessed is reflected in the magnetic disk device 56 even if a failure occurs in the main body 50. At the same time, the access time to the magnetic disk device 56 is shortened. On the other hand, regarding the data cached in the OS 52, the access speed is secured by the cache in the OS 52, so that the cache in the disk controller 54 is not particularly necessary. Therefore, by not caching the data cached by the OS 52 in the disk controller 54, the required amount of the storage controller cache memory 64 can be suppressed.
[0021]
Next, the feature determination logic 68 will be described. As described above, the feature determination logic 68 is a determination unit that determines whether the request is a write request for data cached in the OS 52 based on the characteristics of the parameter of the access request from the OS 52 (S82). . The access request parameters include the start address and data length of the area to be accessed in the magnetic disk device 56. An access request related to reading / writing between the cache of the OS 52 and the magnetic disk device 56 has the following characteristics.
[0022]
(I) Since the request is in units of blocks, the start address of the parameter of the access request is a multiple of the block.
[0023]
(Ii) Since the request is in units of blocks, the data length of the parameter of the access request is a multiple of the block.
[0024]
(iii) Since the request is for a collective amount of data according to the cache capacity of the OS 52, the data length of the parameter of the access request is relatively large.
[0025]
FIG. 3 is a schematic diagram showing a storage area of the magnetic disk device 56 and an example of an access request. The storage areas 100 to 104 of the magnetic disk device 56 having all the features (i) to (iii) are examples of address ranges that are accessed by access requests related to the cache of the OS 52. For example, the block length is a relatively large size such as 2048 bytes. On the other hand, the storage areas 110 to 114 of the magnetic disk device 56 lacking at least one of the features (i) to (iii) are examples of address ranges accessed by an access request that does not go through the cache of the OS 52.
[0026]
FIG. 4 is a flowchart of the process of the feature determination logic 68. The feature determination logic 68 first determines whether or not the parameter of the access request from the OS 52 has the feature (iii) (S120). If the data length is less than the predetermined threshold value, the feature determination logic 68 passes through the OS 52 cache. It is determined that it has not been performed (S122). On the other hand, if the data length is equal to or greater than the predetermined threshold value, it is next determined whether or not the parameter has the feature (i) (S124), and if the access start address is not a multiple of the block length. Then, it is determined that it does not go through the cache of the OS 52 (S122). On the other hand, if the start address is a multiple of the block length, it is next determined whether the parameter has the above feature (ii) (S126). If the data length is not a multiple of the block length, It is determined that the cache does not pass through the OS 52 (S122). On the other hand, when the data length is a multiple of the block length, all of the above features (i) to (iii) are satisfied, so the feature determination logic 68 uses the cache data of the OS 52 as the access request. It is determined that the request is a write request (S128). In the example shown in FIG. 3, the threshold value of the data length of the condition (iii) is 2 blocks.
[0027]
As described above, in the present embodiment, whether or not the data write request from the main body 50 is related to data via the cache of the OS 52 is determined on the disk controller 54 side based on the characteristics of the access request parameter. can do. In this embodiment, the operation of the OS 52 of the main body 50 may basically remain the same as the conventional one.
[0028]
One feature of the present invention is that it provides means for caching in the disk controller 54 in response to a direct access request to the magnetic disk device 56, that is, a request to write data not cached by the OS 52 to the magnetic disk device 56. It is in. A configuration having this feature can also be realized by a main body OS different from the conventional one. For example, the OS gives information that can identify the access request to the magnetic disk device 56 and the direct access request regarding the data from the cache of the OS to each access request, and the disk controller 54 based on the identification information. The storage control unit cache memory 64 can be configured to control whether or not temporary storage is performed.
[0029]
【The invention's effect】
According to the data processing apparatus of the present invention, the storage control unit that controls the external storage unit such as a magnetic disk device includes the storage control unit cache memory. When the data requested to be written to the external storage unit is not from the cache of the main body OS, the storage control unit cache memory temporarily stores the data and performs delayed writing to the external storage unit. As a result, regarding the data requested directly by the application program, the data contents are reflected in the external storage unit even when a failure or the like occurs in the main body, and the access time to the external storage unit is shortened. That is, according to the present invention, there is an effect that it is possible to both protect data for which a direct access request is made to the external storage unit and shorten the access time.
[Brief description of the drawings]
FIG. 1 is a schematic block diagram of a computer system for explaining cache control according to an embodiment of the present invention.
FIG. 2 is a flowchart for explaining write control to a magnetic disk device in a disk controller.
FIG. 3 is a schematic diagram showing a storage area on the magnetic disk device and an example of an access request.
FIG. 4 is a flowchart of processing of a feature determination logic.
FIG. 5 is a block diagram for explaining cache control in a conventional computer.
FIG. 6 is a flowchart of disk I / O processing by an OS in a conventional computer, for explaining cache control.
[Explanation of symbols]
50 main body, 52 operating system (OS), 54 disk controller, 56 magnetic disk device, 62 memory, 64 storage control unit cache memory, 66 control logic unit, 68 feature determination logic, 70 controller cache logic.

Claims (3)

記憶制御部により制御される外部記憶ユニットと、オペレーティングシステムにより制御され前記外部記憶ユニットに対し遅延書き込みを行うキャッシュを備えるメイン処理ユニットとを含むデータ処理装置において、
前記記憶制御部は、
記憶制御部キャッシュメモリと、
前記外部記憶ユニットへ書き込み要求されたデータが前記メイン処理ユニットの前記キャッシュからのものか否かを、前記キャッシュから書き込み要求される前記データがブロック単位であるか否かに基づいて判定する判定手段と、
前記判定手段により前記キャッシュからのものでないと判定されたデータを前記記憶制御部キャッシュメモリに一時格納して前記外部記憶ユニットへの遅延書き込みを行う一方、前記判定手段により前記キャッシュからのものであると判定されたデータを前記記憶制御部キャッシュメモリを介さずに前記外部記憶ユニットへ書き込みを行う書き込み制御手段と、
を有することを特徴とするデータ処理装置。
In a data processing apparatus including an external storage unit controlled by a storage control unit and a main processing unit including a cache that is controlled by an operating system and performs delayed writing to the external storage unit,
The storage control unit
A storage controller cache memory;
A determination unit that determines whether data requested to be written to the external storage unit is from the cache of the main processing unit based on whether the data requested to be written from the cache is a block unit. When,
The data determined by the determination means as not being from the cache is temporarily stored in the storage control unit cache memory and written to the external storage unit while being delayed from the cache by the determination means. Write control means for writing data determined to be to the external storage unit without going through the storage control unit cache memory;
A data processing apparatus comprising:
前記判定手段は、さらに前記データのデータサイズを考慮して前記判定を行うことを特徴とする請求項1記載のデータ処理装置。  The data processing apparatus according to claim 1, wherein the determination unit further performs the determination in consideration of a data size of the data. 記憶制御部により制御される外部記憶ユニットと、オペレーティングシステムにより制御され前記外部記憶ユニットに対し遅延書き込みを行うキャッシュを備えるメイン処理ユニットとを含むデータ処理装置において、
前記記憶制御部は、
記憶制御部キャッシュメモリと、
前記外部記憶ユニットへ書き込み要求されたデータが前記メイン処理ユニットの前記キャッシュからのものか否かを、前記データのデータサイズに基づいて判定し、前記データサイズが所定の閾値未満である場合には前記キャッシュからのものでないと判定し、前記データサイズが所定の閾値以上である場合には、前記キャッシュからのものであると判定する判定手段と、
前記判定手段により前記キャッシュからのものでないと判定されたデータを前記記憶制御部キャッシュメモリに一時格納して前記外部記憶ユニットへの遅延書き込みを行う一方、前記判定手段により前記キャッシュからのものであると判定されたデータを前記記憶制御部キャッシュメモリを介さずに前記外部記憶ユニットへ書き込みを行う書き込み制御手段と、
を有することを特徴とするデータ処理装置。
In a data processing apparatus including an external storage unit controlled by a storage control unit and a main processing unit including a cache that is controlled by an operating system and performs delayed writing to the external storage unit,
The storage control unit
A storage controller cache memory;
Whether the data requested to be written to the external storage unit is from the cache of the main processing unit is determined based on the data size of the data, and when the data size is less than a predetermined threshold Determining means for determining that the data is not from the cache and determining that the data size is from the cache if the data size is greater than or equal to a predetermined threshold ;
The data determined by the determination means as not being from the cache is temporarily stored in the storage control unit cache memory and written to the external storage unit while being delayed from the cache by the determination means. Write control means for writing data determined to be to the external storage unit without going through the storage control unit cache memory;
A data processing apparatus comprising:
JP2000076284A 2000-03-17 2000-03-17 Data processing device Expired - Fee Related JP3710351B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000076284A JP3710351B2 (en) 2000-03-17 2000-03-17 Data processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000076284A JP3710351B2 (en) 2000-03-17 2000-03-17 Data processing device

Publications (2)

Publication Number Publication Date
JP2001265653A JP2001265653A (en) 2001-09-28
JP3710351B2 true JP3710351B2 (en) 2005-10-26

Family

ID=18594048

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000076284A Expired - Fee Related JP3710351B2 (en) 2000-03-17 2000-03-17 Data processing device

Country Status (1)

Country Link
JP (1) JP3710351B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4634477B2 (en) * 2008-03-07 2011-02-16 レノボ・シンガポール・プライベート・リミテッド Media file playback without interruption
US8825685B2 (en) * 2009-11-16 2014-09-02 Symantec Corporation Selective file system caching based upon a configurable cache map
WO2014006656A1 (en) * 2012-07-05 2014-01-09 Hitachi, Ltd. Computer system, cache control method and computer program
JP5944587B2 (en) * 2013-07-29 2016-07-05 株式会社日立製作所 Computer system and control method

Also Published As

Publication number Publication date
JP2001265653A (en) 2001-09-28

Similar Documents

Publication Publication Date Title
US5418929A (en) Controller for storage unit and method of controlling storage unit
EP0077452B1 (en) Data promotion in storage subsystems
JP3707854B2 (en) Computer having cache function and cache memory control method
JPH037978B2 (en)
US7913029B2 (en) Information recording apparatus and control method thereof
JP2000181773A5 (en)
US7000077B2 (en) Device/host coordinated prefetching storage system
JP3710351B2 (en) Data processing device
JP3736305B2 (en) Disk cache system and disk cache control method
JP2004206424A (en) Data processing device and data transfer method for data processing device
JP3882461B2 (en) Storage device system and backup acquisition method thereof
JP2006113882A (en) Data management device
JPH0519981A (en) Data write normal end judging method for optical disk device
JP4826873B2 (en) Microprocessor system with hot routine memory
JPH01303547A (en) Control system for information memory
JPH0520196A (en) Disk cache controller
JP2690691B2 (en) Arithmetic processing device having write-back cache memory
JPH08137753A (en) Disk cache device
JP2002108704A (en) Disk cache control system
JPH0235537A (en) Multiple volume update control system
JPH0644139A (en) Disk cache system and its page rewrite control method
JPH02132515A (en) Pre-read control system
JPH10254781A (en) Auxiliary storage device
JPH02165354A (en) Auxiliary storage device
JPH07121307A (en) Multiplexed disk device

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050209

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050301

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050406

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20050406

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050531

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050720

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050809

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20080819

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20090819

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees