JP3914949B2 - USB storage device, control device thereof, and program for causing control device to execute - Google Patents
USB storage device, control device thereof, and program for causing control device to execute Download PDFInfo
- Publication number
- JP3914949B2 JP3914949B2 JP2005285284A JP2005285284A JP3914949B2 JP 3914949 B2 JP3914949 B2 JP 3914949B2 JP 2005285284 A JP2005285284 A JP 2005285284A JP 2005285284 A JP2005285284 A JP 2005285284A JP 3914949 B2 JP3914949 B2 JP 3914949B2
- Authority
- JP
- Japan
- Prior art keywords
- information
- command
- usb
- read
- area
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Accessory Devices And Overall Control Thereof (AREA)
- Record Information Processing For Printing (AREA)
- Storage Device Security (AREA)
Description
本発明は、半導体メモリを用いて情報を記憶するUSBストレージデバイス及びその制御装置、並びに該制御装置に実行させるプログラムに関する。 The present invention relates to a USB storage device that stores information using a semiconductor memory, a control device thereof, and a program executed by the control device .
近年、フラッシュメモリ等を内蔵し、USB(Universal Serial Bus)規格に基づいたインターフェースを備え、USBコネクタ部分を本体に一体化することによってコンパクトな形状を実現した着脱式のUSBストレージデバイスが広く知られている(例えば特許文献1)。このようなUSBストレージデバイスはコンパクトな形状であるため安価に製造でき、内部にコマーシャル等のソフトウェアを書き込んで企業の販促品として利用されている。
このようなデバイスでは、フラッシュメモリが、情報の読み出し、書き込み及び削除が可能な一つのディスク領域として構成され、USBストレージデバイスが装着されて使用されるホスト(「外部装置」ともいう)のOSからは、情報の読み出し、書き込み及び削除が可能なディスクデバイスを有する一つのドライブが存在するものとして認識されていた。
In recent years, detachable USB storage devices that incorporate a flash memory, etc., have an interface based on the USB (Universal Serial Bus) standard, and realize a compact shape by integrating the USB connector part into the main body are widely known. (For example, Patent Document 1). Since such a USB storage device has a compact shape, it can be manufactured at low cost, and software such as commercials is written therein and used as a promotional product for a company.
In such a device, the flash memory is configured as one disk area from which information can be read, written and deleted, and from the OS of a host (also referred to as an “external device”) to which a USB storage device is attached and used. Has been recognized as having a single drive having a disk device capable of reading, writing and deleting information .
また、このようなUSBストレージデバイスの多くは、ソフトウェアが誤って消去されないようにするため、ライトプロテクトスイッチのような物理的なスイッチを設け、そのスイッチを切り替えることにより、読み込み、書き込み及び消去が可能な状態と読み込みのみが可能な状態とを切り替えられるようにしている。また、ROM等の元々書き換え不可能なメモリを使用して完全に書き込み及び消去をできないようにする場合もある。 Further, many such USB storage device, in order to prevent accidentally erased software, provided the physical switch, such as a write-protect switch, by switching the switch, reading, writing and erasing can be It is possible to switch between a simple state and a state in which only reading is possible. In some cases, a memory such as a ROM that cannot be rewritten is used so that writing and erasing cannot be performed completely.
しかし、このようにROM等を用いて使用者が情報を書き込めないようにしてしまうと、使用目的が限られてしまい使い勝手が悪かった。また、ソフトウェアの実行時に一時ファイルやデータ等が書き込めずに、ソフトウェア自体の機能が制限される場合もあった。一方、上述したライトプロテクトスイッチを用いる場合は、使用者が意識しない物理的要因によってライトプロテクトスイッチが解除されてしまい、意図しない書き込みや消去が実行される場合もあり得た。 However, if the user cannot write information using a ROM or the like in this way, the purpose of use is limited and the usability is poor. In some cases, temporary functions and data cannot be written when the software is executed, and the function of the software itself is limited. On the other hand, when the above-described write protect switch is used, the write protect switch may be released due to a physical factor that the user is not aware of, and unintended writing or erasure may be performed.
そこで、このような問題を解決するために特許文献2に記載のような技術が考えられている。これは、書き換え可能型の可搬型メディアに対して、仮想的に書き換え禁止領域や読み込み禁止領域を設けてハイブリッドな構成にするものである。 Therefore, in order to solve such a problem, a technique as described in Patent Document 2 is considered. This is a hybrid configuration in which a rewritable prohibited area and a read prohibited area are virtually provided for a rewritable portable medium .
ところで、特許文献2に記載の技術をUSBストレージデバイスに適用することを考えた場合、具体的な実現方法としては次のような方法が考えられる。
一つは、USBストレージデバイスに、内部的に2つのUSBストレージデバイス(うち一方のUSBストレージデバイスは削除及び書き込みを制限)とそれらを接続したハブとを備えることにより実現する方法である。しかし、このようなUSBストレージデバイスは、内部に実質的に2つのUSBストレージデバイスを備えるため、構成が複雑になるといった問題があった。また、ホストでは、USBストレージデバイスが接続された際に、まずHUBデバイスとして認識し、その後、内蔵されたUSBストレージデバイスの数だけ、マスストレージクラスドライバの初期化が必要になるため、接続時の処理に時間がかかるといった問題もあった。
By the way , when considering applying the technique described in Patent Document 2 to a USB storage device, the following method is conceivable as a specific implementation method.
One is a method realized by providing a USB storage device internally with two USB storage devices (of which one USB storage device restricts deletion and writing) and a hub connected to them. However, such a USB storage device has a problem that the configuration is complicated because it has substantially two USB storage devices inside. In addition, when a USB storage device is connected, the host first recognizes it as a HUB device, and after that, it is necessary to initialize mass storage class drivers for the number of built-in USB storage devices. There was also a problem that processing took time.
また一つは、USB規格におけるエンドポイントの数を増やすことによって実現する方法も考えられる。しかし、このような方法を用いた場合は、USBストレージデバイスが備えるコントローラにエンドポイントの数分だけFIFOバッファが必要になる。また、最近では、FIFOバッファを多数実装しない仮想エンドポイントなる技法を用いたコントローラもあるが、何れの場合もコントローラが複雑になり、コスト増を招く要因となっていた。 One method is also conceivable by increasing the number of endpoints in the USB standard. However, when such a method is used, as many FIFO buffers as the number of endpoints are required for the controller provided in the USB storage device. Recently, there is also a controller that uses a technique called a virtual endpoint that does not implement many FIFO buffers. However, in any case, the controller becomes complicated and causes an increase in cost.
本発明は、このような問題に鑑みなされたものであり、その目的は、USBストレージデバイスのフラッシュメモリからなる記憶手段を複数の領域に分けて定義し、これらを、OSから、情報の読み出し、書き込み、削除が可能なデバイス、又は、情報の読み出しのみ可能なデバイスとして認識させることのできるUSBストレージデバイス及びその制御装置、並びに該制御装置に実行させるプログラムを提供することにある。そして、結果として、記憶済みのソフトウェアが誤って消去されることを防止するという機能ができるだけ単純な構成で実現されたUSBストレージデバイス等を提供することを目的とする。 The present invention has been made in view of such a problem, and its purpose is to define a storage unit composed of a flash memory of a USB storage device by dividing it into a plurality of areas, and read them from the OS, An object of the present invention is to provide a USB storage device that can be recognized as a device that can be written and deleted, or a device that can only read information, its control device, and a program that is executed by the control device . As a result, an object of the present invention is to provide a USB storage device or the like in which the function of preventing stored software from being accidentally erased is realized with a configuration as simple as possible.
上記課題を解決するためになされた請求項1に記載の制御装置は、当該USBストレージデバイスが接続されて用いられる外部装置のUSBマスストレージクラスドライバに、前記USBストレージデバイスに設けられたフラッシュメモリからなる記憶手段のN個(Nは3以上の整数)の領域を、情報の読み出し書き込み及び削除のいずれも可能なデバイスと情報の読み出しのみ可能なデバイスとをそれぞれ少なくとも一つ含み、前記いずれかの種類のデバイスとして認識させるための情報を記憶する。そして、前記外部装置のディスクドライブドライバによるコマンドの発行に応答して、前記外部装置のUSBマスストレージクラスドライバへ前記認識させるための情報を供給して、前記USBマスストレージクラスドライバに、前記記憶手段の領域を、情報の読み出し書き込み及び削除のいずれも可能なデバイスと情報の読み出しのみ可能なデバイスとをそれぞれ少なくとも一つ含み、前記いずれかの種類のデバイスとして認識させるとともに、前記外部装置から受け取ったコマンドが、情報の読み出し指令であるときは、それが、前記外部装置に情報の読み出し書き込み及び削除が可能なデバイスとして認識させた領域若しくは前記外部装置に情報の読み出しのみ可能なデバイスとして認識させた領域のいずれに対する指令であってもこれを実行する。そして、情報の書き込み又は削除のいずれかの指令あるときは、それが、前記外部装置に情報の読み出し書き込み及び削除が可能なデバイスとして認識させた領域に対する指令であった場合はこれを実行し、情報の読み出しのみ可能なデバイスとして認識させた領域に対する指令であった場合は、当該指令を拒否する。 The control device according to claim 1, which has been made to solve the above problem, includes a USB mass storage class driver of an external device connected to the USB storage device, and a flash memory provided in the USB storage device. N storage areas (N is an integer of 3 or more) each including at least one device that can both read and write information and a device that can only read information. Information to be recognized as a type of device is stored. Then, in response to the issuance of a command by the disk drive driver of the external device, information for causing the USB mass storage class driver of the external device to recognize is supplied to the USB mass storage class driver. This area includes at least one device that can both read and write information and a device that can only read information, and is recognized as one of the types of devices and received from the external device. When the command is an information read command, it causes the external device to recognize the device as a device capable of reading / writing and deleting information, or the external device as a device capable of only reading information This command can be used for any area. To run. And when there is a command for either writing or deleting information, if it is a command for an area recognized as a device capable of reading and writing and deleting information to the external device, this is executed. If the command is for an area recognized as a device that can only read information, the command is rejected.
このため、請求項1の制御装置によれば、外部装置に装着された一つのUSBストレージデバイスを、外部装置に対し、情報の読み出し、書き込み、及び削除のいずれも可能なデバイス、又は、情報の読み出しのみ可能なデバイスを少なくとも一つずつ含む前記いずれかの種類のデバイスを計N個(Nは3以上の整数)有したデバイスとして認識させることができ、情報の読み出し、書き込み及び削除が可能な一つのデバイスとしてしか認識させることができない場合に比べ、利便性が増す。 For this reason, according to the control device of claim 1, a single USB storage device attached to the external device can be read from, written to, or deleted from the external device, or Any of the above-mentioned types of devices including at least one device that can only be read can be recognized as a device having a total of N devices (N is an integer of 3 or more) , and information can be read, written, and deleted Convenience increases compared to the case where only one device can be recognized.
また、請求項2に記載の制御装置は、ホストからの情報の書き込み又は削除の指令に対し、それを実行するか否かを、当該指令対象領域のフォーマットが情報の書き込み及び削除の予定されたものであるかどうかという特性に基づいて判断する。
したがって、このような特性に基づいて判断すれば、当該領域に対する当該指令実行の是非を確実に判断することができ、予定されていない指令の場合はこれを拒否することにより、情報の書き込みや削除が予定されていない領域に記憶されている情報の改竄・削除を未然に防止し、当該情報を簡易かつ確実に保護することができる。
また、上記課題を解決するためになされた請求項3に記載のUSBストレージデバイスは、所定のオペレーションシステムによって制御されると共に少なくともディスクドライブドライバ、USBマスストレージクラスドライバ及びUSBホストコントローラを具備する外部装置へ接続されて使用されるUSBストレージデバイスであって、フラッシュメモリの記憶領域を、N個(Nは3以上の整数)の領域に分けて定義してなる記憶手段と、前記外部装置とUSBプロトコルに基づいた通信を行う通信手段と、前記通信手段を介して、前記記憶手段に対して情報の読み出し、書き込み及び削除を実行する制御手段とを備える。そして、前記制御手段は、(1)前記フラッシュメモリからなる記憶手段の前記N個の領域を、情報の読み出し書き込み及び削除のいずれも可能なデバイスと情報の読み出しのみ可能なデバイスとをそれぞれ少なくとも一つ含み、前記いずれかの種類のデバイスとして前記外部装置のUSBマスストレージクラスドライバに認識させるための情報を記憶し、(2)前記ディスクドライブドライバによるコマンドの発行に応答して、前記USBマスストレージクラスドライバへ前記認識させるための情報を供給して、前記記憶手段の領域を、情報の読み出し書き込み及び削除のいずれも可能なデバイスと情報の読み出しのみ可能なデバイスとをそれぞれ少なくとも一つ含み、前記いずれかの種類のデバイスとして前記USBマスストレージクラスドライバに認識させるとともに、(3)前記外部装置から受け取ったコマンドが、情報の読み出し指令であるときは、それが、前記外部装置に情報の読み出し書き込み及び削除が可能なデバイスとして認識させた領域若しくは前記外部装置に情報の読み出しのみ可能なデバイスとして認識させた領域のいずれに対するものであってもこれを実行し、前記外部装置から受け取ったコマンドが、情報の書き込み又は削除のいずれかでの指令あるときは、それが、前記外部装置に情報の読み出し書き込み及び削除が可能なデバイスとして認識させた領域に対する指令であった場合はこれを実行し、情報の読み出しのみ可能なデバイスとして認識させた領域に対するものであった場合は、当該指令を拒否する。 Further, in the control device according to claim 2, whether or not to execute a command for writing or deleting information from the host, the format of the command target area is scheduled to write or delete information. Judgment is made based on the characteristic of whether or not it is a thing.
Therefore, if it is determined based on such characteristics, it is possible to reliably determine whether or not to execute the command for the area, and in the case of an unscheduled command, it is rejected to write or delete information. It is possible to prevent tampering / deletion of information stored in an area where no information is scheduled, and to protect the information simply and reliably.
The USB storage device according to claim 3, which has been made to solve the above problem, is controlled by a predetermined operation system and includes at least a disk drive driver, a USB mass storage class driver, and a USB host controller. A USB storage device that is used by being connected to the storage device, wherein the storage area of the flash memory is defined by dividing the storage area into N areas (N is an integer of 3 or more), the external device, and the USB protocol And a control means for executing reading, writing, and deletion of information with respect to the storage means via the communication means. The control means (1) at least one device that can both read and write information and a device that can only read information in the N areas of the storage means including the flash memory. Information for allowing the USB mass storage class driver of the external device to recognize the device as any of the types of devices, and (2) in response to the command issued by the disk drive driver, the USB mass storage Supplying information for recognition to the class driver, the storage means area including at least one device that can both read and write information and a device that can only read information, and The USB mass storage class as any kind of device (3) When the command received from the external device is an information read command, the area recognized by the external device as a device capable of reading, writing, and deleting information or Execute this for any area that the external device recognizes as a device that can only read information, and the command received from the external device is a command for either writing or deleting information If this is a command for an area that the external device recognizes as a device that can read and write information and deletes it, this is executed, and for an area that is recognized as a device that can only read information If it is, it rejects the directive.
このため、請求項3のUSBストレージデバイスによれば、外部装置に装着された一つのUSBストレージデバイスを、情報の読み出し、書き込み、及び削除のいずれも可能なデバイス、又は、情報の読み出しのみ可能なデバイスを少なくとも一つずつ含む前記いずれかの種類のデバイスを計N個(Nは3以上の整数)有したデバイスとして扱うことができ、情報の読み出し、書き込み及び削除が可能な一つのデバイスとしてしか扱うことができない場合に比べ、さらに利便性が増す。 Therefore , according to the USB storage device of claim 3, a device capable of reading, writing, and deleting information from one USB storage device attached to the external device, or only reading of information is possible. Any of the above-mentioned types of devices including at least one device can be handled as a device having a total of N devices (N is an integer of 3 or more) , and can only be used as one device that can read, write, and delete information. Compared to the case where it cannot be handled , the convenience is further increased.
また、請求項4に記載のUSBストレージデバイスは、情報の書き込み又は削除の指令を実行するか否かを、当該指令対象領域のフォーマットが情報の書き込み及び削除の予定されたものであるかどうかという特性に基づき制御手段が判断する。
したがって、このような特性に基づいて判断すれば、指令対象領域に対する当該指令実行の是非を確実に判断することができ、予定されていない指令の場合はこれを拒否することにより、情報の書き込みや削除が予定されていない領域に記憶されている情報の改竄・削除を未然に防止し、当該情報を簡易かつ確実に保護することができる。
また、上記課題を解決するためになされた請求項5に記載のプログラムは、USBストレージデバイスの制御装置に実行させるプログラムであって、ホストからの指令にそれぞれ呼応して、(1)OSに認識させるべき当該USBストレージデバイスに存在するユーザ使用可能な少なくとも2以上の領域の数を通知するステップと、(2)前記それぞれの領域のフォーマットを通知するステップと、(3)前記ホストから前記領域に対するデータの書き込み又は削除の指令があったとき、当該指令対象となる領域が情報の書き込み及び削除の予定されたフォーマットで構成されているか否かに基づいて当該指令を実行するか否かを判断するステップと、を有する。
このようなプログラムをUSBストレージデバイスの制御装置に実行させれば、そのUSBストレージデバイスを、外部装置に対し、情報の読み出し書き込み及び削除のいずれも可能なデバイス、又は、情報の読み出しのみ可能なデバイスのいずれかの種類のデバイスを計2以上有したデバイスとして認識させることができる。したがって、情報の読み出し、書き込み、及び削除のいずれも可能な一つのデバイスとしてしか認識させることができない場合に比べ、はるかに利便性が増す。さらに、少なくとも一つの領域が情報の読み出しのみ可能なデバイスとしてホストに認識された場合は、当該領域に対する情報の書き込み又は削除指令は実行不可である旨の判断がなされ、当該領域に記憶されている情報は改竄されたり、消去されることを未然に防止することができる。 Further, the USB storage device according to
Therefore, if it is determined based on such characteristics, it is possible to reliably determine whether or not to execute the command for the command target area, and in the case of an unscheduled command, by rejecting the command, It is possible to prevent tampering / deletion of information stored in an area that is not scheduled to be deleted, and to protect the information easily and reliably.
The program according to claim 5 for solving the above-described problem is a program to be executed by a control device of a USB storage device, and (1) recognized by the OS in response to a command from the host. Notifying the number of at least two or more user-usable areas existing in the USB storage device to be performed, (2) notifying the format of each area, and (3) from the host to the area When there is an instruction to write or delete data, it is determined whether or not to execute the instruction based on whether or not the target area is configured in a format in which information is scheduled to be written and deleted Steps.
If such a program is executed by the control device of the USB storage device, the USB storage device is a device that can both read and write information to and delete from the external device, or a device that can only read information. Any of these types of devices can be recognized as a device having a total of two or more. Therefore, it is much more convenient than a case where it can be recognized as only one device that can read, write, and delete information. Furthermore, when at least one area is recognized by the host as a device that can only read information, it is determined that an instruction to write or delete information in the area cannot be executed and is stored in the area. Information can be prevented from being tampered with or deleted.
ところで、OSに認識させるべき当該USBストレージデバイスの領域の数を、論理ユニット数として通知するようになっているとよい(請求項6)。このようになっていれば、ホストのUSBマスストレージクラスドライバは、USBストレージデバイスを2つの論理ユニットを有する一つのSCSIデバイスとして認識する。Incidentally, the number of areas of the USB storage device to be recognized by the OS may be notified as the number of logical units. In this case, the USB mass storage class driver of the host recognizes the USB storage device as one SCSI device having two logical units.
また、データの読み出し、書き込み又は削除を、その対象領域の論理ブロック番号と物理ブロック番号の対応関係に基づき実行するステップをさらに有するようにプログラムを構成してもよい(請求項7)。
このようになっていれば、ホストから指定されたブロック番号を論理ブロック番号としてその論理ブロック番号に該当する物理ブロック番号によって特定されたブロックから情報を読み出し、あるいは、書き込み又は削除することができ、USBストレージデバイスの記憶手段をフラッシュメモリで構成する場合において、確実に情報を読み出したり、書き込み或いは削除を実行することができる。
Further, the program may be configured to further include a step of executing reading, writing, or deletion of data based on the correspondence relationship between the logical block number and the physical block number of the target area (claim 7).
If this is the case, the block number specified by the host can be used as the logical block number, and information can be read from, written to, or deleted from the block specified by the physical block number corresponding to the logical block number, In the case where the storage unit of the USB storage device is configured by a flash memory, information can be reliably read, written, or deleted.
また、当該USBストレージデバイスに存在するユーザ使用可能な領域数として通知する数は2であって、前記フォーマットを通知するステップは、情報の読み出し書き込み及び削除が可能なディスクフォーマットで構成された領域と、情報の読み出しのみ可能なCD−ROM用フォーマットで構成された領域のそれぞれのフォーマットを通知するステップであることを特徴とするプログラムであってもよい(請求項8)。Further, the number to be notified as the number of user-usable areas existing in the USB storage device is 2, and the step of notifying the format includes an area configured in a disk format in which information can be read / written and deleted. A program may be characterized in that it is a step of notifying each format of an area constituted by a CD-ROM format from which information can only be read (claim 8).
このようになっていれば、当該USBストレージデバイスを、ホストに対し、情報の読み出し書き込み及び削除が可能なディスクデバイスと、情報の読み出しのみ可能なCD−ROMデバイスの、2種のデバイスとして認識させることができる。If this is the case, the USB storage device is recognized as two types of devices: a disk device that can read and write information and delete information, and a CD-ROM device that can only read information. be able to.
以下、本発明が適用された実施例について図面を用いて説明する。尚、本発明の実施の形態は、下記の実施例に何ら限定されることはなく、本発明の技術的範囲に属する限り種々の形態を採りうる。 Embodiments to which the present invention is applied will be described below with reference to the drawings. The embodiments of the present invention are not limited to the following examples, and can take various forms as long as they belong to the technical scope of the present invention.
[実施例1]
図1は、実施例1のUSBストレージデバイス17(特許請求の範囲に記載のUSBストレージデバイスに相当する)とホスト11(特許請求の範囲に記載の外部装置に相当する)の概略構成を示すブロック図である。
[Example 1]
FIG. 1 is a block diagram illustrating a schematic configuration of a USB storage device 17 (corresponding to a USB storage device described in claims) and a host 11 (corresponding to an external device described in claims) according to the first embodiment. FIG.
(1)ホスト11
ホスト11は、一般に広く知られたパーソナルコンピュータであり、ソフトウェアとして、オペレーションシステム12、ディスクドライブドライバ13及びUSBマスストレージクラスドライバ14を備え、ハードウェアとしてUSBホストコントローラ15を少なくとも備える。
(1)
The
オペレーションシステム12は、ホスト11を統括的に制御するソフトウェアであり、例えばWindows(登録商標)やMac OS X(登録商標)等ある。ディスクドライブドライバ13は、オペレーションシステム12から受け取った記憶装置へのアクセス指令等をSCSIコマンド変換してUSBマスストレージクラスドライバ14に渡すとともに、USBマスストレージクラスドライバ14から指令等を受け取りオペレーションシステム12に渡す。USBマスストレージクラスドライバ14は、USBホストコントローラ15を制御する。USBホストコントローラ15は、図示しないUSBコネクタを備え、他の装置のUSBコネクタとケーブルによって接続されることによって、USB規格に基づいた通信を行うことができるようになっている。なお、ホスト11は、USB規格に基づいた通信を行うことができる機器であれば、パーソナルコンピュータに限らずPDAや携帯電話等であってもよい。
The
(2)USBストレージデバイス17
USBストレージデバイス17は、USBインターフェース19とコントローラ21とLED23とフラッシュメモリ25とを備える。
(2)
The
(2−1)USBインターフェース19
USBインターフェース19は、特許請求の範囲に記載の通信手段に相当し、USBバス16を介してホスト11と通信を行う機能を担う。USBインターフェース19は、パケット送受信部19aとシリアルパラレル変換部19bとパケット生成分解部19cとUSBバスパワー制御部19dとを備える。パケット送受信部19aは、図示しないUSBコネクタと接続され、USB規格に基づいたパケットを送受信する。シリアルパラレル変換部19bは、シリアルデータとパラレルデータとを相互に変換する。パケット生成分解部19cは、ホスト11と通信を行うためのパケットの生成及びパケットを分解してデータの取り出しを行う。USBバスパワー制御部19dは、ホスト11から供給される電力の管理及びUSBストレージデバイス17の各部位への電力の配分を行う。
(2-1)
The
(2−2)コントローラ21
コントローラ21は、特許請求の範囲に記載の制御手段に相当し、メモリ制御部21aとUSBインターフェース制御部21bとメモリ情報記憶部21cとLED制御部21dとを備える。メモリ制御部21aは、フラッシュメモリ25に対してデータの読み出し、書き込み及び削除を実行する。USBインターフェース制御部21bは、前述したUSBインターフェース19の各部を制御する。メモリ情報記憶部21cは、フラッシュメモリ25の領域に関する情報を記憶する。図2のデータ例を用いてこの情報について説明する。
(2-2)
The
図2に示すように、メモリ情報記憶部21cは、論理ユニット番号31とフォーマット33と書き込み削除可否フラグ35と論理ブロック番号37と物理ブロック番号39とを備える。論理ユニット番号31は論理ユニットを識別するための番号であり、「0」と「1」とが存在する。フォーマット33は、論理ユニット番号31に対応し、その論理ユニットのフォーマットを表す。データ例では、論理ユニット番号「0」は「FAT」フォーマットであり、論理ユニット番号「1」は「ISO9660」フォーマットである。書き込み削除可否フラグ35は、論理ユニット番号31に対応し、その論理ユニットに対して情報の書き込み及び削除の実行可否を表すフラグである。データ例では、論理ユニット番号「0」は「可」であり、論理ユニット番号「1」は「不可」である。論理ブロック番号37は、ホスト11によって指定されるブロック番号であり、論理ユニット毎に定義されている。
As shown in FIG. 2, the memory
このように、フラッシュメモリ25の実ブロック番号である物理ブロック番号39と論理ブロック番号37との対応づけは、メモリ制御部21aによって管理されている。このため、物理ブロック番号39と論理ブロック番号37とは自由に対応付けを行うことができる。また、論理ユニット番号「0」のフォーマットをISO9660にし、論理ユニット番号「1」のフォーマットをFATにしてもよい。また、更に論理ユニットを増やし、ユーザーやアプリケーションによって使い分けられるようになっていてもよい。
As described above, the correspondence between the
(2−3)LED23
図1に戻り、LED23は、フラッシュメモリ25に対して情報の読み出し、書き込み及び削除が実行されている際に点灯する発光体である。フラッシュメモリ25に対して情報の読み出し、書き込み及び削除が実行中であることを利用者に示し、これらの実行中にホスト11からUSBストレージデバイス17が抜かれないようにするためのものである。
(2-3) LED23
Returning to FIG. 1, the
(2−4)フラッシュメモリ25
フラッシュメモリ25は、記憶保持動作が不要な半導体メモリであり、データを記憶することができる。記憶したデータは、メモリ制御部21aによって読み出すことが可能である。また、メモリ制御部21aによって書き込み及び削除をすることもできる。フラッシュメモリ25は、特許請求の範囲に記載の記憶手段に相当する。
(2-4)
The
(a)起動処理
USBストレージデバイス17がホスト11に接続された際に、USBストレージデバイス17のコントローラ21でプログラムに基づいて実行される起動処理について図3のフローチャートを用いて説明する。この起動処理は、USBストレージデバイス17がホスト11に接続されることにより、USBバスパワー制御部19dに電力が供給され、さらにホスト11側でエニュメレーション処理が実行されると開始される。
(A) Activation Process The activation process executed based on the program by the
起動処理を開始すると、ホスト11からの指令に応じて、ディスクリプタと呼ばれるデバイス情報(デフォルトパイプの最大パケットサイズ等)をホスト11に送信する(S110)。
When the activation process is started, device information called a descriptor (such as the maximum packet size of the default pipe) is transmitted to the
次に、ホスト11から指令に応じて、USBストレージデバイス17のアドレスを設定する(S115)。以降、このアドレス宛のフレームのみを当該USBストレージデバイス17は取得する。
Next, the address of the
次に、より詳細なデバイス情報をホスト11に送信する(S120)。このデバイス情報としては、エンドポイントに関する情報、クラス、サブクラス、プロトコル等である。
その結果、ホスト11ではUSBマスストレージクラスドライバ14が起動され、図示しないアプリケーションソフトウェアからディスクドライブドライバ13とUSBマスストレージクラスドライバ14とを介してUSBホストコントローラ15を制御するアクセスパスができる。なお、このディスクドライブドライバ13は、MS−DOS(登録商標)時代から、受け継がれているドライバであるため永年の技術が積み重ねられており、安定的な動作が得られるドライバである。
Next, more detailed device information is transmitted to the host 11 (S120). The device information includes information regarding end points, classes, subclasses, protocols, and the like.
As a result, the USB mass
続いて、USBマスストレージクラスドライバ14が、Get Max Logical Unit Numberコマンドによって論理ユニット番号数を要求するため、USBストレージデバイス17は、メモリ情報記憶部21cから論理ユニット番号数が2であるという情報を読み出して、ホスト11に送信する。そしてさらに、ディスクドライブドライバ13がINQUIRYコマンドを発行するため、USBストレージデバイス17は、メモリ情報記憶部21cから論理ユニットのフォーマットに関する情報を読み出して、ホスト11に送信する。これらの結果ホスト11は、USBストレージデバイス17を、FATフォーマットから構成される論理ユニット番号「0」の領域とISO9660フォーマットから構成される論理ユニット番号「1」の領域とを有するデバイスと認識する。
Subsequently, since the USB mass
ホスト11との通信が確立されると、フラッシュメモリ25を動作可能にし(S125)、起動処理を終了する。
なお、Windows(登録商標)には、記憶媒体挿入時や記憶媒体接続時にその記憶媒体のルートディレクトリに記憶されたautorun.infという名称のファイル内で指定されたアプリケーションソフトウェアを実行する機能を有しているため、フラッシュメモリ25の論理ユニット番号「1」の領域にそのファイルを記憶させておけば、本USBストレージデバイス17がホスト11に装着された際に特定のソフトウェアを自動実行させることができる。
When communication with the
In Windows (registered trademark), autorun.com stored in the root directory of a storage medium when the storage medium is inserted or when the storage medium is connected. Since it has a function of executing the application software designated in the file named “inf”, if the file is stored in the area of the logical unit number “1” of the
このようになっていれば、利用者がホスト11の操作に不慣れであっても本USBストレージデバイス17を装着するだけで特定のアプリケーションソフトウェアが自動実行されるため、例えば販促品として広く一般に配布した場合に販促を担うアプリケーションソフトウェアを確実に実行させることができ、販促効果が高まる。
If this is the case, even if the user is unfamiliar with the operation of the
(b)アクセス処理
ホスト11において動作する種々のソフトウェアが、USBストレージデバイス17に対してデータの書き込み、読み出し、削除の実行指令を送ったときに、USBストレージデバイスのコントローラ21でプログラムに基づいて実行されるアクセス処理について図4のフローチャートを用いて説明する。
(B) Access processing When various software operating in the
まず、S210では、ホスト11から受信した指令の種類によって分岐する。書き込み又は削除の指令であった場合はS215に進み、そうでない場合、すなわち読み出しの指令であった場合はS250に進む。
First, in S210, the process branches depending on the type of command received from the
S215では、書き込み又は削除の指令が論理ユニット番号「1」に対する指令であるか否かによって分岐する。つまり、書き込み及び削除が実行可能な論理ユニットに対するものであるか否かによって分岐する。論理ユニット番号「1」に対するものであればS245に進み、そうでない場合すなわち論理ユニット番号「0」に対する指令であればS220に進む。 In S215, the process branches depending on whether the write or delete command is for the logical unit number “1”. That is, the process branches depending on whether or not the logical unit can be written and deleted. If it is for the logical unit number “1”, the process proceeds to S245. If not, that is, if it is a command for the logical unit number “0”, the process proceeds to S220.
S220では、LED23を点灯させる。続くS225では、ホスト11から指定されたフラッシュメモリ25のブロックにデータを書き込む。またはホスト11から指定されたフラッシュメモリ25のブロックのデータを削除する。なお書き込み又は削除を実行する際は、メモリ情報記憶部21cに記憶されているフラッシュメモリ25の領域に関する情報(図2参照)を用い、ホスト11から指定されたブロック番号を論理ブロック番号37としてその論理ブロック番号37に該当する物理ブロック番号39によって特定されたフラッシュメモリ25のブロックに対してデータの書き込み及び削除を実行する。
In S220, the
続くS230では、LED23を消灯させる。そして、S235ではS225の処理が正常に完了したか否かによって分岐する。正常に完了していればアクセス処理を終了し、正常に完了していなかったらS240に進む。
In subsequent S230, the
S240では、S225の処理が正常に完了しなかった旨をホスト11に通知してアクセス処理を終了する。
一方、S215で、書き込み又は削除の指令が論理ユニット番号「1」に対する指令であると判定された際に進むS245では、許可されていない指令としてホスト11にエラー発生の旨を通知する。
In S240, the
On the other hand, in
また、S210で読み込みの指令であったと判定されて進むS250では、LED23を点灯させ、続くS255ではホスト11から指定されたフラッシュメモリ25のブロックのデータを読み込み、読み込んだデータをホスト11に送る。なお、データを読み込む際は、メモリ情報記憶部21cに記憶されているフラッシュメモリ25の領域に関する情報(図2参照)を用い、ホスト11から指定されたブロック番号を論理ブロック番号37としてその論理ブロック番号37に該当する物理ブロック番号39によって特定されたフラッシュメモリ25のブロックからデータを読み込む。
In S250, which is determined to have been a read command in S210, the
続くS260では、LED23を消灯させる。そして、S265ではS255の処理が正常に完了したか否かによって分岐する。正常に完了していればアクセス処理を終了し、正常に完了していなかったらS270に進む。
In subsequent S260, the
S270では、S255の処理が正常に完了しなかった旨をホスト11に通知して通知してアクセス処理を終了する。
このようにアクセス処理が実行されるため、例えば販促品としてUSBストレージデバイス17を利用した場合、誤って消去されると問題のあるソフトウェアを論理ユニット番号「1」の領域に記憶させておけば、そのソフトウェアが消去されることを防止できる。
In S270, the
Since the access process is executed in this way, for example, when the
また、USBストレージデバイス17は、USBマスストレージクラスドライバ14のSCSIコマンドセットに定義された論理ユニット番号に対応する領域として論理ユニット番号「0」の領域と論理ユニット番号「1」の領域とをUSBマスストレージクラスドライバに認識させるための情報をメモリ情報記憶部21cに保持している。このため、USBマスストレージクラスドライバ14は、USBストレージデバイス17を2つの論理ユニットを有する一つのSCSIデバイスとして認識する。
Further, the
したがって、このような領域の管理を、USB規格におけるエンドポイントの数を増やすことによって実現する場合と比べてコントローラ21を単純化することができる。なぜならエンドポイントの数分だけコントローラ21はFIFOバッファを備えることが必要だからである。また、USBストレージデバイス17に、2種類のUSBストレージデバイスとそれらを接続したハブとを内蔵させて実現させる方法と比べても、USBストレージデバイス17は構成が単純である。また、USBストレージデバイス17であれば、ホスト11が行うUSBマスストレージクラスドライバ14のイニシャライズ処理も1度で済むため、ホスト11がUSBストレージデバイス17を認識するまでの時間も短い。また、ホスト11のオペレーションシステムは、2領域を有する1つのSCSIデバイスとしてUSBストレージデバイス17を管理できるため、複数のデバイスを管理する場合と比べて様々な処理を単純化して実行でき、動作も安定する。
Therefore, the
(c)初期化処理
初期化処理は、USBストレージデバイス17の製造者や販売者等(以下「特定ユーザー」と言う)が初期化を行うことを目的として、ホスト11上で初期化ソフトウェアを実行して後述する書き込みボタン66を押下した際に、USBストレージデバイス17のコントローラ21でプログラムに基づいて実行される。
(C) Initialization process The initialization process is performed by the initialization software executed on the
初期化処理を説明する前に、ホスト11で実行される初期化ソフトウェアについて図5の操作画面51を用いて説明する。操作画面51では、特定ユーザーがUSBストレージデバイス17に関する様々なパラメータを設定することができる。
Before describing the initialization process, initialization software executed on the
テキストボックス53は、論理ユニット番号「0」に対応するものであり、情報の読み出し、書き込み及び削除を実行することができる領域(ディスク領域)の容量を入力するためのテキストボックスである。テキストボックス55は、論理ユニット番号「1」に対応するものであり、情報の読み出しのみを実行することができる領域(CD−ROM領域)の容量を入力するためのテキストボックスである。このテキストボックス53とテキストボックス55とに入力した値の合計が全容量である16以下になるよう特定ユーザーは入力しなければならない。
The
テキストボックス57は、USB規格で定義されたシリアル番号を入力するためのテキストボックスである。ホスト11はこのシリアル番号によってデバイスを見分けることができる。
The
テキストボックス59は、固有IDを入力するためのテキストボックスである。固有IDというのは、USB規格で定義されたものではなく、本実施例のUSBストレージデバイス17に独自のものであり、この固有IDをライセンスキーとすることで、不正コピーなどによるコンテンツの不正起動を防止に用いたり、固有IDを認証キーや会員向けサービスに利用したりすることもできる。固有IDは、16バイト以上612バイト以下の16進データである。なお、テキストボックス59の右端の上下ボタンが押下されることにより、表示しきれないデータを順次表示するように操作画面51は構成されている。
The
テキストボックス61は、CD−ROM領域に書き込むファイル名を入力するためのテキストボックスである。複数ファイルのファイル名を入力できるようになっていてもよい。
The
参照ボタン63は、テキストボックス61へのファイル名入力を支援するダイアログボックスを表示させるためのボタンである。表示されたダイアログボックスの中から特定ユーザーがファイル名を選択すると、その選択したファイルがテキストボックス61に表示されるようになっている。
The
フォーマット選択ボタン64は、CDイメージデータのフォーマットを選択するためのダイアログボックスを表示させるためのボタンである。表示されたダイアログボックスの中からISO9660又はHFSの何れかの形式が選択できるようになっている。
The
書き込みボタン66は、特定ユーザーが操作画面51で設定した設定情報をUSBストレージデバイス17に書き込む処理を開始させるためのボタンである。
キャンセルボタン67は、特定ユーザーが操作画面51で設定した設定情報をUSBストレージデバイス17に書き込むことをせずに操作画面51を閉じるためのボタンである。
The
The cancel
次に、USBストレージデバイス17のコントローラ21で実行される初期化処理について図6のフローチャートを用いて説明する。実行が開始されるとまず、ホスト11から送られる設定情報を受信する(S310)。この設定情報は、上述した操作画面51で設定された設定情報である。そして次に、受信した設定情報に基づいてメモリ情報記憶部21cのデータを更新する(S315)。
Next, initialization processing executed by the
続いて、受信した設定情報に基づいてフラッシュメモリ25の論理ユニット番号「1」の領域にデータを書き込み(S320)、初期化処理は終了する。本来は、論理ユニット番号「1」の領域にはデータを書き込むことはできないが、初期化処理の際のみ、書き込むことができるように構成されている。なお、書き込むデータは、上述したテキストボックス61で設定したファイルである(図5参照)。
Subsequently, based on the received setting information, data is written in the area of the logical unit number “1” of the flash memory 25 (S320), and the initialization process ends. Originally, data cannot be written in the area of the logical unit number “1”, but it can be written only in the initialization process. The data to be written is a file set in the
このような初期化処理によって特定ユーザーの事情に合わせて、領域の容量の変更や、シリアル番号の設定や、固有IDの設定や、CD−ROM領域に予めファイルを記憶させておくことが実行できる。 By such initialization processing, it is possible to change the capacity of the area, set the serial number, set the unique ID, or store the file in the CD-ROM area in advance according to the circumstances of the specific user. .
[実施例2]
図7は、実施例2のインクジェットプリンタ71(特許請求の範囲に記載のUSBストレージデバイスに相当する)とホスト11(特許請求の範囲に記載の外部装置に相当する)との概略構成を示すブロック図である。なお、実施例1と同様の部分は、実施例1を説明する際に使用した符号と同一の符号を付すことにより説明を省略する。
[Example 2]
FIG. 7 is a block diagram illustrating a schematic configuration of the inkjet printer 71 (corresponding to the USB storage device described in claims) and the host 11 (corresponding to the external device described in claims) according to the second embodiment. FIG. The same parts as those in the first embodiment are denoted by the same reference numerals as those used in the description of the first embodiment, and the description thereof is omitted.
インクジェットプリンタ71は、USBインターフェース19とコントローラ21とフラッシュメモリ25とMPU73と印字ヘッド75とアクチュエータ77とを備える。このうちUSBインターフェース19が特許請求の範囲に記載の通信手段に相当し、コントローラ21が制御手段に相当し、フラッシュメモリ25が記憶手段に相当する。
The
MPU73は、USBインターフェース19及びコントローラ21を介してホスト11と通信を行うと共に、図示しない各種センサからの情報に基づいて印字ヘッド75及びアクチュエータ77の動作を制御する。なお、実施例2では、コントローラ21とMPU73とは別構成としているが、それらの機能の一部及び全部をMPU73に移行させてもよい。
The
印字ヘッド75は、インクノズルを有し、インクノズルから所定の色のインクを吐出させ、印刷用紙にインクを定着させることができる。
アクチュエータ77は、図示しないフィードローラモータ、紙送りローラモータ、印字ヘッド駆動モータ等から構成され、これらを適切に動作させることにより、印刷用紙の位置及び印字ヘッド75の位置関係を調整して所望の印刷結果が得られるようにする。
The
The
フラッシュメモリ25の論理ユニット番号「1」の領域(CD−ROM領域)には、印刷するデータをホスト11で扱うためのアプリケーションソフトウェアが予め格納されており、ホスト11はそのようなアプリケーションソフトウェアを有していなくても、フラッシュメモリ25のCD−ROM領域から読み込むことにより使用することができる。
Application software for handling data to be printed by the
これに対して、従来は、印刷機能を提供するドライバプログラム、印刷管理ソフトウェアなどをホスト11が有していない場合には、別途CD−ROMやフレキシブルディスクなどの媒体から取り込むか、インターネット等からダウンロードしてインストールする必要があった。そのため、CD−ROMやフレキシブルディスクのドライブを通常有していないPDAなどは、それらの媒体から取り込むことは困難であった。このような点で、実施例2のインクジェットプリンタ71は、従来と比べて優位な効果を有する。
On the other hand, conventionally, when the
また、アプリケーションソフトウェアはフラッシュメモリ25のCD−ROM領域に格納されるため、エンドユーザーによって誤って消去されてしまうおそれがない。また、ディスク領域(論理ユニット番号「0」の領域)には、印刷するための印刷データを格納することにより、ディスク領域を介して複数のホスト11で印刷データを共有することも可能になる。このような点でも、実施例2のインクジェットプリンタ71は、従来と比べて優位な効果を有する。
In addition, since the application software is stored in the CD-ROM area of the
また、実施例1で述べたような固有IDを実装してその固有IDを認証キーとして用いるようにすれば、特定のユーザーのみがインクジェットプリンタ71を使用できるようにしたり、特定のユーザーのみがCD−ROM領域に格納されたアプリケーションソフトウェア利用できるようにしたりすることができる。
Further, if the unique ID as described in the first embodiment is implemented and the unique ID is used as an authentication key, only a specific user can use the
[実施例3]
図8は、実施例3のスキャナ81(特許請求の範囲に記載のUSBストレージデバイスに相当する)とホスト11(特許請求の範囲に記載の外部装置に相当する)との概略構成を示すブロック図である。なお、実施例1と同様の部分は、実施例1を説明する際に使用した符号と同一の符号を付すことにより説明を省略する。
[Example 3]
FIG. 8 is a block diagram showing a schematic configuration of the scanner 81 (corresponding to the USB storage device described in the claims) and the host 11 (corresponding to the external device described in the claims) of the third embodiment. It is. The same parts as those in the first embodiment are denoted by the same reference numerals as those used in the description of the first embodiment, and the description thereof is omitted.
スキャナ81は、USBインターフェース19とコントローラ21とフラッシュメモリ25とMPU83とCCD85とアクチュエータ97とを備える。このうちUSBインターフェース19が特許請求の範囲に記載の通信手段に相当し、コントローラ21が制御手段に相当し、フラッシュメモリ25が記憶手段に相当する。
The
MPU83は、USBインターフェース19及びコントローラ21を介してホスト11と通信を行うと共に、CCD85及びアクチュエータ87の動作を制御する。なお、実施例3では、コントローラ21とMPU83とは別構成としているが、それらの機能の一部及び全部をMPU83に分担させてもよい。
The
CCD85は、光情報を電気信号に変換する半導体素子であり、任意の対象物を画像データとして読み取って出力することができる。
アクチュエータ87は、図示しない光源駆動モータやCCD駆動モータ等から構成され、これらが適切に動作することにより、任意の対象物の所望の範囲の画像データを得ることができる。
The
The
フラッシュメモリ25の論理ユニット番号「1」の領域(CD−ROM領域)には、するデータをホスト11で扱うためのアプリケーションソフトウェアが予め格納されており、ホスト11はそのようなアプリケーションソフトウェアを有していなくても、フラッシュメモリ25のCD−ROM領域から読み込むことにより使用することができる。
In the area (CD-ROM area) of the logical unit number “1” of the
これに対して、従来は、スキャナ81の制御機能を提供するドライバプログラム、画像データの加工ソフトウェアなどをホスト11が有していない場合には、別途CD−ROMやフレキシブルディスクなどの媒体から取り込むか、インターネット等からダウンロードしてインストールする必要があった。そのため、CD−ROMやフレキシブルディスクのドライブを通常有していないPDAなどにおいては、それらの媒体から取り込むのは困難であった。このような点で、実施例3のスキャナ81は、従来と比べて優位な効果を有する。
On the other hand, conventionally, if the
また、アプリケーションソフトウェアはフラッシュメモリ25のCD−ROM領域に格納されるため、エンドユーザーによって誤って消去されてしまうおそれがないとともに、ディスク領域(論理ユニット番号「0」の領域)には、画像データを格納することにより、ディスク領域を介して複数のホスト11で画像データを共有することも可能になる。このような点でも、実施例3のスキャナ81は、従来と比べて優位な効果を有する。
In addition, since the application software is stored in the CD-ROM area of the
以上、実施例を3つ説明したが、他の実施例について説明する。
実施例2のインクジェットプリンタ71や実施例3のスキャナ81の技術思想をUSBインターフェースを有する他の装置に適用してもよい。具体的には、デジタルカメラ、携帯端末、スピーカー、キーボード、マウス、モデム装置、ハンドセット、カードアダプタ等に適用してもよい。これらに適用しても上記実施例と同様の効果が得られる。
Although three embodiments have been described above, other embodiments will be described.
The technical ideas of the
また、実施例1の操作画面51(図5参照)は、CDイメージデータのフォーマットとしてISO9660又はHFSの何れかの形式が選択できるようになっていたが、さらに、Audio CD、CD TEXT、Mixed CD、Enhanced CD、ビデオCD、ブータブルCD等フォーマットが選択できるようになっていてもよい。また、記録方式も、ディスクアットワンス、トラックアットワンス、セッションアットワンス、パケットライトなどの方式が指定できるようになっていてもよい。 Further, the operation screen 51 (see FIG. 5) of the first embodiment can select either ISO9660 or HFS as the format of the CD image data, but further, Audio CD, CD TEXT, Mixed CD. , Enhanced CD, video CD, bootable CD, and other formats can be selected. As the recording method, a method such as disk-at-once, track-at-once, session-at-once, or packet write may be designated.
11…ホスト、12…オペレーションシステム、13…ディスクドライブドライバ、14…USBマスストレージクラスドライバ、15…USBホストコントローラ、16…USBバス、17…USBストレージデバイス、19a…USBインターフェース、19b…シリアルパラレル変換部、19c…パケット生成分解部、19d…USBバスパワー制御部、21…コントローラ、21a…メモリ制御部、21b…USBインターフェース制御部、21c…メモリ情報記憶部、21d…LED制御部、23…LED、25…フラッシュメモリ、71…インクジェットプリンタ、73…MPU、75…印字ヘッド、77…アクチュエータ、81…スキャナ、83…MPU、85…CCD、87…アクチュエータ。
DESCRIPTION OF
Claims (8)
当該USBストレージデバイスが接続されて用いられる外部装置のUSBマスストレージクラスドライバに、前記USBストレージデバイスに設けられたフラッシュメモリからなる記憶手段のN個(Nは3以上の整数)の領域を、情報の読み出し書き込み及び削除のいずれも可能なデバイスと情報の読み出しのみ可能なデバイスとをそれぞれ少なくとも一つ含み、前記いずれかの種類のデバイスとして認識させるための情報を記憶し、
前記外部装置のディスクドライブドライバによるコマンドの発行に応答して、前記外部装置のUSBマスストレージクラスドライバへ前記認識させるための情報を供給して、前記USBマスストレージクラスドライバに、前記記憶手段の領域を、情報の読み出し書き込み及び削除のいずれも可能なデバイスと情報の読み出しのみ可能なデバイスとをそれぞれ少なくとも一つ含み、前記いずれかの種類のデバイスとして認識させるとともに、
前記外部装置から受け取ったコマンドが、情報の読み出し指令であるときは、それが、前記外部装置に情報の読み出し書き込み及び削除が可能なデバイスとして認識させた領域若しくは前記外部装置に情報の読み出しのみ可能なデバイスとして認識させた領域のいずれに対する指令であってもこれを実行し、
情報の書き込み又は削除のいずれかの指令あるときは、それが、前記外部装置に情報の読み出し書き込み及び削除が可能なデバイスとして認識させた領域に対する指令であった場合はこれを実行し、情報の読み出しのみ可能なデバイスとして認識させた領域に対する指令であった場合は、当該指令を拒否することを特徴とする制御装置。 A control device mounted on a USB storage device,
In the USB mass storage class driver of an external device connected to the USB storage device, information on N areas (N is an integer of 3 or more) of storage means including a flash memory provided in the USB storage device is stored. Including at least one device that can both read and write and delete information and a device that can only read information, and stores information for recognizing the device as any one of the types,
In response to issuance of a command by the disk drive driver of the external device, the USB mass storage class driver of the external device is supplied with information for the recognition, and the USB mass storage class driver is provided with an area of the storage means. Including at least one device that can both read and write information and a device that can only read information, and recognize the device as any one of the above types,
When the command received from the external device is an information read command, it is only possible to read the information to an area that the external device recognizes as a device that can read and write and delete information, or to the external device Execute this regardless of the command for any of the areas recognized as a valid device,
When there is a command for writing or deleting information, if it is a command for an area that the external device recognizes as a device capable of reading, writing, and deleting information, execute this command. A control device characterized by rejecting a command for a region recognized as a device that can only be read .
フラッシュメモリの記憶領域を、N個(Nは3以上の整数)の領域に分けて定義してなる記憶手段と、
前記外部装置とUSBプロトコルに基づいた通信を行う通信手段と、
前記通信手段を介して、前記記憶手段に対して情報の読み出し、書き込み及び削除を実行する制御手段と、
を備え、
前記制御手段は、
(1)前記フラッシュメモリからなる記憶手段の前記N個の領域を、情報の読み出し書き込み及び削除のいずれも可能なデバイスと情報の読み出しのみ可能なデバイスとをそれぞれ少なくとも一つ含み、前記いずれかの種類のデバイスとして前記外部装置のUSBマスストレージクラスドライバに認識させるための情報を記憶し、
(2)前記ディスクドライブドライバによるコマンドの発行に応答して、前記USBマスストレージクラスドライバへ前記認識させるための情報を供給して、前記記憶手段の領域を、情報の読み出し書き込み及び削除のいずれも可能なデバイスと情報の読み出しのみ可能なデバイスとをそれぞれ少なくとも一つ含み、前記いずれかの種類のデバイスとして前記USBマスストレージクラスドライバに認識させるとともに、
(3)前記外部装置から受け取ったコマンドが、情報の読み出し指令であるときは、
それが、前記外部装置に情報の読み出し書き込み及び削除が可能なデバイスとして認識させた領域若しくは前記外部装置に情報の読み出しのみ可能なデバイスとして認識させた領域のいずれに対するものであってもこれを実行し、前記外部装置から受け取ったコマンドが、情報の書き込み又は削除のいずれかでの指令あるときは、それが、前記外部装置に情報の読み出し書き込み及び削除が可能なデバイスとして認識させた領域に対する指令であった場合はこれを実行し、情報の読み出しのみ可能なデバイスとして認識させた領域に対するものであった場合は、当該指令を拒否すること、
を特徴とするUSBストレージデバイス。 A USB storage device which is controlled by a predetermined operation system and used by being connected to an external device having at least a disk drive driver, a USB mass storage class driver and a USB host controller,
A storage means defined by dividing the storage area of the flash memory into N areas (N is an integer of 3 or more);
A communication means for performing communication based on the USB protocol with the external device;
Control means for reading, writing, and deleting information from the storage means via the communication means;
With
The control means includes
(1) The N areas of the storage unit including the flash memory each include at least one device that can both read and write information and a device that can only read information. Stores information for recognizing the USB mass storage class driver of the external device as a type of device,
(2) In response to the issuance of a command by the disk drive driver, the USB mass storage class driver is supplied with information for recognition, and the storage unit area is read / written and deleted. Including at least one device capable of reading only information and a device capable of only reading information, and causing the USB mass storage class driver to recognize the device as any of the types of devices,
(3) When the command received from the external device is an information read command,
Execute this regardless of whether the external device recognizes the device as a device that can read / write / delete information or the external device recognizes the device as a device that can only read information If the command received from the external device is a command for either writing or deleting information, the command for the area recognized by the external device as a device capable of reading, writing, and deleting information. If it is for an area that is recognized as a device that can only read information, reject the command.
USB storage device characterized by
ホストからの指令にそれぞれ呼応して、In response to commands from the host,
(1)OSに認識させるべき当該USBストレージデバイスに存在するユーザ使用可能な少なくとも2以上の領域の数を通知するステップと、(1) notifying the number of at least two or more user-usable areas existing in the USB storage device to be recognized by the OS;
(2)前記それぞれの領域のフォーマットを通知するステップと、(2) notifying the format of each area;
(3)前記ホストから前記領域に対するデータの書き込み又は削除の指令があったとき、当該指令対象となる領域が情報の書き込み及び削除の予定されたフォーマットで構成されているか否かに基づいて当該指令を実行するか否かを判断するステップと、(3) When there is a command for writing or deleting data to or from the area from the host, the command is based on whether or not the target area is configured in a format in which information is written or deleted. Determining whether or not to execute
を有することを特徴とするプログラム。The program characterized by having.
前記フォーマットを通知するステップは、情報の読み出し書き込み及び削除が可能なディスクフォーマットで構成された領域と、情報の読み出しのみ可能なCD−ROM用フォーマットで構成された領域のそれぞれのフォーマットを通知するステップであることを特徴とする請求項5乃至請求項7何れかに記載のプログラム。The step of notifying the format is a step of notifying the format of each of an area constituted by a disc format from which information can be read / written and deleted and an area constituted by a CD-ROM format from which information can only be read. The program according to claim 5, wherein the program is a program.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005285284A JP3914949B2 (en) | 2002-05-29 | 2005-09-29 | USB storage device, control device thereof, and program for causing control device to execute |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002155684 | 2002-05-29 | ||
JP2005285284A JP3914949B2 (en) | 2002-05-29 | 2005-09-29 | USB storage device, control device thereof, and program for causing control device to execute |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005092148A Division JP2005243046A (en) | 2002-05-29 | 2005-03-28 | Usb storage device and program |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2006079634A JP2006079634A (en) | 2006-03-23 |
JP2006079634A5 JP2006079634A5 (en) | 2006-09-14 |
JP3914949B2 true JP3914949B2 (en) | 2007-05-16 |
Family
ID=36158972
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005285284A Expired - Lifetime JP3914949B2 (en) | 2002-05-29 | 2005-09-29 | USB storage device, control device thereof, and program for causing control device to execute |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3914949B2 (en) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007265300A (en) * | 2006-03-29 | 2007-10-11 | Brother Ind Ltd | Communication system and peripheral equipment to be used for the same |
JP2007265305A (en) * | 2006-03-29 | 2007-10-11 | Brother Ind Ltd | Communication system and peripheral equipment to be used for the same |
JP2007265304A (en) * | 2006-03-29 | 2007-10-11 | Brother Ind Ltd | Communication system and peripheral device used therefor |
JP4333765B2 (en) | 2007-03-28 | 2009-09-16 | ブラザー工業株式会社 | Device control system |
JP2008245046A (en) | 2007-03-28 | 2008-10-09 | Brother Ind Ltd | Multifunction peripheral, and device control system |
JP5033095B2 (en) * | 2008-09-29 | 2012-09-26 | 株式会社日立ソリューションズ | Storage management intermediary server and control method thereof |
JP5617943B2 (en) * | 2013-02-06 | 2014-11-05 | ブラザー工業株式会社 | Image reading device |
-
2005
- 2005-09-29 JP JP2005285284A patent/JP3914949B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP2006079634A (en) | 2006-03-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100954933B1 (en) | Usb storage device and control device | |
JP3513147B2 (en) | USB storage device and its control device | |
US7068386B2 (en) | Image processing system, image data processing method, and storage medium | |
JP3914949B2 (en) | USB storage device, control device thereof, and program for causing control device to execute | |
US20040078514A1 (en) | Apparatus and method for simply launching computer process to perform task | |
US7797398B2 (en) | Communication system, and peripheral device having trigger generating device and computer program product that monitors whether a trigger has been generated | |
JP2010044579A (en) | Peripheral device, program, and driver installation system | |
WO2005086002A1 (en) | Method for data processing device exchanging data with computer | |
JP2006079634A5 (en) | ||
JP3699717B2 (en) | USB storage device and control device thereof | |
EP1205845B1 (en) | Microcomputer and method of controlling the same | |
JP2004171536A5 (en) | ||
JP2005266934A (en) | Usb storage device and controller therefor | |
JP2008500617A (en) | Method for managing plug-in or removal of a memory card with respect to a card reader and apparatus using the method | |
JP4551643B2 (en) | USB printer and USB scanner | |
JP4622770B2 (en) | COMMUNICATION SYSTEM, INFORMATION PROCESSING DEVICE, PERIPHERAL DEVICE, AND COMMUNICATION METHOD | |
JP4242798B2 (en) | USB storage device and control device thereof | |
JP4087788B2 (en) | Information processing apparatus, control method therefor, and program | |
JP2006293638A (en) | Information processor and peripheral equipment | |
JP6214369B2 (en) | Information processing apparatus, program, and control method | |
JP2005243046A5 (en) | ||
JP4276219B2 (en) | USB storage device internal state setting method | |
JP2005243046A (en) | Usb storage device and program | |
US20060039688A1 (en) | Record reproduction apparatus, record reproduction method, record reproduction program, storage medium, and information storage medium | |
US8675223B2 (en) | Image forming device, image forming system and computer readable medium for installing related software to another device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060421 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060731 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20060802 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20060811 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060919 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20061114 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20070123 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070205 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 3914949 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100209 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130209 Year of fee payment: 6 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130209 Year of fee payment: 6 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130209 Year of fee payment: 6 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130209 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140209 Year of fee payment: 7 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |