JP2010009622A - デバイスドライバ - Google Patents
デバイスドライバ Download PDFInfo
- Publication number
- JP2010009622A JP2010009622A JP2009233192A JP2009233192A JP2010009622A JP 2010009622 A JP2010009622 A JP 2010009622A JP 2009233192 A JP2009233192 A JP 2009233192A JP 2009233192 A JP2009233192 A JP 2009233192A JP 2010009622 A JP2010009622 A JP 2010009622A
- Authority
- JP
- Japan
- Prior art keywords
- driver
- data
- read
- cache memory
- request
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 230000015654 memory Effects 0.000 claims description 95
- 230000002093 peripheral effect Effects 0.000 claims description 21
- 230000006870 function Effects 0.000 claims description 5
- 230000002708 enhancing effect Effects 0.000 abstract 1
- 238000000034 method Methods 0.000 description 29
- 238000010586 diagram Methods 0.000 description 17
- 230000008569 process Effects 0.000 description 15
- 239000000872 buffer Substances 0.000 description 8
- 230000004044 response Effects 0.000 description 3
- 230000005856 abnormality Effects 0.000 description 2
- 230000006378 damage Effects 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
Images
Landscapes
- Information Transfer Systems (AREA)
Abstract
【解決手段】USBマスストレージドライバ503とUSBホストコントローラドライバ504の間に下位側ドライバ152を設ける。下位側ドライバ152は、上位側からリード、ライト要求を受信し、転送されるデータをキャッシュする。ライト時には上位側から受信したデータをキャッシュし、ある程度の容量のデータとしてまとめて下位側に送信する。リード時には下位側からある程度の容量のデータをまとめて読み出し、上位側に送信する。
【選択図】図4
Description
次に、上位側ドライバ151および下位側ドライバ152の詳細な動作について説明する。図5は、上位側ドライバ151および下位側ドライバ152の詳細な構成を示す機能ブロック図である。なお、図4と共通する構成については同一の符号を付し、その説明を省略する。上位側ドライバ151は、リード、ライト要求受信部155を備えている。また、下位側ドライバ152は、コントローラ156、データベース157、キャッシュメモリ158A〜158C、タイマ159、およびコマンドキュー160を備えている。
この予測手法は、外付HDD2のファイルシステムを解析することでアクセス予測を行う手法である。HDDのファイルシステムが、例えばFATファイルシステムフォーマットである場合、ファイル管理領域を参照することで、個々のファイルの記録位置(セクタ)やサイズを判断することができる。よって、上位側のアプリケーションやドライバからリード要求が有ったとき、その要求が示す記録位置に対応するファイルのデータにアクセスが有ると予測する。またファイルサイズ以上のリードを行わないように予測することで、必要以上のリードをせずに、無駄な処理時間を削減する。
この予測手法は、接続される対象デバイスのタイプ(上記実施形態ではHDD)や転送すべきデータのファイル構成(コンテンツ種別)に基づいてアクセス予測を行う手法である。例えば、接続されるデバイスがDVD−ROMであり、このデバイスにDVD−Videoメディアが挿入されている場合、順次リードがされ、ライト要求がされることがない。そのため、リード用キャッシュメモリの容量一杯までデータがキャッシュされるように予測データベースを作成する。なお、リード用キャッシュメモリにキャッシュしたデータが全てリードされた場合、即時このキャッシュを破棄し、新たなデータをキャッシュすれば、効率的にリード用キャッシュメモリを用いることができる。
この予測手法は、上記デバイス種別、コンテンツ種別に基づく予測の応用例であり、デバイス種別に応じてデータ転送速度の傾向を判断し、これに基づいてアクセス予測を行う手法である。例えば、多層型DVDメディアが接続される場合、各層の境界線を越えるランダムアクセスは、転送速度が非常に遅くなる。そのため、各層の境界線をまたぐアクセスの頻度が低くなるようにキャッシュするようにして、予測データベースを作成する。
この予測手法は、リード要求時に、上記(1)〜(3)の手法で予測したリード要求に基づいて、対象デバイスから一度にデータ転送しないように、予測データベースを修正する(分割する)手法である。例えばリード要求の所定倍(例えば4倍)の容量のデータをまずキャッシュするように予測データベースを修正する。このキャッシュしたデータが、結果的に全て上位側に転送される場合、さらに所定倍の容量のデータをキャッシュするように予想データベースを修正する。順次、キャッシュするデータの容量を大きくすることで、転送時間を抑えることができる。また、実際の要求が予想データベースと異なり、その後リードが無かった場合に無駄となるデータ量を削減することができる。また、都度キャッシュメモリの容量を変化させることで、RAMの消費を抑えることもできる。なお、予想データベースの修正処理は、実際にリードを行うとき(後述のs29の処理時)に行ってもよい。
2−外付HDD
Claims (4)
- 周辺機器が接続されたパーソナルコンピュータのOSに搭載され、
前記周辺機器に対するライトの要求を上限のデータ転送サイズで複数のコマンドに分割して順次送信するソフトウェアの下位側に配置されるデバイスドライバであって、
前記パーソナルコンピュータを、
前記ライトの要求に対応するデータをキャッシュするキャッシュメモリと、
当該デバイスドライバが前記上限のデータ転送サイズのライトの要求を受信したとき、この後連続してライトの要求がされると予測し、各コマンドに対するコマンド終了を擬似的に上位側に返信するとともに、上位側から転送されるデータを順次前記キャッシュメモリにキャッシュし、前記ソフトウェアが分割する各コマンドあたりのデータ転送サイズの上限よりも大きいデータ転送サイズのコマンドを発行して前記キャッシュメモリのデータを前記周辺機器に転送する処理を行う制御部と、
して機能させるデバイスドライバ。 - 周辺機器が接続されたパーソナルコンピュータのOSに搭載され、
前記周辺機器に対するリードの要求を上限のデータ転送サイズで複数のコマンドに分割して順次送信するソフトウェアの下位側に配置されるデバイスドライバであって、
前記パーソナルコンピュータを、
前記リードの要求に対応するデータをキャッシュするキャッシュメモリと、
当該デバイスドライバが前記上限のデータ転送サイズのリードの要求を受信したとき、この後連続してリードの要求がされると予測し、前記ソフトウェアが分割する各コマンドあたりのデータ転送サイズの上限よりも大きいデータ転送サイズのコマンドを発行して前記周辺機器からデータを読み出して前記キャッシュメモリにキャッシュする処理を行い、その後上位側から順次送信されたリード要求のコマンドに対応するデータが前記キャッシュメモリにキャッシュされている場合に前記キャッシュメモリから当該データを上位側に転送する制御部と、
して機能させるデバイスドライバ。 - 前記制御部は、USBマスストレージデバイスである前記周辺機器とデータ転送を行うことを特徴とする請求項1または2に記載のデバイスドライバ。
- 前記制御部は、OS標準のUSBマスストレージドライバで動作する前記周辺機器とデータ転送を行うことを特徴とする請求項3に記載のデバイスドライバ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009233192A JP4959766B2 (ja) | 2009-10-07 | 2009-10-07 | デバイスドライバ |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009233192A JP4959766B2 (ja) | 2009-10-07 | 2009-10-07 | デバイスドライバ |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007112043A Division JP4391548B2 (ja) | 2007-04-20 | 2007-04-20 | デバイスドライバ |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010009622A true JP2010009622A (ja) | 2010-01-14 |
JP4959766B2 JP4959766B2 (ja) | 2012-06-27 |
Family
ID=41589940
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009233192A Active JP4959766B2 (ja) | 2009-10-07 | 2009-10-07 | デバイスドライバ |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4959766B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017182281A (ja) * | 2016-03-29 | 2017-10-05 | サイレックス・テクノロジー株式会社 | デバイスサーバシステム |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016045706A (ja) | 2014-08-22 | 2016-04-04 | ルネサスエレクトロニクス株式会社 | 情報処理装置、周辺機器制御方法、及びフィルタドライバ |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5519853A (en) * | 1993-03-11 | 1996-05-21 | Legato Systems, Inc. | Method and apparatus for enhancing synchronous I/O in a computer system with a non-volatile memory and using an acceleration device driver in a computer operating system |
JPH1040170A (ja) * | 1996-07-26 | 1998-02-13 | Toshiba Corp | ディスクキャッシュシステム |
JP2000353126A (ja) * | 1999-06-09 | 2000-12-19 | Mitsubishi Electric Corp | 計算機システムのバッファキャッシュ再分割方法及びバッファキャッシュ再分割機能付き計算機システム |
JP2001125749A (ja) * | 1999-10-29 | 2001-05-11 | Toshiba Corp | 外部記憶装置ドライバプログラムを記録した記録媒体、及び外部記憶装置アクセス機能を有する計算機 |
JP2001154811A (ja) * | 1999-11-30 | 2001-06-08 | Toshiba Corp | 計算機システム |
JP2003337722A (ja) * | 2002-03-13 | 2003-11-28 | Hitachi Ltd | 計算機システム |
JP2006309579A (ja) * | 2005-04-28 | 2006-11-09 | Hitachi Ltd | 記憶制御装置及びストレージシステム |
US20060271740A1 (en) * | 2005-05-31 | 2006-11-30 | Mark Timothy W | Performing read-ahead operation for a direct input/output request |
-
2009
- 2009-10-07 JP JP2009233192A patent/JP4959766B2/ja active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5519853A (en) * | 1993-03-11 | 1996-05-21 | Legato Systems, Inc. | Method and apparatus for enhancing synchronous I/O in a computer system with a non-volatile memory and using an acceleration device driver in a computer operating system |
JPH1040170A (ja) * | 1996-07-26 | 1998-02-13 | Toshiba Corp | ディスクキャッシュシステム |
JP2000353126A (ja) * | 1999-06-09 | 2000-12-19 | Mitsubishi Electric Corp | 計算機システムのバッファキャッシュ再分割方法及びバッファキャッシュ再分割機能付き計算機システム |
JP2001125749A (ja) * | 1999-10-29 | 2001-05-11 | Toshiba Corp | 外部記憶装置ドライバプログラムを記録した記録媒体、及び外部記憶装置アクセス機能を有する計算機 |
JP2001154811A (ja) * | 1999-11-30 | 2001-06-08 | Toshiba Corp | 計算機システム |
JP2003337722A (ja) * | 2002-03-13 | 2003-11-28 | Hitachi Ltd | 計算機システム |
JP2006309579A (ja) * | 2005-04-28 | 2006-11-09 | Hitachi Ltd | 記憶制御装置及びストレージシステム |
US20060271740A1 (en) * | 2005-05-31 | 2006-11-30 | Mark Timothy W | Performing read-ahead operation for a direct input/output request |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017182281A (ja) * | 2016-03-29 | 2017-10-05 | サイレックス・テクノロジー株式会社 | デバイスサーバシステム |
Also Published As
Publication number | Publication date |
---|---|
JP4959766B2 (ja) | 2012-06-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4391548B2 (ja) | デバイスドライバ | |
TWI394164B (zh) | 在快閃記憶體系統中可中斷的快取清空 | |
US8032700B2 (en) | Hybrid multi-tiered caching storage system | |
JP4788528B2 (ja) | ディスク制御装置、ディスク制御方法、ディスク制御プログラム | |
US6467022B1 (en) | Extending adapter memory with solid state disks in JBOD and RAID environments | |
US7447836B2 (en) | Disk drive storage defragmentation system | |
US20090216945A1 (en) | Storage system which utilizes two kinds of memory devices as its cache memory and method of controlling the storage system | |
WO2014102879A1 (en) | Data storage apparatus and control method thereof | |
JP2007241927A (ja) | データ記憶装置及び方法 | |
US9104578B2 (en) | Defining address ranges used to cache speculative read data | |
US20080046660A1 (en) | Information recording apparatus and control method thereof | |
KR20100132244A (ko) | 메모리 시스템 및 메모리 시스템 관리 방법 | |
US20080025706A1 (en) | Information recording apparatus and control method thereof | |
JP3568110B2 (ja) | キャッシュメモリの制御方法、コンピュータシステム、ハードディスクドライブ装置およびハードディスク制御装置 | |
WO2007146845A2 (en) | Configurable and scalable hybrid multi-tiered caching storage system | |
JP4959766B2 (ja) | デバイスドライバ | |
JP2007102436A (ja) | ストレージ制御装置およびストレージ制御方法 | |
JP4391569B2 (ja) | 情報処理システム | |
JP5594647B2 (ja) | ストレージ装置及びその制御方法 | |
JP4563314B2 (ja) | ストレージシステム制御装置、ストレージシステム制御プログラム、ストレージシステム制御方法 | |
JP5216719B2 (ja) | 情報処理装置および制御装置 | |
JP4814983B2 (ja) | データ格納制御装置、データ格納制御方法およびデータ格納制御プログラム | |
JP2011018237A (ja) | ディスクアレイ装置及びその制御方法 | |
JP2007188408A (ja) | ストレージ装置及び方法 | |
JP2006185335A (ja) | 情報処理装置及びこの情報処理装置の制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100414 |
|
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: 20120306 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120321 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150330 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4959766 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |