JP2004206602A - Virtual storage device system, client computer, virtual storage device driver program, server device, and data management program - Google Patents

Virtual storage device system, client computer, virtual storage device driver program, server device, and data management program Download PDF

Info

Publication number
JP2004206602A
JP2004206602A JP2002377556A JP2002377556A JP2004206602A JP 2004206602 A JP2004206602 A JP 2004206602A JP 2002377556 A JP2002377556 A JP 2002377556A JP 2002377556 A JP2002377556 A JP 2002377556A JP 2004206602 A JP2004206602 A JP 2004206602A
Authority
JP
Japan
Prior art keywords
data
storage
storage device
client computer
file system
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2002377556A
Other languages
Japanese (ja)
Inventor
Naoki Kobayashi
小林  直樹
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.)
Shinano Kenshi Co Ltd
Original Assignee
Shinano Kenshi Co Ltd
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 Shinano Kenshi Co Ltd filed Critical Shinano Kenshi Co Ltd
Priority to JP2002377556A priority Critical patent/JP2004206602A/en
Publication of JP2004206602A publication Critical patent/JP2004206602A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a virtual storage device system capable of providing a client computer with a storage area of a storage means of a server device. <P>SOLUTION: The client computer C is provided with a virtual storage device driver 28 for transmitting a reading request of a storage block to the server device S when a request for reading data of the storage block is received from a file system 14 and for transferring the data transmitted from the server system S corresponding to the reading request to the file system 14 as the data of the storage block. The server device S is provided with a data management means 10 for reading data corresponding to the data of the storage block from storage means 4, 6 and for transmitting it to the client computer C when the reading request of the storage block is received from the client computer C. <P>COPYRIGHT: (C)2004,JPO&NCIPI

Description

【0001】
【発明の属する技術分野】
本発明は、サーバ装置の記憶手段の記憶領域を、ネットワークを介してクライアントコンピュータに提供するための仮想ストレージデバイス・システム、および、それに用いられる、クライアントコンピュータ、仮想ストレージデバイス・ドライバプログラム、サーバ装置、ならびにデータ管理プログラムに関する。
【0002】
【従来の技術】
従来、ネットワークに接続されたサーバコンピュータに接続された記憶手段の記憶領域を、前記ネットワークを介して複数または単数のクライアントコンピュータに提供するクライアントサーバシステムとしては、特許文献1に開示されたネットワークシステムがある。
【0003】
特許文献1に開示されたネットワークシステムのように、サーバコンピュータの記憶手段(サーバコンピュータに内蔵された記憶手段も、サーバコンピュータに接続された記憶手段も含む。以下同じ)の記憶領域を、クライアントコンピュータに提供する方法としては、一般的に、サーバコンピュータおよびクライアントコンピュータのそれぞれのOSが備えるネットワーク共有機能を用いる方法が普及している。
【0004】
図8に、サーバコンピュータSBのハードディスク74の記憶領域を、クライアントコンピュータCB,CB・・に、それぞれのコンピュータのOS71,82のネットワーク共有機能を用いて提供するクライアントサーバシステムBの説明図を示す。図8に示すシステムBは、ネットワークNを介して互いに通信可能に接続されたサーバコンピュータSBと複数のクライアントコンピュータCB,CB・・とを具備する。なお、図8においては、クライアントコンピュータCBの内部構成は、一台のみ図示されているが、他のクライアントコンピュータCB,CB・・も、同様の内部構成をもつ。
【0005】
各クライアントコンピュータCBは、例えばWindows(R)やUNIX(R)等の、汎用OS82と、ストレージデバイスとしての磁気ディスクドライブである、単数または複数のハードディスク88およびフロッピー(R)ディスクドライブ92と、ハードディスク88およびフロッピー(R)ディスクドライブ92の、ストレージデバイス・ドライバ(磁気ディスク・ドライバ)としてインストールされたハードディスク・ドライバ86およびフロッピー(R)ディスク・ドライバ90と、ハードディスク・ドライバ86およびフロッピー(R)ディスク・ドライバ90を介してハードディスク88、およびフロッピー(R)ディスクドライブ92のフロッピー(R)ディスクのセクタやクラスタ等の記憶ブロックにデータを読み書き可能に設けられ、ファイルと記憶ブロックとの対応付けを行うファイルシステム84(例えばFAT等)と、ネットワークNを介してデータの送受信が可能な通信部94とを備える。
【0006】
サーバコンピュータSBは、例えばWindows(R)やUNIX(R)等の、汎用OS71と、記憶手段としての、単数または複数のハードディスク74,74およびフロッピー(R)ディスクドライブ76と、ネットワークNを介してデータの送受信が可能な通信部78とを備える。
なお、サーバコンピュータSBも、クライアントコンピュータCBと同様、ハードディスク74,74およびフロッピー(R)ディスクドライブ76のドライバや、ファイルシステムを備えるが、図8上では省略している。
【0007】
図8に示す従来のシステムBにおいては、サーバコンピュータSBのハードディスク74,74の記憶領域を、クライアントコンピュータCBが使用する場合には、サーバコンピュータSBのOS71のネットワーク共有機能を用いて、ハードディスク74上の記憶領域(例えばフォルダ)を、共有領域(例えば共有フォルダ)として設定する。すると、サーバコンピュータSBのOS71が備えるネットワーク共有プロトコル71a、およびクライアントコンピュータCBのOS82が備えるネットワーク共有プロトコル82aを介して、クライアントコンピュータCBのOS82やOS82上で実行されるアプリケーション96,96・・は、サーバコンピュータSBのハードディスク74の記憶領域を使用可能となる。
【0008】
【特許文献1】
特開2000−148571号公報(第1−3図)
【0009】
【発明が解決しようとする課題】
図8に示す従来のクライアントサーバシステムBにおいて、クライアントコンピュータCB,CB・・は、サーバコンピュータSBのネットワーク共有プロトコル71aに対応した、ネットワーク共有プロトコル82aを搭載する必要がある。
例えば、サーバコンピュータSBのOS71としてWindows(R)を採用した場合には、ネットワーク共有プロトコルとしてはSMB(Server Message Block)が使用される。この場合、クライアントコンピュータCBは、サーバコンピュータSBとネットワーク共有を行うためには、SMBに対応したネットワーク共有プロトコル82aを搭載する必要が生じる。SMBに対応したネットワーク共有プロトコル82aを搭載するためには、クライアントコンピュータCBのOS82として、SMBが実装されたWindows(R)や、SMBを提供するソフトウェアであるSambaをインストール可能なUNIX(R)を採用すればよい。
【0010】
しかしながら、クライアントサーバシステムにおいて、クライアントコンピュータCB毎に異なる、多種類のOS82が採用される場合が少なくなく、必ずしも全てのクライアントコンピュータCBのOS82として、Windows(R)やUNIX(R)等、サーバコンピュータSBのネットワーク共有プロトコル71aに対応したネットワーク共有プロトコル82aが搭載された(または搭載可能な)OSが採用されるとは限らない。
【0011】
クライアントコンピュータCBのOS82として、サーバコンピュータSBのネットワーク共有プロトコル71aに対応したネットワーク共有プロトコル82aが搭載された(または搭載可能な)OSを採用しない場合、サーバコンピュータSBのネットワーク共有プロトコル71aに対応した、クライアントコンピュータCBのOS82用のネットワーク共有プロトコル82aを実現するプログラムを、新規に開発する必要が生じる。
【0012】
しかし、Windows(R)等の一般に普及した汎用OSのネットワーク共有プロトコルは、非常に複雑であり、また、その内容が公開されていない場合があり、それに対応したネットワーク共有プロトコルを実現するプログラムを新規に開発するのは、非常に手間が掛かり、困難であるという課題がある。
【0013】
また、従来の、ネットワーク共有プロトコル82aを備えたOS82は、ハードディスク88等のストレージデバイスに記録されたファイルは、ファイルシステム84を介して扱い、一方、ネットワークNに接続された他のコンピュータ上に記録されたファイルは、ネットワーク共有プロトコル82aを介して扱っている。従って、OS82は、ファイル毎に、ストレージデバイス上のファイルか、ネットワーク上のファイルかを管理する必要があり、OS82のファイル管理処理が煩雑となっている。特に近年は、各ファイルが、ストレージデバイス上のファイルか、ネットワーク上のファイルかを、アプリケーション96が意識しなくても良いように、アプリケーション96が両ファイルを同様に扱えるようにする要求が高まっているため、OS82は、全く異なる保存対象に保存されたファイルを同等に扱えるようにアプリケーション96に対して提供する必要が生じ、OS82の処理負荷が重くなっているという課題がある。
【0014】
本発明は上記課題を解決すべくなされ、その目的とするところは、サーバ装置の記憶手段の記憶領域をクライアントコンピュータに提供することができるシステムであって、単純な構成で、サーバ装置のOSやネットワーク共有プロトコルに依存せずに、なおかつ、クライアントコンピュータのOSのファイル管理処理の負荷を軽減することができる、仮想ストレージデバイス・システム、および、それに用いられる、クライアントコンピュータ、仮想ストレージデバイス・ドライバプログラム、サーバ装置、ならびにデータ管理プログラムを提供することにある。
【0015】
【課題を解決するための手段】
本発明に係る仮想ストレージデバイス・システムは、上記課題を解決するために、以下の構成を備える。すなわち、ネットワークに接続されたサーバ装置と、前記ネットワークを介して前記サーバ装置と通信可能に接続された、複数または単数のクライアントコンピュータとを具備し、該クライアントコンピュータは、ストレージデバイス・ドライバを介して、ストレージデバイスのセクタやクラスタ等の記憶ブロックに記録されたデータを読み出し可能に設けられ、ファイルと記憶ブロックとの対応付けを行うファイルシステムと、該ファイルシステムによって扱われるストレージデバイス・ドライバの一つとしてインストールされ、該ファイルシステムから、記憶ブロックのデータを読み出す要求を受けた際には、前記サーバ装置に、該記憶ブロックのデータに対応するデータを読み出すリード要求を送信し、該リード要求に対応して該サーバ装置から送信されてきたデータを、該記憶ブロックのデータとして該ファイルシステムに渡す仮想ストレージデバイス・ドライバとを備え、前記サーバ装置は、各前記記憶ブロックのデータに対応するデータを記憶する記憶手段と、前記クライアントコンピュータから、前記リード要求を受信した際には、前記記憶手段から該リード要求に対応するデータを読み出して該クライアントコンピュータに送信するデータ管理手段とを備えることを特徴とする。
これによれば、クライアントコンピュータとサーバ装置との間のデータのやり取りは、仮想ストレージドライバ・プログラムとデータ管理手段との間の、リード要求およびリード要求に対応するデータのみとなり、簡単な構成の仮想ストレージドライバ・プログラムおよびデータ管理手段によって、なおかつOSやネットワーク共有プロトコルに依存せずに、サーバ装置の記憶手段の記憶領域をクライアントコンピュータが利用できる。また、クライアントコンピュータのOSは、サーバ装置の記憶手段にアクセスするときに、ファイルシステムにアクセスすればよいので、サーバ装置の記憶手段にアクセスすることを意識する必要がない。
【0016】
さらに、前記ファイルシステムは、ストレージデバイス・ドライバを介してストレージデバイスの記憶ブロックにデータを書き込み可能に設けられ、前記仮想ストレージデバイス・ドライバは、前記ファイルシステムから、記憶ブロックにデータを書き込む要求を受けた際には、前記サーバ装置に、該記憶ブロックのデータを書き込むライト要求と該記憶ブロックのデータとを送信し、前記データ管理手段は、前記クライアントコンピュータから、前記ライト要求を受信した際には、該ライト要求と共に送信されてきたデータを前記記憶手段に書き込むことを特徴とする。
これによれば、クライアントコンピュータからサーバ装置の記憶手段への書き込みも可能となる。また、サーバ装置の記憶手段を、クライアントコンピュータのハードディスク等の読み書き可能なストレージデバイスとして使用することができるため、クライアントコンピュータは、ハードディスク等のストレージデバイスを備えていなくても動作することが可能となる。
【0017】
さらに、前記ファイルシステムは、ストレージデバイス・ドライバとしての磁気ディスク・ドライバを介して、ストレージデバイスとしての磁気ディスクドライブの記憶ブロックにデータを読み書き可能な磁気ディスク用ファイルシステムであることを特徴とする。
これによれば、クライアントコンピュータは、FAT等の磁気ディスク用ファイルシステムを介して、仮想ストレージデバイス・ドライバを扱うことができ、サーバ装置の記憶手段を、クライアントコンピュータの磁気ディスクドライブとして使用することができる。
【0018】
また、前記仮想ストレージデバイス・ドライバは、前記ライト要求と共に前記サーバ装置に送信すべき、記憶ブロックのデータを、暗号化して、前記サーバ装置に送信することを特徴とする。
また、前記データ管理手段は、前記リード要求に対応して前記クライアントコンピュータに送信すべきデータを、暗号化して、前記クライアントコンピュータに送信することを特徴とする。
これによれば、通信されるデータの内容を第三者に知られるのを防ぐことができる。
【0019】
また、前記サーバ装置は、汎用コンピュータであり、前記記憶手段は、ハードディスクであることを特徴とする。
これによれば、サーバ装置としてのサーバコンピュータのハードディスクを、クライアントコンピュータが使用することができる。
【0020】
また、前記サーバ装置は、ハードディスク装置であり、前記記憶手段は、ハードディスクであることを特徴とする。
これによれば、サーバ装置としてのハードディスク装置のハードディスクを、クライアントコンピュータが使用することができる。
【0021】
また、本発明に係るクライアントコンピュータは、上記課題を解決するために、以下の構成を備える。すなわち、ネットワークを介してサーバ装置と通信可能に接続され、ストレージデバイス・ドライバを介して、ストレージデバイスのセクタやクラスタ等の記憶ブロックに記録されたデータを読み出し可能に設けられ、ファイルと記憶ブロックとの対応付けを行うファイルシステムと、該ファイルシステムによって扱われるストレージデバイス・ドライバの一つとしてインストールされ、該ファイルシステムから、記憶ブロックのデータを読み出す要求を受けた際には、前記サーバ装置に、該記憶ブロックのデータに対応するデータを読み出すリード要求を送信し、該リード要求に対応して該サーバ装置から送信されてきたデータを、該記憶ブロックのデータとして該ファイルシステムに渡す仮想ストレージデバイス・ドライバとを備えることを特徴とする。
これによれば、簡単な構成の仮想ストレージドライバ・プログラムによって、なおかつOSやネットワーク共有プロトコルに依存せずに、サーバ装置からデータを読み出すことのできるクライアントコンピュータを構成できる。また、クライアントコンピュータのOSは、サーバ装置の記憶手段にアクセスするときに、ファイルシステムにアクセスすればよいので、サーバ装置の記憶手段にアクセスすることを意識する必要がない。
【0022】
また、前記ファイルシステムは、ストレージデバイス・ドライバを介してストレージデバイスの記憶ブロックにデータを書き込み可能に設けられ、前記仮想ストレージデバイス・ドライバは、前記ファイルシステムから、記憶ブロックにデータを書き込む要求を受けた際には、前記サーバ装置に、該記憶ブロックのデータを書き込むライト要求と該記憶ブロックのデータとを送信することを特徴とする。
これによれば、クライアントコンピュータからサーバ装置へのデータの書き込みも可能となる。また、サーバ装置の記憶手段を、クライアントコンピュータのハードディスク等の読み書き可能なストレージデバイスとして使用することができるため、クライアントコンピュータは、ハードディスク等のストレージデバイスを備えていなくても動作することが可能となる。
【0023】
また、前記ファイルシステムは、ストレージデバイス・ドライバとしての磁気ディスク・ドライバを介して、ストレージデバイスとしての磁気ディスクドライブの記憶ブロックにデータを読み書き可能な磁気ディスク用ファイルシステムであることを特徴とする。
これによれば、クライアントコンピュータは、FAT等の磁気ディスク用ファイルシステムを介して、仮想ストレージデバイス・ドライバを扱うことができ、サーバ装置の記憶手段を、クライアントコンピュータの磁気ディスクドライブとして使用することができる。
【0024】
また、前記仮想ストレージデバイス・ドライバは、前記ライト要求と共に前記サーバ装置に送信すべき、記憶ブロックのデータを、暗号化して、前記サーバ装置に送信することを特徴とする。
これによれば、通信されるデータの内容を第三者に知られるのを防ぐことができる。
【0025】
また、本発明に係る仮想ストレージデバイス・ドライバプログラムは、上記課題を解決するために、以下の構成を備える。すなわち、ネットワークを介してサーバ装置と通信可能に接続され、ストレージデバイス・ドライバを介して、ストレージデバイスのセクタやクラスタ等の記憶ブロックに記録されたデータを読み出し可能に設けられ、ファイルと記憶ブロックとの対応付けを行うファイルシステムを備えたクライアントコンピュータに、該ファイルシステムによって扱われるストレージデバイス・ドライバの一つとして読み取られる仮想ストレージデバイス・ドライバプログラムであって、前記ファイルシステムから、記憶ブロックのデータを読み出す要求を受けた際には、前記サーバ装置に、前記記憶ブロックのデータに対応するデータを読み出すリード要求を送信するステップと、前記リード要求に対応して前記サーバ装置から送信されてきたデータを、前記記憶ブロックのデータとして前記ファイルシステムに渡すステップとを、前記クライアントコンピュータに実行させることを特徴とする。
これによれば、簡単な構成の仮想ストレージドライバ・プログラムによって、なおかつOSやネットワーク共有プロトコルに依存せずに、サーバ装置からデータを読み出すことのできるクライアントコンピュータを構成できる。また、クライアントコンピュータのOSは、サーバ装置の記憶手段にアクセスするときに、ファイルシステムにアクセスすればよいので、サーバ装置の記憶手段にアクセスすることを意識する必要がない。
【0026】
また、前記ファイルシステムは、ストレージデバイス・ドライバを介してストレージデバイスの記憶ブロックにデータを書き込み可能に設けられ、前記ファイルシステムから、記憶ブロックにデータを書き込む要求を受けた際には、前記サーバ装置に、該記憶ブロックのデータを書き込むライト要求と該記憶ブロックのデータとを送信するステップを、前記クライアントコンピュータに実行させることを特徴とする。
これによれば、クライアントコンピュータからサーバ装置へのデータの書き込みも可能となる。また、サーバ装置の記憶手段を、クライアントコンピュータのハードディスク等の読み書き可能なストレージデバイスとして使用することができるため、クライアントコンピュータは、ハードディスク等のストレージデバイスを備えていなくても動作することが可能となる。
【0027】
また、前記ファイルシステムは、ストレージデバイス・ドライバとしての磁気ディスク・ドライバを介して、ストレージデバイスとしての磁気ディスクドライブの記憶ブロックにデータを読み書き可能な磁気ディスク用ファイルシステムであることを特徴とする。
これによれば、クライアントコンピュータは、FAT等の磁気ディスク用ファイルシステムを介して、仮想ストレージデバイス・ドライバを扱うことができ、サーバ装置の記憶手段を、クライアントコンピュータの磁気ディスクドライブとして使用することができる。
【0028】
また、前記ライト要求と共に前記サーバ装置に送信すべき、記憶ブロックのデータを、暗号化するステップを、前記クライアントコンピュータに実行させることを特徴とする。
これによれば、通信されるデータの内容を第三者に知られるのを防ぐことができる。
【0029】
また、本発明に係るサーバ装置は、上記課題を解決するために、以下の構成を備える。すなわち、ネットワークを介して、複数または単数のクライアントコンピュータと通信可能に接続され、ストレージデバイスのセクタやクラスタ等の記憶ブロックのデータに対応するデータを記憶する記憶手段と、前記クライアントコンピュータから、記憶ブロックのデータに対応するデータを読み出すリード要求を受信した際には、前記記憶手段から該リード要求に対応するデータを読み出して該クライアントコンピュータに送信するデータ管理手段とを備えることを特徴とする。
これによれば、クライアントコンピュータとサーバ装置との間のデータのやり取りは、仮想ストレージドライバ・プログラムとデータ管理手段との間の、リード要求およびリード要求に対応するデータのみとなり、簡単な構成のデータ管理手段によって、なおかつOSやネットワーク共有プロトコルに依存せずに、サーバ装置の記憶手段の記憶領域をクライアントコンピュータが利用できる。
【0030】
また、前記データ管理手段は、前記クライアントコンピュータから、記憶ブロックのデータを書き込むライト要求を受信した際には、該ライト要求と共に送信されてきたデータを前記記憶手段に書き込むことを特徴とする。
これによれば、クライアントコンピュータからサーバ装置の記憶手段への書き込みも可能となる。
【0031】
また、前記記憶ブロックは、磁気ディスクのセクタやクラスタ等の記憶ブロックであることを特徴とする。
これによれば、クライアントコンピュータは、FAT等の磁気ディスク用ファイルシステムを介して、仮想ストレージデバイス・ドライバを扱うことができ、サーバ装置の記憶手段を、クライアントコンピュータの磁気ディスクドライブとして使用することができる。
【0032】
また、前記データ管理手段は、前記リード要求に対応して前記クライアントコンピュータに送信すべきデータを、暗号化して、前記クライアントコンピュータに送信することを特徴とする。
これによれば、通信されるデータの内容を第三者に知られるのを防ぐことができる。
【0033】
また、汎用コンピュータであり、前記記憶手段は、ハードディスクであることを特徴とする。
これによれば、サーバ装置としてのサーバコンピュータのハードディスクを、クライアントコンピュータが使用することができる。
【0034】
また、ハードディスク装置であり、前記記憶手段は、ハードディスクであることを特徴とする。
これによれば、サーバ装置としてのハードディスク装置のハードディスクを、クライアントコンピュータが使用することができる。
【0035】
また、本発明に係るデータ管理プログラムは、上記課題を解決するために、以下の構成を備える。すなわち、ネットワークを介して、複数または単数のクライアントコンピュータと通信可能に接続され、ストレージデバイスのセクタやクラスタ等の記憶ブロックのデータに対応するデータを記憶する記憶手段を備えたサーバ装置に、読み取られるデータ管理プログラムであって、前記クライアントコンピュータから、記憶ブロックのデータに対応するデータを読み出すリード要求を受信した際には、前記記憶手段から該リード要求に対応するデータを読み出して該クライアントコンピュータに送信するステップを、前記サーバ装置に実行させることを特徴とする。
これによれば、クライアントコンピュータとサーバ装置との間のデータのやり取りは、仮想ストレージドライバ・プログラムとデータ管理手段との間の、リード要求およびリード要求に対応するデータのみとなり、簡単な構成のデータ管理手段によって、なおかつOSやネットワーク共有プロトコルに依存せずに、サーバ装置の記憶手段の記憶領域をクライアントコンピュータが利用できる。
【0036】
また、前記クライアントコンピュータから、記憶ブロックのデータを書き込むライト要求を受信した際には、該ライト要求と共に送信されてきたデータを前記記憶手段に書き込むステップを、前記サーバ装置に実行させることを特徴とする。
これによれば、クライアントコンピュータからサーバ装置の記憶手段への書き込みも可能となる。
【0037】
また、前記記憶ブロックは、磁気ディスクのセクタやクラスタ等の記憶ブロックであることを特徴とする。
これによれば、クライアントコンピュータは、FAT等の磁気ディスク用ファイルシステムを介して、仮想ストレージデバイス・ドライバを扱うことができ、サーバ装置の記憶手段を、クライアントコンピュータの磁気ディスクドライブとして使用することができる。
【0038】
また、前記リード要求に対応して前記クライアントコンピュータに送信すべきデータを、暗号化するステップを、前記サーバ装置に実行させることを特徴とする。
これによれば、通信されるデータの内容を第三者に知られるのを防ぐことができる。
【0039】
また、前記サーバ装置は、汎用コンピュータであり、前記記憶手段は、ハードディスクであることを特徴とする。
これによれば、サーバ装置としてのサーバコンピュータのハードディスクを、クライアントコンピュータが使用することができる。
【0040】
また、前記サーバ装置は、ハードディスク装置であり、前記記憶手段は、ハードディスクであることを特徴とする。
これによれば、サーバ装置としてのハードディスク装置のハードディスクを、クライアントコンピュータが使用することができる。
【0041】
【発明の実施の形態】
以下、本発明に係る仮想ストレージデバイス・システム、クライアントコンピュータ、仮想ストレージデバイス・ドライバプログラム、サーバ装置、およびデータ管理プログラムの好適な実施の形態を添付図面に基づいて詳細に説明する。
【0042】
図1に、本実施の形態に係る仮想ストレージデバイス・システムA1の説明図を示す。仮想ストレージデバイス・システムA1は、ネットワークNを介して互いに通信可能に接続されたサーバ装置としてのサーバコンピュータSと複数のクライアントコンピュータC,C・・とを具備する。
【0043】
(クライアントコンピュータC)
各クライアントコンピュータCは、パソコン等の汎用コンピュータで構成できる。各クライアントコンピュータCは、OS12と、ストレージデバイスとしての磁気ディスクドライブである、単数または複数のハードディスク18およびフロッピー(R)ディスクドライブ22と、ハードディスク18およびフロッピー(R)ディスクドライブ22の、ストレージデバイス・ドライバ(磁気ディスク・ドライバ)としてインストールされたハードディスク・ドライバ16およびフロッピー(R)ディスク・ドライバ20と、ハードディスク・ドライバ16およびフロッピー(R)ディスク・ドライバ20を介してハードディスク18、およびフロッピー(R)ディスクドライブ22内のフロッピー(R)ディスクのセクタやクラスタ等の記憶ブロックにデータを読み書き可能に設けられ、ファイルと記憶ブロックとの対応付けを行う磁気ディスク用ファイルシステム14と、ネットワークNを介してデータの送受信が可能な通信部24とを備える。
【0044】
クライアントコンピュータCのOS12上では、複数のアプリケーション26を実行することができる。
なお、OS12は、Windows(R)やUNIX(R)等の汎用OSに限らず、ファイルシステム14を操作可能なものであれば、どのようなOSであってもよく、例えばユーザーの自作OSであってもよい。
【0045】
通信部24は、TCP/IPプロトコルに準じて、インターネットやLAN等のネットワークNを介して、サーバコンピュータS等の他の機器とデータの送受を行うことができる、一般的なネットワークカード等によって実現することができる。
【0046】
磁気ディスク用ファイルシステム14は、アプリケーション26やOS12等が扱うファイルと、ハードディスク18およびフロッピー(R)ディスクドライブ22内のフロッピー(R)ディスクのセクタやクラスタ等の記憶ブロックとの対応付けを行うソフトウェアである。言い換えると、ファイルシステム14は、各ファイルが、ハードディスク18、およびフロッピー(R)ディスクの、どの記憶ブロックに記憶されているかを管理するソフトウェアである。なお、一つのファイルが、ストレージデバイスの連続するまたは連続しない複数の記憶ブロックにまたがって記憶されている場合が多いが、ファイルシステム14は、ファイルと、それら複数の記憶ブロックとを、対応付けして管理することができる。
ファイルシステム14により、アプリケーション26やOS12は、ファイルがストレージデバイスのどこの記憶ブロックに記憶されているかを意識することなく、ファイルを扱うことができる。
【0047】
ファイルシステム14は、OS12からファイルの読み出しの要求を受けると、ハードディスク18やフロッピー(R)ディスク上の、そのファイルに対応する複数または単数の記憶ブロックを特定して、その記憶ブロックのデータを読み出す要求(例えばリードセクタ命令)を、ハードディスク・ドライバ16やフロッピー(R)ディスク・ドライバ20に行うことで、その複数または単数の記憶ブロックのデータの読み出しを行い、その記憶ブロックのデータを、ファイルとして構成して、OS12に渡す。
また、ファイルシステム14は、OS12からファイルを書き込む要求を受けると、OS12から渡されたファイルのデータを、複数または単数の記憶ブロックに書き込まれる単位のデータに分割し、ハードディスク18やフロッピー(R)ディスクに書き込む。この書き込みは、ハードディスク・ドライバ16やフロッピー(R)ディスク・ドライバ20に対して、ハードディスク18やフロッピー(R)ディスク上の特定の記憶ブロックを指定して、その記憶ブロックにデータを書き込む要求(例えばライトセクタ命令)を行うと共に、分割した各前記データを渡すことで行われる。
【0048】
ファイルシステム14が、ストレージデバイス・ドライバに対して、読み書きを行うストレージデバイス上の特定の記憶ブロックを指定することは、各記憶ブロックに一意に割り振られた記憶ブロック番号(セクタ番号やクラスタ番号)を指定することによって行う。
【0049】
ハードディスク・ドライバ16やフロッピー(R)ディスク・ドライバ20は、ハードディスク18やフロッピー(R)ディスクドライブ22の読み書きの制御等を行うソフトウェアとしてインストールされる。ハードディスク・ドライバ16やフロッピー(R)ディスク・ドライバ20の例としては、IDEコントローラが挙げられる。
【0050】
ハードディスク・ドライバ16やフロッピー(R)ディスク・ドライバ20は、ファイルシステム14から、記憶ブロックのデータを読み出す前記要求を受けると、ハードディスク18や、フロッピー(R)ディスクドライブ22内のフロッピー(R)ディスク等から、該当する記憶ブロックのデータを読み出す制御を行い、読み出したデータを、ファイルシステム14に渡す。
また、ハードディスク・ドライバ16やフロッピー(R)ディスク・ドライバ20は、ファイルシステム14から、記憶ブロックにデータを書き込む前記要求を受けると、ハードディスク18や、フロッピー(R)ディスクドライブ22内のフロッピー(R)ディスクの指定された記憶ブロックに、指定されたデータを書き込む。
【0051】
さらに、各クライアントコンピュータCは、仮想ストレージデバイス・ドライバ(仮想ストレージデバイス・ドライバプログラム)としての仮想磁気ディスク・ドライバ28を備える。仮想磁気ディスク・ドライバ28は、ファイルシステム14によって扱われる磁気ディスク・ドライバの一つとして、クライアントコンピュータCに読み取り可能にインストールされる。
仮想磁気ディスク・ドライバ28は、ファイルシステム14に対して、ハードディスク・ドライバ16やフロッピー(R)ディスク・ドライバ20等の他の磁気ディスクドライバと同じインタフェースを持つ。これにより、仮想磁気ディスク・ドライバ28は、ファイルシステム14に、磁気ディスク・ドライバの一つとみなされる。
【0052】
仮想磁気ディスク・ドライバ28が、ハードディスク・ドライバ16やフロッピー(R)ディスク・ドライバ20等の他の磁気ディスク・ドライバと異なる点は、磁気ディスク等のストレージデバイスに対してデータの読み書きを行うのではなく、通信部24を介して、サーバコンピュータSに対してデータの読み書き、即ち受信・送信を行う点である。
【0053】
仮想磁気ディスク・ドライバ28は、ファイルシステム14から、記憶ブロックのデータを読み出す要求を受けた際には、通信部24を介して、サーバコンピュータSに、その記憶ブロックのデータに対応するデータを読み出すリード要求を送信し、そのリード要求に対応してサーバコンピュータSから送信されてきたデータを、その記憶ブロックのデータとしてファイルシステム14に渡す。
仮想磁気ディスク・ドライバ28が、サーバコンピュータSに、読み出すべき「特定の記憶ブロックのデータに対応するデータ」を指定する際には、前記記憶ブロック番号を用いる。即ち、仮想磁気ディスク・ドライバ28は、ファイルシステム14に指定された記憶ブロック番号を付加させて、前記リード要求をサーバコンピュータSに送信する。
【0054】
また、仮想磁気ディスク・ドライバ28は、ファイルシステム14から、記憶ブロックにデータを書き込む要求を受けた際には、サーバコンピュータSに、その記憶ブロックのデータを書き込むライト要求とその記憶ブロックのデータとを送信する。
仮想磁気ディスク・ドライバ28が、サーバコンピュータSに、前記ライト要求を行う際には、前記リード要求時と同様、ファイルシステム14に指定された記憶ブロック番号を付加させて、前記ライト要求をサーバコンピュータSに送信する。
【0055】
つまり、仮想磁気ディスク・ドライバ28は、記憶ブロックのデータを磁気ディスクから読み出す代わりに、サーバコンピュータSからデータを読み出し、また、データを磁気ディスクの記憶ブロックに書き込む代わりに、サーバコンピュータSにそのデータを送信するのである。
【0056】
なお、各クライアントコンピュータCが備える仮想ストレージデバイス・ドライバは、サーバコンピュータSに前記リード要求やライト要求やデータを送信する際、サーバコンピュータSが、送信元の仮想ストレージデバイス・ドライバを特定できるように、各仮想ストレージデバイス・ドライバ毎に一意に割り振られた所定の番号(IDナンバー)を付加させてデータ等を送信する。この所定の番号は、サーバコンピュータSのデータ管理手段10によって割り振られる。この割り振りについては後述する。
【0057】
本実施の形態では、ファイルシステム14としては、磁気ディスク(ハードディスク18およびフロッピー(R)ディスク22)へのデータの書き込みを行う、磁気ディスク用ファイルシステムを採用している。磁気ディスク用ファイルシステムとして広く知られたものとしては、Windows(R)に装備されるFAT等が挙げられる。なお、ファイルシステム14は、FAT等に限らず、例えばユーザーの自作ファイルシステム等であってもよい。
【0058】
なお、本実施の形態では、ストレージデバイスは、ハードディスク18やフロッピー(R)ディスクといった磁気ディスク装置としているが、これに限定されず、例えば光ディスク装置等であってもよい。その場合には、ファイルシステムとしては、光ディスクの記憶ブロックのデータの読み書きに適した、光ディスク用のファイルシステムを採用すればよい。
【0059】
なお、仮想ストレージデバイス・ドライバとしての仮想磁気ディスク・ドライバ28は、一つのファイルシステム14下に、複数設けてもよい。また、クライアントコンピュータCが、複数のファイルシステム(例えば、磁気ディスク用ファイルシステムと光ディスク用ファイルシステム)を持つ場合には、それぞれのファイルシステムに対応する仮想ストレージデバイス・ドライバを、それぞれ設けてもよい。
また、各クライアントコンピュータCの備える仮想ストレージデバイス・ドライバは、各クライアントコンピュータC毎に異なるファイルシステム(例えば磁気ディスク用ファイルシステムと光ディスク用ファイルシステム)に対応するものであってもよい。
【0060】
(サーバコンピュータS)
サーバコンピュータSは、パソコン等の汎用コンピュータで構成できる。サーバコンピュータSは、例えばWindows(R)やUNIX(R)等のOS1と、記憶手段としての、単数または複数のハードディスク4,4およびフロッピー(R)ディスクドライブ6と、ネットワークNを介してデータの送受信が可能な通信部8とを備える。
なお、サーバコンピュータSも、クライアントコンピュータCと同様、ハードディスク4,4およびフロッピー(R)ディスクドライブ6のドライバや、ファイルシステムを備えるが、図1上では省略している。
【0061】
OS1上では、複数のアプリケーションを実行することができる。
なお、サーバコンピュータSのOS1は、Windows(R)やUNIX(R)等の汎用OSに限らず、どのようなOSであってもよく、例えばユーザーの自作OSであってもよい。
【0062】
通信部24は、例えば、TCP/IPプロトコルに準じて、インターネットやLAN等のネットワークNを介して、クライアントコンピュータC,C・・等の他の機器とデータの送受を行うことができる、一般的なネットワークカード等によって実現することができる。
【0063】
また、サーバコンピュータSは、記憶手段として単数または複数のハードディスク4,4およびフロッピー(R)ディスクドライブ6を備えるが、これらは、サーバコンピュータSに内蔵のものでも、外付けのものでもよい。
【0064】
また、さらに、サーバコンピュータSは、クライアントコンピュータCから、前記リード要求を受信した際には、ハードディスク4,4またはフロッピー(R)ディスクドライブ6からそのリード要求に対応するデータを読み出してクライアントコンピュータCに送信し、また、クライアントコンピュータCから、前記ライト要求を受信した際には、そのライト要求と共に送信されてきたデータをハードディスク4,4またはフロッピー(R)ディスクドライブ6に書き込むデータ管理手段(データ管理プログラム)10を備える。
データ管理手段10は、OS1上で実行されるアプリケーションとして、サーバコンピュータSに読み取り可能にインストールされる。
【0065】
データ管理手段10は、図示しない設定手段を有し、所定の入力画面を、サーバコンピュータSの図示しないモニタ装置に表示させて、ユーザーに、各クライアントコンピュータCにインストールされた個々の仮想ストレージデバイス・ドライバを登録させる。また、設定手段は、所定の入力画面によって、登録された各仮想ストレージデバイス・ドライバの記憶ブロック構造(例えば、セクタ数や、各セクタのサイズ等)を、ユーザーに登録させる。
【0066】
ユーザーが、前記設定手段による、各クライアントコンピュータC、および各クライアントコンピュータCの仮想ストレージデバイス・ドライバの登録を完了すると、データ管理手段10は、それぞれの仮想ストレージデバイス・ドライバに、一意に割り振られた番号(IDナンバー)を振り、各仮想ストレージデバイス・ドライバが搭載されたクライアントコンピュータCに対して、その仮想ストレージデバイス・ドライバに対応する前記番号を送信する。各クライアントコンピュータCの仮想ストレージデバイス・ドライバは、この番号を記憶手段に保存しておき、サーバコンピュータSへ送信する要求およびデータにこの番号を付加させる。これにより、サーバコンピュータSは、各要求やデータが、どの仮想ストレージデバイス・ドライバから送信されてきたかを判別することが可能となる。
【0067】
なお、各クライアントコンピュータCが、それぞれ一つずつの仮想ストレージデバイス・ドライバのみを備えている場合には、この一意の番号として、IPアドレス等の、ネットワークN上で各クライアントコンピュータCを識別する既存の情報を使用することもできる。この場合には、データ管理手段10による前記番号の割り振りおよびクライアントコンピュータCへの送信は行わなくてもよい。
【0068】
続いて、前記設定手段は、登録された各仮想ストレージデバイス・ドライバ(の番号)に一対一に対応する、仮想ストレージデバイス・ファイルを、サーバコンピュータSのハードディスク4上に作成する。
図2の説明図に示すように、仮想ストレージデバイス・ファイルは、各仮想ストレージデバイス・ドライバに対応して、一つずつ作成される。図2に示すように、同一のクライアントコンピュータC上に複数の磁気ディスク・ドライバ28,28・・が存在する場合や、同一のクライアントコンピュータC上に複数種類の仮想ストレージデバイス・ドライバとしての、仮想磁気ディスク・ドライバ28および仮想光ディスク・ドライバ29が存在する場合でも、それらの一つ一つに対応して、仮想ストレージデバイス・ファイルは作成される。
なお、各仮想ストレージデバイス・ファイルは、サーバコンピュータSの同一のハードディスク4上に作成する必要はなく、それぞれ別のハードディスク4や、フロッピー(R)ディスクドライブ6のフロッピー(R)ディスク上に作成しても良い。
【0069】
各仮想ストレージデバイス・ファイルは、それに対応する仮想ストレージデバイス・ドライバの記憶ブロック構造(セクタ構造またはクラスタ構造等)に合わせて、その記憶ブロック単位で、データを読み書き可能なデータ構造に構成される。
例えば、図3に示すように、仮想ストレージデバイス・ファイルの内部構造は、対応する仮想ストレージデバイス・ドライバで扱われるセクタデータ単位(記憶ブロックのデータ単位)のセクタデータエリア(記憶ブロックデータエリア)に区切られて構成され、データ管理手段10は、セクタ番号(記憶ブロック番号)を指定することで、仮想ストレージデバイス・ファイル内の任意のセクタデータエリア(記憶ブロックデータエリア)にデータの読み書きをすることができる。
【0070】
なお、仮想ストレージデバイス・ファイルは、必ずしも一つの仮想ストレージデバイス・ドライバに対して一ファイルを対応させる必要はなく、例えば、扱う記憶ブロック数やサイズが大きく、仮想ストレージデバイス・ファイルのサイズが大きくなりすぎてしまうような場合は、複数のファイルに分割して保存するように構成してもよいし、あるいは、一記憶ブロックが一ファイルに対応するように構成してもよい。
【0071】
データ管理手段10は、仮想磁気ディスク・ドライバ28によってクライアントコンピュータCから送信されてきた前記リード要求や、前記ライト要求や、前記ライト要求と共に送信されてくる、記憶ブロックのデータを受信することができる。
【0072】
データ管理手段10は、クライアントコンピュータCから前記ライト要求を受信すると、それに付加された前記番号(IDナンバー)から、その要求が、どのクライアントコンピュータCのどの仮想ストレージデバイス・ドライバから送信されてきたものかを特定し、その仮想ストレージデバイス・ドライバに対応する仮想ストレージデバイス・ファイルに、ライト要求と共に送信されてきたデータを保存する。この際、そのデータの、仮想ストレージデバイス・ファイル上の保存個所は、ライト要求に付加された前記記憶ブロック番号(セクタ番号)によって特定される。つまり、データ管理手段10は、前記記憶ブロック番号(セクタ番号)に対応する、仮想ストレージデバイス・ファイル上のセクタデータエリア(記憶ブロックデータエリア)(図3)に、そのデータを保存する。
【0073】
また、データ管理手段10は、クライアントコンピュータCから前記リード要求を受信すると、それに付加された前記番号(IDナンバー)から、その要求が、どのクライアントコンピュータCのどの仮想ストレージデバイス・ドライバから送信されてきたものかを特定し、その仮想ストレージデバイス・ドライバに対応する仮想ストレージデバイス・ファイルの、そのリード要求に対応する個所からデータを読み出し、読み出したデータを、そのクライアントコンピュータCに送信する。この際、仮想ストレージデバイス・ファイル上の読み出し個所は、リード要求に付加された前記記憶ブロック番号(セクタ番号)によって特定される。つまり、データ管理手段10は、前記記憶ブロック番号(セクタ番号)に対応する、仮想ストレージデバイス・ファイル上のセクタデータエリア(記憶ブロックデータエリア)(図3)から、データを読み出してクライアントコンピュータCに送信する。
【0074】
(仮想ストレージデバイス・システムA1の動作)
次に、仮想ストレージデバイス・システムA1の動作について、図4および図5に基づいて説明する。
図4は、クライアントコンピュータCのOS12またはアプリケーション26が、ファイルを読み出す際の、仮想ストレージデバイス・システムA1の動作を示した、シーケンスチャートである。
図4に示すように、OS12またはアプリケーション26が、ファイルシステム14に対してファイルを読み出す要求を行う(S1)と、ファイルシステム14は、そのファイルに対応する、セクタやクラスタ等の記憶ブロックを特定し、それらの記憶ブロックのデータを読み出す要求を、仮想磁気ディスク・ドライバ28に対して行う(S2)。なお、ここまでのOS12、アプリケーション26およびファイルシステム14の動作は、OS12またはアプリケーション26が通常の磁気ディスク・ドライバにアクセスする際の動作となんら変わることがない。
【0075】
前記要求を受けた仮想磁気ディスク・ドライバ28は、通信部24およびネットワークNを介して、ファイルシステム14に指定された記憶ブロックのデータに対応するデータを読み出す前記リード要求を、サーバコンピュータSのデータ管理手段10に送信する(S3)。この際、送信データには、送信元の仮想磁気ディスク・ドライバ28に振られた前記番号(IDナンバー)と、指定された記憶ブロックの記憶ブロック番号(セクタ番号)とを付加させる。
なお、ネットワークNに接続された特定のサーバコンピュータSの特定のアプリケーション(データ管理手段10)に対するデータ等の送信は、サーバコンピュータSのIPアドレスを指定すると共に、サーバコンピュータSのOS1上の各アプリケーションに割り振り可能なポート番号を指定するといった、既存の技術によって行うことができる。
【0076】
データ管理手段10は、付加された送信元の仮想ストレージデバイス・ドライバ(仮想磁気ディスク・ドライバ28)の番号(IDナンバー)から、その仮想ストレージデバイス・ドライバに対応する仮想ストレージデバイス・ファイルを特定し、その仮想ストレージデバイス・ファイルの、指定された記憶ブロック番号に対応する記憶ブロックデータエリア(セクタデータエリア)から、データを読み出す(S4)。
データ管理手段10は、続いて、通信部8およびネットワークNを介して、読み出したデータを、前記番号(IDナンバー)に対応する仮想ストレージデバイス・ドライバ(仮想磁気ディスク・ドライバ28)に対して送信する(S5)。
【0077】
なお、仮想ストレージデバイス・ファイルは、前述の通り、対応する仮想ストレージデバイス・ドライバの記憶ブロック構造(セクタ構造またはクラスタ構造)に合わせて構成されている。従って、ファイルシステム14が指定する「特定の記憶ブロック」の記憶ブロック番号(セクタ番号)は、仮想磁気ディスク・ドライバ28やデータ管理手段10に引き継がれた際にも共通に用いることができ、処理を簡便に構成できる。
【0078】
データを受信した仮想磁気ディスク・ドライバ28は、受信したデータを、ファイルシステム14に読み出すことを要求された記憶ブロックのデータとして、ファイルシステム14に渡す(S6)。
ファイルシステム14は、渡された記憶ブロックのデータを、ファイルとして、OS12またはアプリケーション26に渡す(S7)。
【0079】
図5は、クライアントコンピュータCのOS12またはアプリケーション26が、ファイルを書き込む際の動作を示した、シーケンスチャートである。
図5に示すように、OS12またはアプリケーション26が、ファイルシステム14に対してファイルを書き込む要求を行う(S11)と、ファイルシステム14は、そのファイルに対応する、セクタやクラスタ等の記憶ブロックを特定し、そのファイルをそれらの記憶ブロック単位のデータに分割して、その各データを書き込む要求を、仮想磁気ディスク・ドライバ28に対して行う(S12)。なお、ここまでのOS12、アプリケーション26およびファイルシステム14の動作は、OS12またはアプリケーション26が通常の磁気ディスク・ドライバにアクセスする際の動作となんら変わることがない。
【0080】
前記要求を受けた仮想磁気ディスク・ドライバ28は、通信部24およびネットワークNを介して、それらの記憶ブロックのデータを書き込むライト要求と、各記憶ブロックのデータとを、サーバコンピュータSのデータ管理手段10に送信する(S13)。この際、送信データには、送信元の仮想磁気ディスク・ドライバ28に振られた前記番号(IDナンバー)と、指定された記憶ブロックの記憶ブロック番号(セクタ番号)とを付加させる。
【0081】
データ管理手段10は、付加された送信元の仮想ストレージデバイス・ドライバ(仮想磁気ディスク・ドライバ28)の番号(IDナンバー)から、その仮想ストレージデバイス・ドライバに対応する仮想ストレージデバイス・ファイルを特定し、その仮想ストレージデバイス・ファイルの、指定された記憶ブロック番号に対応する記憶ブロックデータエリア(セクタデータエリア)に、受信した、記憶ブロックのデータを書き込む(S14)。
【0082】
本実施の形態に係る仮想ストレージデバイス・システムA1によれば、サーバコンピュータSのハードディスク4の記憶領域を、クライアントコンピュータCに提供することができる。
また、仮想磁気ディスク・ドライバ28は、ファイルシステム14からの記憶ブロックのデータの読み書きの要求に対して、サーバコンピュータSに、その記憶ブロックに対応するデータの読み書きの要求(リード要求、ライト要求)を行うといった、簡単なプログラムで構成できる。また、データ管理手段10は、クライアントコンピュータCからの、リード要求およびライト要求に対して、仮想ストレージデバイス・ファイルから、対応するデータの読み書きを行うといった、簡単なプログラムで構成できる。
従って、例えばクライアントコンピュータCのOS12としてユーザーの自作OSを採用するような場合でも、従来のように複雑なネットワーク共有プロトコルを実現するプログラムを開発する必要がなく、サーバコンピュータSのハードディスク4の記憶領域をクライアントコンピュータCに提供するシステムを、より簡単に構築することができる。
【0083】
また、仮想ストレージデバイス・システムA1によれば、サーバコンピュータSのOS1に備えられたネットワーク共有プロトコルを使用しないため、クライアントコンピュータCのOS12は、サーバコンピュータSのOS1や、ネットワーク共有プロトコルに依存せず、自由に選択することができる。
【0084】
さらに、クライアントコンピュータCのOS12は、ファイルシステム14を介して、通常の磁気ディスク・ドライバを扱うのと全く同じインタフェースで、仮想磁気ディスク・ドライバ28を扱うことができるため、実際のデータの保存先が、クライアントコンピュータC自身のハードディスク18やフロッピー(R)ディスクであるか、サーバコンピュータSのハードディスク4であるかを区別して処理する必要がなく、従来のように、ネットワーク共有プロトコルとファイルシステムの両者を意識して使い分ける場合に比較して、ファイル管理処理が軽減される。特に、クライアントコンピュータCのOS12として自作OSを採用する場合には、OS12のファイル管理機能としては、ファイルシステム14に対するインタフェースのみを考慮すればよいため、OS12をより簡単に開発することが可能となる。
【0085】
また、仮想磁気ディスク・ドライバ28およびデータ管理手段10が、ネットワークNを介して記憶ブロックに対応するデータを送信する際には、図示しない暗号化手段によって、そのデータを暗号化して送信するよう構成すれば、通信されるデータを第三者に傍受されたとしても、データの内容を知られないようにすることができる。
これには、例えば、既存の公開鍵方式を用いることができる。つまり、それぞれのクライアントコンピュータCとサーバコンピュータSとが、公開鍵方式の秘密鍵を一つずつ保管し、データ送信する際には、送信先のクライアントコンピュータCまたはサーバコンピュータSに対応する公開鍵によって、そのデータを暗号化すれば、特定のクライアントコンピュータCまたはサーバコンピュータSにのみ解読可能な暗号文を作成することができる。
【0086】
なお、本発明に係る仮想ストレージデバイス・システムは、図1に示した仮想ストレージデバイス・システムA1に限定されない。
例えば、図1の仮想ストレージデバイス・システムA1においては、クライアントコンピュータCおよびサーバコンピュータSのOS12,1は、ネットワーク共有プロトコルを有していないが、図6の仮想ストレージデバイス・システムA2に示すように、従来のネットワーク共有プロトコルを有するOSに対しても、本発明に係る仮想ストレージデバイス・ドライバやデータ管理手段を採用することで、クライアントコンピュータCは、サーバコンピュータSのハードディスク4を、クライアントコンピュータC自身の磁気ディスク(ストレージデバイス)とみなして読み書き可能とすることができる。
【0087】
また、仮想ストレージデバイス・システムA1,A2においては、サーバコンピュータSの記憶手段は、ハードディスク4やフロッピー(R)ディスクドライブのフロッピー(R)ディスクであるが、データを記憶できるものであれば、これらに限らず、例えばCD−RWドライブや、MOドライブ等であってもよい。また、サーバコンピュータSの記憶手段として、CDの読み取り専用の光ディスクドライブを採用して、仮想磁気ディスク・ドライバ28は、データの読み取りのみが可能なように構成してもよい。
【0088】
また、仮想ストレージデバイス・システムA1,A2においては、サーバコンピュータSとして、パソコン等の汎用コンピュータを使用しているが、図7に示す仮想ストレージデバイス・システムA3のように、サーバ装置に、ストレージデバイス、例えばハードディスク装置Hを採用しても良い。
この場合、ハードディスク装置Hは、ハードディスク36と、ネットワークNを介してデータの送受信が可能な通信部30と、CPUやメモリを備える論理回路によって構成される制御部32と、制御部32によって実行されるファームウェアとして実装されたデータ管理手段(データ管理プログラム)34とを備える。
【0089】
データ管理手段34は、仮想ストレージデバイス・システムA1のデータ管理手段10と同様の動作を行うプログラムである。即ち、データ管理手段34は、クライアントコンピュータCから、記憶ブロックのデータに対応するデータを読み出す前記リード要求を受信した際には、ハードディスク36(の仮想ストレージデバイス・ファイル)からそのリード要求に対応するデータを読み出してクライアントコンピュータCに送信し、また、クライアントコンピュータCから、記憶ブロックのデータを書き込むライト要求を受信した際には、そのライト要求と共に送信されてきたデータをハードディスク36に書き込むものである。
【0090】
また、データ管理手段34の前記設定手段は、例えば特定のクライアントコンピュータCと通信して、クライアントコンピュータCのモニタ装置等に設定画面を表示させて、ユーザーによって各クライアントコンピュータC,C・・の各仮想ストレージデバイス・ドライバの登録を行わせることができるように構成する。登録結果は、前記特定のクライアントコンピュータCからハードディスク装置Hに送信され、データ管理手段34が、登録された番号等を記憶するよう構成すればよい。
また、データ管理手段34は、データ管理手段10と同様、ハードディスク36上に、各クライアントコンピュータCの各仮想ストレージデバイス・ドライバに対応した仮想ストレージデバイス・ファイルを作成し、各仮想ストレージデバイス・ドライバとの間で送受した、各記憶ブロックのデータに対応するデータを、読み書きするよう構成する。
【0091】
仮想ストレージデバイス・システムA3によれば、一台のハードディスク装置Hの記憶領域を複数のクライアントコンピュータC,Cが使用可能となる。また、各クライアントコンピュータC,C・・自身は、ハードディスクを備えないように構成し、一台のハードディスク装置Hに、複数のクライアントコンピュータCのハードディスクの役割を負わせることなどができる。
【0092】
また、仮想ストレージデバイス・システムA1,A2,A3においては、クライアントコンピュータCとして、パソコン等の汎用コンピュータを使用しているが、クライアントコンピュータCは、必ずしも汎用コンピュータである必要はなく、ファイルシステムや仮想ストレージデバイス・ドライバを実行可能な、CPU等を備えた制御部や、ネットワークを介してデータの送受が可能な通信部を備えた装置(コンピュータ)であれば、あらゆる装置を採用できる。
【0093】
【発明の効果】
本発明に係る仮想ストレージデバイス・システム、クライアントコンピュータ、仮想ストレージデバイス・ドライバプログラム、サーバ装置、およびデータ管理手段によれば、サーバ装置の記憶手段の記憶領域をクライアントコンピュータに提供することができるシステムとして、単純な構成で、サーバ装置のOSやネットワーク共有プロトコルに依存せずに、なおかつ、クライアントコンピュータのOSのファイル管理処理の負荷を軽減することができるという効果を奏する。
【図面の簡単な説明】
【図1】本発明に係る仮想ストレージデバイス・システムの構成を示す説明図である。
【図2】データ管理手段(本発明に係るデータ管理プログラム)が仮想ストレージデバイス・ファイルを作成する様子を示した説明図である。
【図3】仮想ストレージデバイス・ファイルの内部構成を示す説明図である。
【図4】データ管理手段(本発明に係るデータ管理プログラム)のファイル読み出し時の動作を示すシーケンスチャートである。
【図5】データ管理手段(本発明に係るデータ管理プログラム)のファイル書き込み時の動作を示すシーケンスチャートである。
【図6】本発明に係る仮想ストレージデバイス・システムの別例の構成を示す説明図である。
【図7】本発明に係る仮想ストレージデバイス・システムの別例の構成を示す説明図である。
【図8】従来のクライアントサーバシステムの構成を示す説明図である。
【符号の説明】
A1,A2,A3 仮想ストレージデバイス・システム
N ネットワーク
S サーバコンピュータ(サーバ装置)
1 OS
4 ハードディスク(記憶手段)
6 フロッピー(R)ディスクドライブ(記憶手段)
8 通信部
10 データ管理手段(データ管理プログラム)
C クライアントコンピュータ
12 OS
14 磁気ディスク用ファイルシステム(ファイルシステム)
16 ハードディスク・ドライバ(ストレージデバイス・ドライバ)
18 ハードディスク(ストレージデバイス)
20 フロッピー(R)ディスク・ドライバ(ストレージデバイス・ドライバ)
22 フロッピー(R)ディスクドライブ(ストレージデバイス)
24 通信部
26 アプリケーション
28 仮想磁気ディスク・ドライバ(仮想ストレージデバイス・ドライバ、仮想ストレージデバイス・ドライバプログラム)
H ハードディスク装置(サーバ装置)
30 通信部
32 制御部
34 データ管理手段(データ管理プログラム)
36 ハードディスク(ストレージデバイス)
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention provides a virtual storage device system for providing a storage area of storage means of a server device to a client computer via a network, and a client computer, a virtual storage device driver program, a server device, And data management programs.
[0002]
[Prior art]
Conventionally, as a client server system that provides a storage area of a storage unit connected to a server computer connected to a network to a plurality or a single client computer via the network, a network system disclosed in Patent Document 1 is known. is there.
[0003]
As in the network system disclosed in Patent Literature 1, the storage area of the storage means of the server computer (including the storage means built in the server computer and the storage means connected to the server computer; the same applies hereinafter) is changed to the client computer. In general, a method using a network sharing function provided in each OS of a server computer and a client computer is widely used.
[0004]
FIG. 8 is an explanatory diagram of a client server system B that provides the storage area of the hard disk 74 of the server computer SB to the client computers CB, CB,... Using the network sharing function of the OSs 71, 82 of the respective computers. The system B shown in FIG. 8 includes a server computer SB and a plurality of client computers CB, CB,... Which are communicably connected to each other via a network N. In FIG. 8, only one internal configuration of the client computer CB is shown, but the other client computers CB, CB,... Have the same internal configuration.
[0005]
Each client computer CB includes a general-purpose OS 82 such as Windows (R) or UNIX (R), one or more hard disks 88 and a floppy (R) disk drive 92 as magnetic disk drives as storage devices, and a hard disk. A hard disk driver 86 and a floppy (R) disk driver 90 installed as storage device drivers (magnetic disk drivers) of the 88 and a floppy (R) disk drive 92; a hard disk driver 86 and a floppy (R) disk Reading data into a hard disk 88 and a storage block such as a sector or a cluster of a floppy disk of a floppy disk drive 92 via a driver 90; It provided so as to be come provided with a file system 84 for the association between the file and the storage block (eg FAT, etc.), and a communication unit 94 capable of transmitting and receiving data via the network N.
[0006]
The server computer SB is, for example, a general-purpose OS 71 such as Windows (R) or UNIX (R), one or more hard disks 74 and 74 and a floppy (R) disk drive 76 as storage means, and a network N. A communication unit 78 capable of transmitting and receiving data.
The server computer SB, like the client computer CB, includes drivers for the hard disks 74, 74 and the floppy (R) disk drive 76, and a file system, but these are omitted in FIG.
[0007]
In the conventional system B shown in FIG. 8, when the storage area of the hard disks 74, 74 of the server computer SB is used by the client computer CB, the storage area of the hard disk 74 is used by using the network sharing function of the OS 71 of the server computer SB. Is set as a shared area (for example, a shared folder). Then, the applications 96, 96,... Executed on the OS 82 of the client computer CB and the OS 82 via the network sharing protocol 71a of the OS 71 of the server computer SB and the network sharing protocol 82a of the OS 82 of the client computer CB are: The storage area of the hard disk 74 of the server computer SB can be used.
[0008]
[Patent Document 1]
JP 2000-148571 A (FIG. 1-3)
[0009]
[Problems to be solved by the invention]
In the conventional client-server system B shown in FIG. 8, the client computers CB, CB,... Must have a network sharing protocol 82a corresponding to the network sharing protocol 71a of the server computer SB.
For example, when Windows (R) is adopted as the OS 71 of the server computer SB, SMB (Server Message Block) is used as a network sharing protocol. In this case, in order to perform network sharing with the server computer SB, the client computer CB needs to be equipped with a network sharing protocol 82a compatible with SMB. In order to mount the network sharing protocol 82a corresponding to the SMB, Windows (R) on which the SMB is installed and UNIX (R) on which the Samba which is software for providing the SMB can be installed as the OS 82 of the client computer CB. Adopt it.
[0010]
However, in the client-server system, various types of OSs 82, which are different for each client computer CB, are often adopted, and the OSs 82 of all the client computers CB are not necessarily server computers such as Windows (R) and UNIX (R). An OS in which the network sharing protocol 82a corresponding to the SB network sharing protocol 71a is installed (or can be installed) is not always adopted.
[0011]
When the OS on which the network sharing protocol 82a corresponding to the network sharing protocol 71a of the server computer SB is installed (or can be installed) is not adopted as the OS 82 of the client computer CB, the OS 82 corresponding to the network sharing protocol 71a of the server computer SB is used. It is necessary to newly develop a program for realizing the network sharing protocol 82a for the OS 82 of the client computer CB.
[0012]
However, the network sharing protocol of a general-purpose OS, such as Windows (R), is very complicated and its contents may not be disclosed. However, there is a problem that it is very time-consuming and difficult to develop the software.
[0013]
Further, the conventional OS 82 equipped with the network sharing protocol 82a handles files recorded on a storage device such as a hard disk 88 via a file system 84, while recording files on another computer connected to the network N. The file is handled via the network sharing protocol 82a. Therefore, the OS 82 needs to manage, for each file, whether it is a file on the storage device or a file on the network, and the file management process of the OS 82 is complicated. Particularly in recent years, there has been an increasing demand for the application 96 to handle both files in the same manner so that the application 96 does not need to be aware of whether each file is a file on a storage device or a file on a network. Therefore, it is necessary for the OS 82 to provide the file to the application 96 so that files stored in completely different storage targets can be handled equally, and there is a problem that the processing load of the OS 82 is heavy.
[0014]
The present invention has been made in order to solve the above-mentioned problem, and an object of the present invention is to provide a system which can provide a storage area of a storage unit of a server device to a client computer. A virtual storage device system that does not depend on a network sharing protocol and can reduce the load of the file management processing of the OS of the client computer, and a client computer, a virtual storage device driver program used therein, It is to provide a server device and a data management program.
[0015]
[Means for Solving the Problems]
A virtual storage device system according to the present invention has the following configuration to solve the above problems. That is, a server device connected to a network, and a plurality of or a single client computer communicably connected to the server device via the network, the client computer is provided via a storage device driver A file system for reading data recorded in a storage block such as a sector or a cluster of a storage device and for associating a file with a storage block, and one of storage device drivers handled by the file system When a request to read data of a storage block is received from the file system, a read request to read data corresponding to the data of the storage block is transmitted to the server device, and the server device responds to the read request. And the sir A virtual storage device driver for passing data transmitted from the device to the file system as data of the storage block, wherein the server device stores data corresponding to data of each of the storage blocks; and A data management unit that reads data corresponding to the read request from the storage unit and transmits the data to the client computer when the read request is received from the client computer.
According to this, the exchange of data between the client computer and the server device involves only a read request and data corresponding to the read request between the virtual storage driver program and the data management means. With the storage driver program and the data management means, the client computer can use the storage area of the storage means of the server device without depending on the OS or the network sharing protocol. In addition, the OS of the client computer only needs to access the file system when accessing the storage unit of the server device, and therefore does not need to be aware of accessing the storage unit of the server device.
[0016]
Further, the file system is provided so as to be able to write data to a storage block of a storage device via a storage device driver, and the virtual storage device driver receives a request to write data to the storage block from the file system. In this case, a write request for writing the data of the storage block and the data of the storage block are transmitted to the server device, and when the data management unit receives the write request from the client computer, Writing the data transmitted together with the write request into the storage means.
According to this, it is also possible to write from the client computer to the storage means of the server device. Further, since the storage unit of the server device can be used as a readable / writable storage device such as a hard disk of a client computer, the client computer can operate without having a storage device such as a hard disk. .
[0017]
Further, the file system is a magnetic disk file system capable of reading and writing data in a storage block of a magnetic disk drive as a storage device via a magnetic disk driver as a storage device driver.
According to this, the client computer can handle the virtual storage device driver via the magnetic disk file system such as FAT, and can use the storage unit of the server device as the magnetic disk drive of the client computer. it can.
[0018]
Further, the virtual storage device driver encrypts data of a storage block to be transmitted to the server together with the write request, and transmits the encrypted data to the server.
Further, the data management means encrypts data to be transmitted to the client computer in response to the read request, and transmits the data to the client computer.
According to this, it is possible to prevent the contents of the data to be communicated from being known to a third party.
[0019]
Further, the server device is a general-purpose computer, and the storage means is a hard disk.
According to this, the hard disk of the server computer as the server device can be used by the client computer.
[0020]
Further, the server device is a hard disk device, and the storage means is a hard disk.
According to this, the hard disk of the hard disk device as the server device can be used by the client computer.
[0021]
Further, a client computer according to the present invention has the following configuration in order to solve the above problems. That is, the storage device is communicably connected to a server device via a network, and is provided so as to be able to read data recorded in a storage block such as a sector or a cluster of the storage device via a storage device driver. When a request to read data of a storage block is received from the file system and is installed as one of storage device drivers handled by the file system, A virtual storage device which transmits a read request for reading data corresponding to the data of the storage block and transfers data transmitted from the server device in response to the read request to the file system as data of the storage block. With a driver The features.
According to this, it is possible to configure a client computer that can read data from the server device by using a virtual storage driver program with a simple configuration and without depending on the OS or the network sharing protocol. In addition, the OS of the client computer only needs to access the file system when accessing the storage unit of the server device, and therefore does not need to be aware of accessing the storage unit of the server device.
[0022]
Further, the file system is provided so as to be able to write data to a storage block of a storage device via a storage device driver, and the virtual storage device driver receives a request to write data to the storage block from the file system. In this case, a write request for writing the data of the storage block and the data of the storage block are transmitted to the server device.
According to this, it is also possible to write data from the client computer to the server device. Further, since the storage unit of the server device can be used as a readable / writable storage device such as a hard disk of a client computer, the client computer can operate without having a storage device such as a hard disk. .
[0023]
Further, the file system is a magnetic disk file system capable of reading and writing data in a storage block of a magnetic disk drive as a storage device via a magnetic disk driver as a storage device driver.
According to this, the client computer can handle the virtual storage device driver via the magnetic disk file system such as FAT, and can use the storage unit of the server device as the magnetic disk drive of the client computer. it can.
[0024]
Further, the virtual storage device driver encrypts data of a storage block to be transmitted to the server together with the write request, and transmits the encrypted data to the server.
According to this, it is possible to prevent the contents of the data to be communicated from being known to a third party.
[0025]
Further, a virtual storage device driver program according to the present invention has the following configuration in order to solve the above problem. That is, the storage device is communicably connected to a server device via a network, and is provided so as to be able to read data recorded in a storage block such as a sector or a cluster of the storage device via a storage device driver. A virtual storage device driver program read as one of the storage device drivers handled by the file system to a client computer having a file system that performs the association of the file system. When receiving the read request, transmitting a read request for reading data corresponding to the data of the storage block to the server device, and transmitting the data transmitted from the server device in response to the read request. A step of passing the file system as a data of the storage block, and wherein the to be executed by the client computer.
According to this, it is possible to configure a client computer that can read data from the server device by using a virtual storage driver program with a simple configuration and without depending on the OS or the network sharing protocol. In addition, the OS of the client computer only needs to access the file system when accessing the storage unit of the server device, and therefore does not need to be aware of accessing the storage unit of the server device.
[0026]
The file system is provided so as to be able to write data to a storage block of a storage device via a storage device driver, and when a request to write data to the storage block is received from the file system, the server device Transmitting the write request for writing the data of the storage block and the data of the storage block to the client computer.
According to this, it is also possible to write data from the client computer to the server device. Further, since the storage unit of the server device can be used as a readable / writable storage device such as a hard disk of a client computer, the client computer can operate without having a storage device such as a hard disk. .
[0027]
Further, the file system is a magnetic disk file system capable of reading and writing data in a storage block of a magnetic disk drive as a storage device via a magnetic disk driver as a storage device driver.
According to this, the client computer can handle the virtual storage device driver via the magnetic disk file system such as FAT, and can use the storage unit of the server device as the magnetic disk drive of the client computer. it can.
[0028]
The client computer may further execute a step of encrypting data of a storage block to be transmitted to the server device together with the write request.
According to this, it is possible to prevent the contents of the data to be communicated from being known to a third party.
[0029]
Further, a server device according to the present invention has the following configuration in order to solve the above problems. That is, a storage unit that is communicably connected to a plurality or a single client computer via a network and stores data corresponding to data of a storage block such as a sector or a cluster of a storage device, and a storage block from the client computer. And data management means for reading data corresponding to the read request from the storage means and transmitting the read data to the client computer when a read request for reading data corresponding to the data is received.
According to this, the exchange of data between the client computer and the server device is only a read request and data corresponding to the read request between the virtual storage driver program and the data management means. By the management means, the client computer can use the storage area of the storage means of the server device without depending on the OS or the network sharing protocol.
[0030]
Further, when the data management means receives a write request for writing data of a storage block from the client computer, the data management means writes the data transmitted together with the write request to the storage means.
According to this, it is also possible to write from the client computer to the storage means of the server device.
[0031]
Further, the storage block is a storage block such as a sector or a cluster of a magnetic disk.
According to this, the client computer can handle the virtual storage device driver via the magnetic disk file system such as FAT, and can use the storage unit of the server device as the magnetic disk drive of the client computer. it can.
[0032]
Further, the data management means encrypts data to be transmitted to the client computer in response to the read request, and transmits the data to the client computer.
According to this, it is possible to prevent the contents of the data to be communicated from being known to a third party.
[0033]
Further, it is a general-purpose computer, and the storage means is a hard disk.
According to this, the hard disk of the server computer as the server device can be used by the client computer.
[0034]
Further, it is a hard disk device, and the storage means is a hard disk.
According to this, the hard disk of the hard disk device as the server device can be used by the client computer.
[0035]
Further, a data management program according to the present invention has the following configuration in order to solve the above problems. That is, it is read by a server device communicably connected to a plurality or a single client computer via a network and provided with storage means for storing data corresponding to data of a storage block such as a sector or a cluster of a storage device. When receiving a read request for reading data corresponding to data in a storage block from the client computer, the data management program reads data corresponding to the read request from the storage unit and transmits the data to the client computer. And causing the server device to execute the step of performing the operation.
According to this, the exchange of data between the client computer and the server device is only a read request and data corresponding to the read request between the virtual storage driver program and the data management means. The management unit allows the client computer to use the storage area of the storage unit of the server device without depending on the OS or the network sharing protocol.
[0036]
When receiving a write request for writing data in a storage block from the client computer, the server device executes the step of writing the data transmitted together with the write request to the storage unit. I do.
According to this, it is also possible to write from the client computer to the storage means of the server device.
[0037]
Further, the storage block is a storage block such as a sector or a cluster of a magnetic disk.
According to this, the client computer can handle the virtual storage device driver via the magnetic disk file system such as FAT, and can use the storage unit of the server device as the magnetic disk drive of the client computer. it can.
[0038]
Further, the method is characterized by causing the server device to execute a step of encrypting data to be transmitted to the client computer in response to the read request.
According to this, it is possible to prevent the contents of the data to be communicated from being known to a third party.
[0039]
Further, the server device is a general-purpose computer, and the storage means is a hard disk.
According to this, the hard disk of the server computer as the server device can be used by the client computer.
[0040]
Further, the server device is a hard disk device, and the storage means is a hard disk.
According to this, the hard disk of the hard disk device as the server device can be used by the client computer.
[0041]
BEST MODE FOR CARRYING OUT THE INVENTION
Preferred embodiments of a virtual storage device system, a client computer, a virtual storage device driver program, a server device, and a data management program according to the present invention will be described below in detail with reference to the accompanying drawings.
[0042]
FIG. 1 is an explanatory diagram of the virtual storage device system A1 according to the present embodiment. The virtual storage device system A1 includes a server computer S as a server device communicably connected to each other via a network N, and a plurality of client computers C.
[0043]
(Client computer C)
Each client computer C can be constituted by a general-purpose computer such as a personal computer. Each of the client computers C includes an OS 12, one or more hard disks 18 and floppy (R) disk drives 22, which are magnetic disk drives as storage devices, and a hard disk 18 and a floppy (R) disk drive 22. A hard disk driver 16 and a floppy (R) disk driver 20 installed as drivers (magnetic disk drivers); a hard disk 18 and a floppy (R) via the hard disk driver 16 and the floppy (R) disk driver 20 Data is provided in a storage block, such as a sector or a cluster, of a floppy (R) disk in the disk drive 22 so that data can be read from and written to the disk. A magnetic disk file system 14 to perform, and a communication unit 24 capable of transmitting and receiving data via the network N.
[0044]
A plurality of applications 26 can be executed on the OS 12 of the client computer C.
The OS 12 is not limited to a general-purpose OS such as Windows (R) or UNIX (R), and may be any OS as long as it can operate the file system 14. There may be.
[0045]
The communication unit 24 is realized by a general network card or the like that can transmit and receive data to and from other devices such as the server computer S via a network N such as the Internet or a LAN according to the TCP / IP protocol. can do.
[0046]
The magnetic disk file system 14 is software for associating files handled by the application 26 and the OS 12 with storage blocks such as sectors and clusters of the hard disk 18 and the floppy disk in the floppy disk drive 22. It is. In other words, the file system 14 is software that manages in which storage block each file is stored in the hard disk 18 and the floppy (R) disk. In many cases, one file is stored over a plurality of continuous or non-continuous storage blocks of the storage device. However, the file system 14 associates a file with the plurality of storage blocks. Can be managed.
The file system 14 allows the application 26 and the OS 12 to handle the file without being aware of the storage block of the storage device in which the file is stored.
[0047]
Upon receiving a file read request from the OS 12, the file system 14 specifies a plurality or a single storage block corresponding to the file on the hard disk 18 or a floppy (R) disk, and reads the data of the storage block. By issuing a request (for example, a read sector instruction) to the hard disk driver 16 or the floppy (R) disk driver 20, the data of the plurality or the single storage block is read, and the data of the storage block is converted to a file. Configure and pass to OS12.
Further, when receiving a request to write a file from the OS 12, the file system 14 divides the data of the file passed from the OS 12 into data of a unit to be written into a plurality or a single storage block, and the hard disk 18 or the floppy (R) Write to disc. This writing is a request to the hard disk driver 16 or the floppy (R) disk driver 20 to designate a specific storage block on the hard disk 18 or the floppy (R) disk and write data to the storage block (for example, Write sector instruction) and passing the divided data.
[0048]
When the file system 14 designates a specific storage block on a storage device for reading and writing to the storage device driver, a storage block number (sector number or cluster number) uniquely allocated to each storage block is assigned. By specifying.
[0049]
The hard disk driver 16 and the floppy (R) disk driver 20 are installed as software for controlling reading and writing of the hard disk 18 and the floppy (R) disk drive 22. Examples of the hard disk driver 16 and the floppy (R) disk driver 20 include an IDE controller.
[0050]
When the hard disk driver 16 and the floppy (R) disk driver 20 receive the request for reading the data of the storage block from the file system 14, the hard disk 18 and the floppy (R) disk in the floppy (R) disk drive 22 For example, the control of reading the data of the corresponding storage block is performed, and the read data is transferred to the file system 14.
When the hard disk driver 16 or the floppy (R) disk driver 20 receives the request to write data to the storage block from the file system 14, the hard disk drive 18 and the floppy (R) in the floppy (R) disk drive 22 receive the request. ) Write the specified data to the specified storage block of the disk.
[0051]
Further, each client computer C includes a virtual magnetic disk driver 28 as a virtual storage device driver (virtual storage device driver program). The virtual magnetic disk driver 28 is readablely installed on the client computer C as one of the magnetic disk drivers handled by the file system 14.
The virtual magnetic disk driver 28 has the same interface with the file system 14 as other magnetic disk drivers such as the hard disk driver 16 and the floppy (R) disk driver 20. As a result, the virtual magnetic disk driver 28 is regarded as one of the magnetic disk drivers by the file system 14.
[0052]
The difference between the virtual magnetic disk driver 28 and other magnetic disk drivers such as the hard disk driver 16 and the floppy (R) disk driver 20 is that the virtual magnetic disk driver 28 reads and writes data from and to a storage device such as a magnetic disk. In other words, data is read from and written to the server computer S via the communication unit 24, that is, reception and transmission are performed.
[0053]
When receiving a request to read data of a storage block from the file system 14, the virtual magnetic disk driver 28 reads data corresponding to the data of the storage block to the server computer S via the communication unit 24. A read request is transmitted, and data transmitted from the server computer S in response to the read request is passed to the file system 14 as data of the storage block.
When the virtual magnetic disk driver 28 specifies “data corresponding to data of a specific storage block” to be read to the server computer S, the storage block number is used. That is, the virtual magnetic disk driver 28 adds the specified storage block number to the file system 14 and transmits the read request to the server computer S.
[0054]
When the virtual magnetic disk driver 28 receives a request to write data to a storage block from the file system 14, the virtual magnetic disk driver 28 sends a write request to write the data of the storage block and the data of the storage block to the server computer S. Send
When the virtual magnetic disk driver 28 sends the write request to the server computer S, the virtual magnetic disk driver 28 adds the storage block number designated to the file system 14 as in the case of the read request, and sends the write request to the server computer S. Send to S.
[0055]
That is, the virtual magnetic disk driver 28 reads the data from the server computer S instead of reading the data of the storage block from the magnetic disk, and sends the data to the server computer S instead of writing the data to the storage block of the magnetic disk. Is sent.
[0056]
The virtual storage device driver included in each client computer C is configured to enable the server computer S to specify the source virtual storage device driver when transmitting the read request, write request, or data to the server computer S. Then, data and the like are transmitted by adding a predetermined number (ID number) uniquely assigned to each virtual storage device driver. This predetermined number is assigned by the data management means 10 of the server computer S. This allocation will be described later.
[0057]
In the present embodiment, as the file system 14, a magnetic disk file system that writes data to a magnetic disk (the hard disk 18 and the floppy (R) disk 22) is employed. As a file system widely known as a magnetic disk file system, there is a FAT or the like provided in Windows (R). The file system 14 is not limited to the FAT or the like, and may be, for example, a user's own file system.
[0058]
In the present embodiment, the storage device is a magnetic disk device such as a hard disk 18 or a floppy (R) disk. However, the storage device is not limited to this, and may be, for example, an optical disk device. In this case, an optical disk file system suitable for reading and writing data in a storage block of the optical disk may be employed as the file system.
[0059]
Note that a plurality of virtual magnetic disk drivers 28 as virtual storage device drivers may be provided under one file system 14. When the client computer C has a plurality of file systems (for example, a file system for a magnetic disk and a file system for an optical disk), a virtual storage device driver corresponding to each file system may be provided. .
The virtual storage device driver provided in each client computer C may correspond to a different file system (for example, a magnetic disk file system and an optical disk file system) for each client computer C.
[0060]
(Server computer S)
The server computer S can be constituted by a general-purpose computer such as a personal computer. The server computer S includes an OS 1 such as Windows (R) or UNIX (R), one or more hard disks 4 and 4 and a floppy (R) disk drive 6 as storage means, and a network N for data transfer. And a communication unit 8 capable of transmission and reception.
The server computer S, like the client computer C, includes drivers for the hard disks 4, 4 and the floppy (R) disk drive 6 and a file system, but these are omitted in FIG.
[0061]
A plurality of applications can be executed on the OS1.
The OS 1 of the server computer S is not limited to a general-purpose OS such as Windows (R) or UNIX (R), and may be any OS, such as a user's own OS.
[0062]
The communication unit 24 is capable of transmitting and receiving data to and from other devices such as client computers C, C... Via a network N such as the Internet or a LAN according to the TCP / IP protocol. It can be realized by a simple network card or the like.
[0063]
The server computer S includes one or more hard disks 4 and 4 and a floppy (R) disk drive 6 as storage means. These may be internal to the server computer S or external.
[0064]
Further, when the server computer S receives the read request from the client computer C, the server computer S reads data corresponding to the read request from the hard disks 4, 4 or the floppy (R) disk drive 6, and reads the data corresponding to the read request. When the write request is received from the client computer C, data management means (data) for writing the data transmitted with the write request to the hard disk 4, 4 or the floppy (R) disk drive 6. Management program) 10.
The data management means 10 is readablely installed on the server computer S as an application executed on the OS 1.
[0065]
The data management unit 10 has a setting unit (not shown), displays a predetermined input screen on a monitor device (not shown) of the server computer S, and provides the user with the individual virtual storage device / device installed in each client computer C. Register the driver. The setting unit allows the user to register the storage block structure (for example, the number of sectors, the size of each sector, and the like) of each registered virtual storage device driver on a predetermined input screen.
[0066]
When the user completes the registration of each client computer C and the virtual storage device driver of each client computer C by the setting unit, the data management unit 10 is uniquely assigned to each virtual storage device driver. A number (ID number) is assigned, and the number corresponding to the virtual storage device driver is transmitted to the client computer C equipped with each virtual storage device driver. The virtual storage device driver of each client computer C stores this number in the storage means, and adds this number to the request and data transmitted to the server computer S. Thus, the server computer S can determine from which virtual storage device driver each request or data has been transmitted.
[0067]
In the case where each client computer C has only one virtual storage device driver, the unique number is used to identify each client computer C on the network N, such as an IP address. Information can also be used. In this case, the data management means 10 does not need to allocate the number and transmit the number to the client computer C.
[0068]
Subsequently, the setting unit creates, on the hard disk 4 of the server computer S, a virtual storage device file corresponding to each registered virtual storage device driver (number) one-to-one.
As shown in the explanatory diagram of FIG. 2, a virtual storage device file is created one by one corresponding to each virtual storage device driver. As shown in FIG. 2, when a plurality of magnetic disk drivers 28 exist on the same client computer C, or when a plurality of types of virtual storage device drivers exist on the same client computer C, Even when the magnetic disk driver 28 and the virtual optical disk driver 29 exist, a virtual storage device file is created corresponding to each of them.
Note that each virtual storage device file does not need to be created on the same hard disk 4 of the server computer S, but is created on a separate hard disk 4 or a floppy (R) disk of the floppy (R) disk drive 6. May be.
[0069]
Each virtual storage device file is configured in a data structure in which data can be read and written in units of the storage block in accordance with the storage block structure (sector structure or cluster structure, etc.) of the corresponding virtual storage device driver.
For example, as shown in FIG. 3, the internal structure of a virtual storage device file is stored in a sector data area (storage block data area) of a sector data unit (storage block data unit) handled by a corresponding virtual storage device driver. The data management unit 10 is configured to read and write data in an arbitrary sector data area (storage block data area) in the virtual storage device file by designating a sector number (storage block number). Can be.
[0070]
Note that a virtual storage device file does not necessarily have to correspond to one file for one virtual storage device driver.For example, the number of storage blocks handled and the size are large, and the size of the virtual storage device file is large. In such a case, the file may be divided into a plurality of files and saved, or one storage block may correspond to one file.
[0071]
The data management means 10 can receive the read request, the write request, and the storage block data transmitted together with the write request transmitted from the client computer C by the virtual magnetic disk driver 28. .
[0072]
When the data management unit 10 receives the write request from the client computer C, the data management unit 10 transmits the write request from which virtual storage device driver of which client computer C based on the number (ID number) added thereto. Then, the data transmitted together with the write request is stored in the virtual storage device file corresponding to the virtual storage device driver. At this time, the storage location of the data on the virtual storage device file is specified by the storage block number (sector number) added to the write request. That is, the data management means 10 stores the data in a sector data area (storage block data area) (FIG. 3) on the virtual storage device file corresponding to the storage block number (sector number).
[0073]
When the data management means 10 receives the read request from the client computer C, the request is transmitted from which virtual storage device driver of which client computer C based on the number (ID number) added thereto. The data is read from a location corresponding to the read request in the virtual storage device file corresponding to the virtual storage device driver, and the read data is transmitted to the client computer C. At this time, the read location on the virtual storage device file is specified by the storage block number (sector number) added to the read request. That is, the data management means 10 reads data from the sector data area (storage block data area) (FIG. 3) on the virtual storage device file corresponding to the storage block number (sector number) and sends the data to the client computer C. Send.
[0074]
(Operation of Virtual Storage Device System A1)
Next, the operation of the virtual storage device system A1 will be described with reference to FIGS.
FIG. 4 is a sequence chart showing an operation of the virtual storage device system A1 when the OS 12 or the application 26 of the client computer C reads a file.
As shown in FIG. 4, when the OS 12 or the application 26 requests the file system 14 to read a file (S1), the file system 14 specifies a storage block such as a sector or a cluster corresponding to the file. Then, a request to read the data of those storage blocks is made to the virtual magnetic disk driver 28 (S2). The operations of the OS 12, the application 26, and the file system 14 up to this point are not different from the operations when the OS 12 or the application 26 accesses a normal magnetic disk driver.
[0075]
Upon receiving the request, the virtual magnetic disk driver 28 sends the read request for reading data corresponding to the data of the storage block designated by the file system 14 via the communication unit 24 and the network N, to the data of the server computer S. It is transmitted to the management means 10 (S3). At this time, the number (ID number) assigned to the transmission source virtual magnetic disk driver 28 and the storage block number (sector number) of the specified storage block are added to the transmission data.
Note that transmission of data and the like to a specific application (data management means 10) of a specific server computer S connected to the network N is performed by designating the IP address of the server computer S and transmitting each application on the OS1 of the server computer S. Existing technology, such as designating a port number that can be assigned to a server.
[0076]
The data management means 10 specifies a virtual storage device file corresponding to the virtual storage device driver (virtual magnetic disk driver 28) from the number (ID number) of the added transmission source virtual storage device driver. Then, data is read from the storage block data area (sector data area) corresponding to the specified storage block number of the virtual storage device file (S4).
Subsequently, the data management unit 10 transmits the read data to the virtual storage device driver (virtual magnetic disk driver 28) corresponding to the number (ID number) via the communication unit 8 and the network N. (S5).
[0077]
As described above, the virtual storage device file is configured according to the storage block structure (sector structure or cluster structure) of the corresponding virtual storage device driver. Therefore, the storage block number (sector number) of the “specific storage block” specified by the file system 14 can be used in common even when it is taken over by the virtual magnetic disk driver 28 or the data management unit 10. Can be easily configured.
[0078]
The virtual magnetic disk driver 28 that has received the data passes the received data to the file system 14 as data of a storage block requested to be read by the file system 14 (S6).
The file system 14 passes the passed data of the storage block to the OS 12 or the application 26 as a file (S7).
[0079]
FIG. 5 is a sequence chart showing an operation when the OS 12 or the application 26 of the client computer C writes a file.
As shown in FIG. 5, when the OS 12 or the application 26 makes a request to write a file to the file system 14 (S11), the file system 14 specifies a storage block such as a sector or a cluster corresponding to the file. Then, the file is divided into the data in units of storage blocks, and a request to write the data is made to the virtual magnetic disk driver 28 (S12). The operations of the OS 12, the application 26, and the file system 14 up to this point are not different from the operations when the OS 12 or the application 26 accesses a normal magnetic disk driver.
[0080]
Upon receiving the request, the virtual magnetic disk driver 28 transmits the write request for writing the data of the storage blocks and the data of each storage block to the data management unit of the server computer S via the communication unit 24 and the network N. 10 (S13). At this time, the number (ID number) assigned to the transmission source virtual magnetic disk driver 28 and the storage block number (sector number) of the specified storage block are added to the transmission data.
[0081]
The data management means 10 specifies a virtual storage device file corresponding to the virtual storage device driver (virtual magnetic disk driver 28) from the number (ID number) of the added transmission source virtual storage device driver. Then, the received storage block data is written to the storage block data area (sector data area) corresponding to the specified storage block number of the virtual storage device file (S14).
[0082]
According to the virtual storage device system A1 according to the present embodiment, the storage area of the hard disk 4 of the server computer S can be provided to the client computer C.
In addition, in response to a request to read / write data in a storage block from the file system 14, the virtual magnetic disk driver 28 requests the server computer S to read / write data corresponding to the storage block (read request, write request). Can be configured with a simple program such as Further, the data management means 10 can be constituted by a simple program for reading and writing corresponding data from a virtual storage device file in response to a read request and a write request from the client computer C.
Therefore, for example, even when a user's own OS is adopted as the OS 12 of the client computer C, it is not necessary to develop a program for implementing a complicated network sharing protocol as in the related art, and the storage area of the hard disk 4 of the server computer S Is provided to the client computer C more easily.
[0083]
Further, according to the virtual storage device system A1, since the network sharing protocol provided in the OS1 of the server computer S is not used, the OS12 of the client computer C does not depend on the OS1 of the server computer S or the network sharing protocol. , Can be freely selected.
[0084]
Furthermore, since the OS 12 of the client computer C can handle the virtual magnetic disk driver 28 via the file system 14 with the same interface as that for handling a normal magnetic disk driver, the actual data storage destination It is not necessary to distinguish between the hard disk 18 of the client computer C itself, the floppy (R) disk, and the hard disk 4 of the server computer S. The file management processing is reduced as compared with the case where the two are used properly. In particular, when a self-made OS is adopted as the OS 12 of the client computer C, only the interface to the file system 14 needs to be considered as the file management function of the OS 12, so that the OS 12 can be more easily developed. .
[0085]
When the virtual magnetic disk driver 28 and the data management means 10 transmit data corresponding to a storage block via the network N, the data is encrypted and transmitted by an encryption means (not shown). Then, even if the data to be communicated is intercepted by a third party, the contents of the data can be kept from being known.
For this, for example, an existing public key system can be used. That is, each of the client computer C and the server computer S stores one private key of the public key method and transmits data by using the public key corresponding to the client computer C or the server computer S of the transmission destination. If the data is encrypted, it is possible to create a ciphertext that can be decrypted only by a specific client computer C or server computer S.
[0086]
Note that the virtual storage device system according to the present invention is not limited to the virtual storage device system A1 shown in FIG.
For example, in the virtual storage device system A1 of FIG. 1, the OSs 12 and 1 of the client computer C and the server computer S do not have a network sharing protocol, but as shown in the virtual storage device system A2 of FIG. By adopting the virtual storage device driver and the data management means according to the present invention also for an OS having a conventional network sharing protocol, the client computer C stores the hard disk 4 of the server computer S in the client computer C itself. It is possible to read and write data by regarding this as a magnetic disk (storage device).
[0087]
In the virtual storage device systems A1 and A2, the storage means of the server computer S is a hard disk 4 or a floppy (R) disk of a floppy (R) disk drive. The present invention is not limited to this, and may be, for example, a CD-RW drive, an MO drive, or the like. In addition, as the storage means of the server computer S, a read-only optical disk drive for a CD may be adopted, and the virtual magnetic disk driver 28 may be configured to be able to read only data.
[0088]
In the virtual storage device systems A1 and A2, a general-purpose computer such as a personal computer is used as the server computer S. However, as in the virtual storage device system A3 shown in FIG. For example, a hard disk drive H may be employed.
In this case, the hard disk device H is executed by the hard disk 36, the communication unit 30 capable of transmitting and receiving data via the network N, the control unit 32 configured by a logic circuit including a CPU and a memory, and the control unit 32. Data management means (data management program) 34 implemented as firmware.
[0089]
The data management unit 34 is a program that performs the same operation as the data management unit 10 of the virtual storage device system A1. That is, when receiving the read request for reading the data corresponding to the data in the storage block from the client computer C, the data management means 34 responds to the read request from the hard disk 36 (virtual storage device file). Data is read and transmitted to the client computer C. When a write request for writing data in a storage block is received from the client computer C, the data transmitted together with the write request is written to the hard disk 36. .
[0090]
The setting means of the data management means 34 communicates with, for example, a specific client computer C, displays a setting screen on a monitor device or the like of the client computer C, and allows the user to set each of the client computers C, C,. The virtual storage device driver is configured to be registered. The registration result may be transmitted from the specific client computer C to the hard disk drive H, and the data management means 34 may be configured to store the registered number and the like.
Further, the data management unit 34 creates a virtual storage device file corresponding to each virtual storage device driver of each client computer C on the hard disk 36, similarly to the data management unit 10, and It is configured to read and write data corresponding to the data of each storage block transmitted and received between.
[0091]
According to the virtual storage device system A3, the storage area of one hard disk drive H can be used by a plurality of client computers C and C. Each of the client computers C, C,... Can be configured so as not to include a hard disk, and one hard disk device H can play the role of the hard disk of a plurality of client computers C.
[0092]
In the virtual storage device systems A1, A2, and A3, a general-purpose computer such as a personal computer is used as the client computer C. However, the client computer C does not necessarily need to be a general-purpose computer. Any device can be adopted as long as it is a device (computer) having a control unit having a CPU or the like capable of executing a storage device driver or a communication unit capable of transmitting and receiving data via a network.
[0093]
【The invention's effect】
According to the virtual storage device system, the client computer, the virtual storage device driver program, the server device, and the data management means of the present invention, a system capable of providing the storage area of the storage device of the server device to the client computer is provided. With the simple configuration, there is an effect that the load of the file management processing of the OS of the client computer can be reduced without depending on the OS of the server device or the network sharing protocol.
[Brief description of the drawings]
FIG. 1 is an explanatory diagram showing a configuration of a virtual storage device system according to the present invention.
FIG. 2 is an explanatory diagram showing how a data management means (a data management program according to the present invention) creates a virtual storage device file.
FIG. 3 is an explanatory diagram showing an internal configuration of a virtual storage device file.
FIG. 4 is a sequence chart showing an operation of a data management unit (a data management program according to the present invention) when reading a file.
FIG. 5 is a sequence chart showing the operation of the data management means (the data management program according to the present invention) when writing a file.
FIG. 6 is an explanatory diagram showing a configuration of another example of the virtual storage device system according to the present invention.
FIG. 7 is an explanatory diagram showing a configuration of another example of the virtual storage device system according to the present invention.
FIG. 8 is an explanatory diagram showing a configuration of a conventional client server system.
[Explanation of symbols]
A1, A2, A3 Virtual storage device system
N network
S server computer (server device)
1 OS
4 Hard disk (storage means)
6. Floppy (R) disk drive (storage means)
8 Communication section
10 Data management means (data management program)
C client computer
12 OS
14. File System for Magnetic Disk (File System)
16 Hard disk driver (storage device driver)
18 Hard disk (storage device)
20 Floppy (R) Disk Driver (Storage Device Driver)
22 Floppy (R) Disk Drive (Storage Device)
24 Communication unit
26 Applications
28 Virtual Magnetic Disk Driver (Virtual Storage Device Driver, Virtual Storage Device Driver Program)
H Hard disk device (server device)
30 Communication unit
32 control unit
34 data management means (data management program)
36 Hard disk (storage device)

Claims (27)

ネットワークに接続されたサーバ装置と、
前記ネットワークを介して前記サーバ装置と通信可能に接続された、複数または単数のクライアントコンピュータとを具備し、
該クライアントコンピュータは、
ストレージデバイス・ドライバを介して、ストレージデバイスのセクタやクラスタ等の記憶ブロックに記録されたデータを読み出し可能に設けられ、ファイルと記憶ブロックとの対応付けを行うファイルシステムと、
該ファイルシステムによって扱われるストレージデバイス・ドライバの一つとしてインストールされ、該ファイルシステムから、記憶ブロックのデータを読み出す要求を受けた際には、前記サーバ装置に、該記憶ブロックのデータに対応するデータを読み出すリード要求を送信し、該リード要求に対応して該サーバ装置から送信されてきたデータを、該記憶ブロックのデータとして該ファイルシステムに渡す仮想ストレージデバイス・ドライバとを備え、
前記サーバ装置は、
各前記記憶ブロックのデータに対応するデータを記憶する記憶手段と、
前記クライアントコンピュータから、前記リード要求を受信した際には、前記記憶手段から該リード要求に対応するデータを読み出して該クライアントコンピュータに送信するデータ管理手段とを備えることを特徴とする仮想ストレージデバイス・システム。
A server device connected to the network,
Comprising a plurality or a single client computer communicably connected to the server device via the network,
The client computer is
Via a storage device driver, a file system that is provided so as to be able to read data recorded in storage blocks such as sectors and clusters of the storage device, and that associates files with storage blocks;
Installed as one of the storage device drivers handled by the file system, when a request to read data of a storage block is received from the file system, the server device stores data corresponding to the data of the storage block. A virtual storage device driver that transmits a read request to read the data, and transfers data transmitted from the server device in response to the read request to the file system as data of the storage block.
The server device,
Storage means for storing data corresponding to the data of each of the storage blocks;
A virtual storage device comprising: data management means for, when receiving the read request from the client computer, reading data corresponding to the read request from the storage means and transmitting the data to the client computer. system.
前記ファイルシステムは、ストレージデバイス・ドライバを介してストレージデバイスの記憶ブロックにデータを書き込み可能に設けられ、前記仮想ストレージデバイス・ドライバは、前記ファイルシステムから、記憶ブロックにデータを書き込む要求を受けた際には、前記サーバ装置に、該記憶ブロックのデータを書き込むライト要求と該記憶ブロックのデータとを送信し、
前記データ管理手段は、前記クライアントコンピュータから、前記ライト要求を受信した際には、該ライト要求と共に送信されてきたデータを前記記憶手段に書き込むことを特徴とする請求項1記載の仮想ストレージデバイス・システム。
The file system is provided so as to be able to write data to a storage block of a storage device via a storage device driver, and the virtual storage device driver receives a request to write data to a storage block from the file system. Transmits, to the server device, a write request for writing data of the storage block and data of the storage block,
2. The virtual storage device according to claim 1, wherein the data management unit, upon receiving the write request from the client computer, writes data transmitted together with the write request into the storage unit. system.
前記ファイルシステムは、ストレージデバイス・ドライバとしての磁気ディスク・ドライバを介して、ストレージデバイスとしての磁気ディスクドライブの記憶ブロックにデータを読み書き可能な磁気ディスク用ファイルシステムであることを特徴とする請求項2記載の仮想ストレージデバイス・システム。3. The file system according to claim 2, wherein the file system is a magnetic disk file system capable of reading and writing data from and to a storage block of a magnetic disk drive as a storage device via a magnetic disk driver as a storage device driver. The virtual storage device system as described. 前記仮想ストレージデバイス・ドライバは、前記ライト要求と共に前記サーバ装置に送信すべき、記憶ブロックのデータを、暗号化して、前記サーバ装置に送信することを特徴とする請求項2または3記載の仮想ストレージデバイス・システム。The virtual storage device according to claim 2, wherein the virtual storage device driver encrypts data of a storage block to be transmitted to the server device together with the write request, and transmits the encrypted data to the server device. 5. Device system. 前記データ管理手段は、前記リード要求に対応して前記クライアントコンピュータに送信すべきデータを、暗号化して、前記クライアントコンピュータに送信することを特徴とする請求項1、2、3または4記載の仮想ストレージデバイス・システム。5. The virtual machine according to claim 1, wherein the data management unit encrypts data to be transmitted to the client computer in response to the read request and transmits the data to the client computer. Storage device system. 前記サーバ装置は、汎用コンピュータであり、
前記記憶手段は、ハードディスクであることを特徴とする請求項1、2、3、4または5記載の仮想ストレージデバイス・システム。
The server device is a general-purpose computer,
6. The virtual storage device system according to claim 1, wherein said storage means is a hard disk.
前記サーバ装置は、ハードディスク装置であり、
前記記憶手段は、ハードディスクであることを特徴とする請求項1、2、3、4または5記載の仮想ストレージデバイス・システム。
The server device is a hard disk device,
6. The virtual storage device system according to claim 1, wherein said storage means is a hard disk.
ネットワークを介してサーバ装置と通信可能に接続され、
ストレージデバイス・ドライバを介して、ストレージデバイスのセクタやクラスタ等の記憶ブロックに記録されたデータを読み出し可能に設けられ、ファイルと記憶ブロックとの対応付けを行うファイルシステムと、
該ファイルシステムによって扱われるストレージデバイス・ドライバの一つとしてインストールされ、該ファイルシステムから、記憶ブロックのデータを読み出す要求を受けた際には、前記サーバ装置に、該記憶ブロックのデータに対応するデータを読み出すリード要求を送信し、該リード要求に対応して該サーバ装置から送信されてきたデータを、該記憶ブロックのデータとして該ファイルシステムに渡す仮想ストレージデバイス・ドライバとを備えることを特徴とするクライアントコンピュータ。
Connected communicably to the server device via the network,
Via a storage device driver, a file system that is provided so as to be able to read data recorded in storage blocks such as sectors and clusters of the storage device, and that associates files with storage blocks;
Installed as one of the storage device drivers handled by the file system, when a request to read data of a storage block is received from the file system, the server device stores data corresponding to the data of the storage block. A virtual storage device driver for transmitting a read request for reading the data, and transferring data transmitted from the server device in response to the read request to the file system as data of the storage block. Client computer.
前記ファイルシステムは、ストレージデバイス・ドライバを介してストレージデバイスの記憶ブロックにデータを書き込み可能に設けられ、前記仮想ストレージデバイス・ドライバは、前記ファイルシステムから、記憶ブロックにデータを書き込む要求を受けた際には、前記サーバ装置に、該記憶ブロックのデータを書き込むライト要求と該記憶ブロックのデータとを送信することを特徴とする請求項8記載のクライアントコンピュータ。The file system is provided so as to be able to write data to a storage block of a storage device via a storage device driver, and the virtual storage device driver receives a request to write data to a storage block from the file system. 9. The client computer according to claim 8, further comprising: transmitting a write request for writing data of the storage block and data of the storage block to the server device. 前記ファイルシステムは、ストレージデバイス・ドライバとしての磁気ディスク・ドライバを介して、ストレージデバイスとしての磁気ディスクドライブの記憶ブロックにデータを読み書き可能な磁気ディスク用ファイルシステムであることを特徴とする請求項9記載のクライアントコンピュータ。The file system according to claim 9, wherein the file system is a magnetic disk file system capable of reading and writing data from / to a storage block of a magnetic disk drive as a storage device via a magnetic disk driver as a storage device driver. The client computer as described. 前記仮想ストレージデバイス・ドライバは、前記ライト要求と共に前記サーバ装置に送信すべき、記憶ブロックのデータを、暗号化して、前記サーバ装置に送信することを特徴とする請求項9または10記載のクライアントコンピュータ。11. The client computer according to claim 9, wherein the virtual storage device driver encrypts storage block data to be transmitted to the server device together with the write request, and transmits the encrypted data to the server device. . ネットワークを介してサーバ装置と通信可能に接続され、ストレージデバイス・ドライバを介して、ストレージデバイスのセクタやクラスタ等の記憶ブロックに記録されたデータを読み出し可能に設けられ、ファイルと記憶ブロックとの対応付けを行うファイルシステムを備えたクライアントコンピュータに、該ファイルシステムによって扱われるストレージデバイス・ドライバの一つとして読み取られる仮想ストレージデバイス・ドライバプログラムであって、
前記ファイルシステムから、記憶ブロックのデータを読み出す要求を受けた際には、
前記サーバ装置に、前記記憶ブロックのデータに対応するデータを読み出すリード要求を送信するステップと、
前記リード要求に対応して前記サーバ装置から送信されてきたデータを、前記記憶ブロックのデータとして前記ファイルシステムに渡すステップとを、前記クライアントコンピュータに実行させることを特徴とする仮想ストレージデバイス・ドライバプログラム。
It is communicably connected to a server device via a network, and is provided so as to be able to read data recorded in a storage block such as a sector or a cluster of the storage device via a storage device driver. A virtual storage device driver program read as one of the storage device drivers handled by the file system to a client computer having a file system for attaching
When a request to read data of a storage block is received from the file system,
Transmitting, to the server device, a read request to read data corresponding to the data in the storage block;
Transferring the data transmitted from the server device in response to the read request to the file system as the data of the storage block to the client computer. .
前記ファイルシステムは、ストレージデバイス・ドライバを介してストレージデバイスの記憶ブロックにデータを書き込み可能に設けられ、
前記ファイルシステムから、記憶ブロックにデータを書き込む要求を受けた際には、前記サーバ装置に、該記憶ブロックのデータを書き込むライト要求と該記憶ブロックのデータとを送信するステップを、前記クライアントコンピュータに実行させることを特徴とする請求項12記載の仮想ストレージデバイス・ドライバプログラム。
The file system is provided so as to be able to write data to a storage block of the storage device via a storage device driver,
When receiving a request to write data to a storage block from the file system, transmitting a write request to write the data of the storage block and the data of the storage block to the server device. 13. The virtual storage device driver program according to claim 12, which is executed.
前記ファイルシステムは、ストレージデバイス・ドライバとしての磁気ディスク・ドライバを介して、ストレージデバイスとしての磁気ディスクドライブの記憶ブロックにデータを読み書き可能な磁気ディスク用ファイルシステムであることを特徴とする請求項13記載の仮想ストレージデバイス・ドライバプログラム。14. The magnetic disk drive according to claim 13, wherein the file system is a magnetic disk file system capable of reading and writing data from and to a storage block of a magnetic disk drive as a storage device via a magnetic disk driver as a storage device driver. The described virtual storage device driver program. 前記ライト要求と共に前記サーバ装置に送信すべき、記憶ブロックのデータを、暗号化するステップを、前記クライアントコンピュータに実行させることを特徴とする請求項13または14記載の仮想ストレージデバイス・ドライバプログラム。15. The virtual storage device driver program according to claim 13, further comprising causing the client computer to execute a step of encrypting data of a storage block to be transmitted to the server device together with the write request. ネットワークを介して、複数または単数のクライアントコンピュータと通信可能に接続され、
ストレージデバイスのセクタやクラスタ等の記憶ブロックのデータに対応するデータを記憶する記憶手段と、
前記クライアントコンピュータから、記憶ブロックのデータに対応するデータを読み出すリード要求を受信した際には、前記記憶手段から該リード要求に対応するデータを読み出して該クライアントコンピュータに送信するデータ管理手段とを備えることを特徴とするサーバ装置。
Communicatively connected to a plurality or a single client computer via a network,
Storage means for storing data corresponding to data of a storage block such as a sector or a cluster of a storage device;
A data management unit that reads, from the storage unit, data corresponding to the read request and transmits the read data to the client computer when a read request for reading data corresponding to data in a storage block is received from the client computer. A server device characterized by the above-mentioned.
前記データ管理手段は、前記クライアントコンピュータから、記憶ブロックのデータを書き込むライト要求を受信した際には、該ライト要求と共に送信されてきたデータを前記記憶手段に書き込むことを特徴とする請求項16記載のサーバ装置。17. The data management unit according to claim 16, wherein when receiving a write request for writing data in a storage block from the client computer, the data management unit writes the data transmitted together with the write request to the storage unit. Server device. 前記記憶ブロックは、磁気ディスクのセクタやクラスタ等の記憶ブロックであることを特徴とする請求項16または17記載のサーバ装置。18. The server device according to claim 16, wherein the storage block is a storage block such as a sector or a cluster of a magnetic disk. 前記データ管理手段は、前記リード要求に対応して前記クライアントコンピュータに送信すべきデータを、暗号化して、前記クライアントコンピュータに送信することを特徴とする請求項16、17または18記載のサーバ装置。19. The server device according to claim 16, wherein the data management unit encrypts data to be transmitted to the client computer in response to the read request and transmits the data to the client computer. 汎用コンピュータであり、
前記記憶手段は、ハードディスクであることを特徴とする請求項16、17、18または19記載のサーバ装置。
General purpose computer,
20. The server device according to claim 16, wherein the storage unit is a hard disk.
ハードディスク装置であり、
前記記憶手段は、ハードディスクであることを特徴とする請求項16、17、18または19記載のサーバ装置。
A hard disk drive,
20. The server device according to claim 16, wherein the storage unit is a hard disk.
ネットワークを介して、複数または単数のクライアントコンピュータと通信可能に接続され、ストレージデバイスのセクタやクラスタ等の記憶ブロックのデータに対応するデータを記憶する記憶手段を備えたサーバ装置に、読み取られるデータ管理プログラムであって、
前記クライアントコンピュータから、記憶ブロックのデータに対応するデータを読み出すリード要求を受信した際には、前記記憶手段から該リード要求に対応するデータを読み出して該クライアントコンピュータに送信するステップを、前記サーバ装置に実行させることを特徴とするデータ管理プログラム。
Data management that is read by a server device that is communicably connected to a plurality of or a single client computer via a network and has storage means for storing data corresponding to data of a storage block such as a sector or a cluster of a storage device. A program,
When receiving a read request for reading data corresponding to data in a storage block from the client computer, reading the data corresponding to the read request from the storage unit and transmitting the data to the client computer. A data management program characterized by being executed by a user.
前記クライアントコンピュータから、記憶ブロックのデータを書き込むライト要求を受信した際には、該ライト要求と共に送信されてきたデータを前記記憶手段に書き込むステップを、前記サーバ装置に実行させることを特徴とする請求項22記載のデータ管理プログラム。When receiving a write request for writing data in a storage block from the client computer, the server device executes the step of writing the data transmitted together with the write request to the storage unit. Item 23. The data management program according to Item 22. 前記記憶ブロックは、磁気ディスクのセクタやクラスタ等の記憶ブロックであることを特徴とする請求項22または23記載のデータ管理プログラム。24. The data management program according to claim 22, wherein the storage block is a storage block such as a sector or a cluster of a magnetic disk. 前記リード要求に対応して前記クライアントコンピュータに送信すべきデータを、暗号化するステップを、前記サーバ装置に実行させることを特徴とする請求項22、23または24記載のデータ管理プログラム。25. The data management program according to claim 22, wherein the server device executes a step of encrypting data to be transmitted to the client computer in response to the read request. 前記サーバ装置は、汎用コンピュータであり、
前記記憶手段は、ハードディスクであることを特徴とする請求項22、23、24または25記載のデータ管理プログラム。
The server device is a general-purpose computer,
26. The data management program according to claim 22, wherein the storage unit is a hard disk.
前記サーバ装置は、ハードディスク装置であり、
前記記憶手段は、ハードディスクであることを特徴とする請求項22、23、24または25記載のデータ管理プログラム。
The server device is a hard disk device,
26. The data management program according to claim 22, wherein the storage unit is a hard disk.
JP2002377556A 2002-12-26 2002-12-26 Virtual storage device system, client computer, virtual storage device driver program, server device, and data management program Pending JP2004206602A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002377556A JP2004206602A (en) 2002-12-26 2002-12-26 Virtual storage device system, client computer, virtual storage device driver program, server device, and data management program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002377556A JP2004206602A (en) 2002-12-26 2002-12-26 Virtual storage device system, client computer, virtual storage device driver program, server device, and data management program

Publications (1)

Publication Number Publication Date
JP2004206602A true JP2004206602A (en) 2004-07-22

Family

ID=32814702

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002377556A Pending JP2004206602A (en) 2002-12-26 2002-12-26 Virtual storage device system, client computer, virtual storage device driver program, server device, and data management program

Country Status (1)

Country Link
JP (1) JP2004206602A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007300378A (en) * 2006-04-28 2007-11-15 Brother Ind Ltd Multifunction peripheral device
JP2017010424A (en) * 2015-06-25 2017-01-12 横河レンタ・リース株式会社 Data management device, data management method and data management program
CN112214778A (en) * 2020-10-21 2021-01-12 上海英方软件股份有限公司 Method and system for realizing discrete encryption of local file through virtual file

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007300378A (en) * 2006-04-28 2007-11-15 Brother Ind Ltd Multifunction peripheral device
JP2017010424A (en) * 2015-06-25 2017-01-12 横河レンタ・リース株式会社 Data management device, data management method and data management program
CN112214778A (en) * 2020-10-21 2021-01-12 上海英方软件股份有限公司 Method and system for realizing discrete encryption of local file through virtual file

Similar Documents

Publication Publication Date Title
US7596695B2 (en) Application-based data encryption system and method thereof
JP5602572B2 (en) Storage device, data copying method, and storage system
US8422677B2 (en) Storage virtualization apparatus comprising encryption functions
JP4782871B2 (en) Device access control program, device access control method, and information processing apparatus
JP5496254B2 (en) Converting a machine to a virtual machine
JP4931993B2 (en) Method, system, and computer for data encryption in storage systems
JP6414863B2 (en) Encryption and decryption method and apparatus and system in virtualization system
US9147081B2 (en) Method of access control to stored information and system thereof
US10362030B2 (en) Method and system for providing access to administrative functionality a virtualization environment
WO2017190084A1 (en) Offloading storage encryption operations
JP2006510976A5 (en)
CN1766851A (en) Systems and methods for data storage management
JP4497993B2 (en) Electronic distribution distribution control system and method
JP2005222123A (en) Computer system, management device, storage device, and computer device
JP2009151401A (en) Volume management method in storage apparatus having encryption feature
JP4855516B2 (en) Access control program, access control device, and access control method
JP2011517205A (en) Disk drive data encryption
JPWO2005001700A1 (en) Storage capacity management method, server and recording medium
US11068606B2 (en) Secured encrypted shared cloud storage
JP4285058B2 (en) Network management program, management computer and management method
JP4127497B2 (en) Digital service system
WO2018008123A1 (en) Computer system
JP2009064055A (en) Computer system and security management method
US20070283169A1 (en) Method for controlling file access on computer systems
US8738935B1 (en) Verified erasure of data implemented on distributed systems

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20051024

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081021

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090331