专利名称:通用串行总线存储装置和控制装置的制作方法
技术领域:
本发明涉及一种利用半导体存储器存储信息的USB存储装置。
背景技术:
现在,可连接和可分离的USB存储装置,已经如未审查的日本专利申请号2000-259275中所描述的那样而广泛公知,其中每个都包含安装的快闪存储器和按照USB(通用串行总线)标准的接口,并通过将其USB连接器部分集成到主体中而具有紧凑的配置。这样的具有紧凑配置的USB存储装置能以低成本制造,并用于公司的销售宣传产品,其中写入了商业及其它软件。
大多数这种USB存储装置都设置了物理开关,例如写保护开关,以防止软件被错误删除。通过改变开关,提供了在其中可以读、写和删除的状态以及其中只能读的状态之间的切换。在一些情况下,诸如ROM的固有地不可写的存储器用于完全防止写入和删除。
但是,当ROM等用在USB存储装置中以防止用户写入信息时,USB存储装置只有很有限的应用,由此减少了实用性。在其它情况下,不可能在执行软件期间写入临时文件或数据,这限制了软件本身的功能。当采用如上所述的写保护开关时,写保护开关有时因为某个用户未知的物理原因而关闭,并由此可能执行无意的写入或删除。
为了解决这些问题,发明了如在未审查的日本专利申请号10-289159中描述的技术。根据该技术,通过虚拟地提供不可写区域和不可读区域,使便携类型的可写介质具有混合配置。
在将上述技术应用于USB存储装置时,实际工作方法可以如下所述。
在一种工作方法中,USB存储装置具有两个内部USB存储装置单元(删除和写入都限制在一个USB存储装置单元中)和一个连接这些USB存储装置单元的集线器。但是存在一个问题,这样的USB存储装置具有复杂的配置,因为它实际上具有两个USB存储装置单元。还有一个问题就是当该USB存储装置连接到主机上时,连接处理花费时间,因为主机首先将USB存储装置识别为HUB(集线器)装置,然后初始化与内部提供的USB存储装置单元相同数量的大容量存储器类驱动程序。
在另一种工作方法中,USB标准中的端点数量增加。但在这种情况下,要求USB存储装置中设置的控制器具有与该端点相同数量的FIFO缓冲器。尽管由于采用虚拟端点的技术而存在无需多个FIFO缓冲器的更新的控制器,所有这些控制器还是具有复杂的配置,由此增加了制造成本。
已经提出来要解决上述技术问题的本发明的目的在于,提供一种USB存储装置,其具有尽可能简单结构,并完成防止所存储的软件被错误删除的功能。
发明内容
上述和其它目的是通过一种可以连接到由给定操作系统控制、并至少具有盘驱动器驱动程序、USB大容量存储器类驱动程序和USB主机控制器的外部设备的USB存储装置实现的。该USB存储装置包括存储器,包括快闪存储器并具有至少一个可以由用户使用的区域;通信装置,按照USB协议执行与外部设备的通信;以及控制装置,通过通信装置向存储器并从存储器读、写和删除信息。
所述控制装置存储该至少一个可以由用户使用的区域的格式信息,该区域对应于所述外部设备中提供的USB大容量存储器类驱动程序的SCSI命令集中定义的逻辑单元号,以使USB大容量存储器驱动程序将该区域识别为只能从中读取信息的逻辑单元;根据来自盘驱动器驱动程序的命令向USB大容量存储器类驱动程序提供格式信息,以使USB大容量存储器类驱动程序将USB存储装置识别为具有只能从中读取信息的逻辑单元的SCSI装置;以及根据从所述外部设备接收的命令和格式信息仅执行从该逻辑单元读取信息。
因此,当按照本发明的USB存储装置用作销售宣传产品,不应当被错误删除的软件存储在包括快闪存储器的存储器中时,可以防止删除或修改该软件,因为即使从外部设备(例如个人计算机)接收到删除命令,控制装置也不会执行该命令。
存储器可以包括具有定义为第一区域和第二区域的存储区域的快闪存储器。在这种情况下,控制装置分别存储第一和第二区域的格式信息,该第一和第二区域对应于所述外部设备中提供的USB大容量类驱动器的SCSI命令集中定义的逻辑单元号,以使USB大容量存储器类驱动程序将第一区域识别为可以向其和从中读、写和删除信息的盘单元,将第二区域识别为只能从中读取信息的单元;根据来自盘驱动器驱动程序的命令向USB大容量存储器类驱动程序提供格式信息,以使USB大容量存储器类驱动程序将USB存储装置识别为具有两个逻辑单元的SCSI装置,该两个逻辑单元由可以向其和从中读、写和删除信息的盘单元以及只能从中读取信息的单元组成;以及根据从所述外部设备接收的命令和所述格式信息,向所述第一区域和从中读、写和删除信息,并从所述第二区域仅读取信息。
因此,当按照本发明的USB存储装置用作销售宣传产品,且不应当被错误删除的软件存储在第二区域时,可以防止删除或修改该软件,因为即使从外部设备(例如个人计算机)接收到删除命令,控制装置也不会执行该命令。
另一方面,可以使用第一区域,因为用户可以任意向该区域写入信息而无需打开和关闭保护开关等等。
第一区域可以例如是FAT(文件分配表)格式,第二区域可以例如是ISO9660格式。这使得外部设备的操作系统可以识别各自格式,并在允许发出向第一区域和从中读、写和删除的命令同时,限制向第二区域和从中写或删除的命令。此外,即使外部设备由于某种原因发出了向第二区域和从中写或删除的命令,本发明的USB存储装置的控制装置也不会执行该命令,由此存储在第二区域的软件得到了可靠的保护。
按照本发明的USB存储装置具有格式信息,以使USB大容量存储器类驱动程序将第一区域和第二区域识别为对应于USB大容量存储器类驱动程序的SCSI命令集中定义的逻辑单元号的区域。因此,USB大容量存储器类驱动程序将本发明的USB存储装置识别为具有两个逻辑单元的SCSI装置,即可以向其和从中读、写和删除信息的盘单元以及只能从中读取信息的单元。
在这种情况下,与通过按照USB标准增加端点数量、且控制器需要具有与该端点相同数量的FIFO缓冲器来执行区域管理的情况相比,可以简化USB存储装置的控制器。
同样,与通过提供两种USB存储装置单元和一个在USB存储装置内连接这些单元的集线器来执行区域管理的情况相比,本发明的USB存储装置的结构更为简单。此外,当采用本发明的USB存储装置时,外部设备的操作系统只需要执行一次初始化USB大容量存储器类驱动程序的处理,由此外部设备的操作系统可以在短时间内识别USB存储装置。
此外,主机的操作系统将USB存储装置控制为具有两个逻辑单元的SCSI装置,即可以向其和从中读、写和删除信息的盘单元以及只能从中读取信息的单元,因此与控制多个装置的情况相比,能以简化方式执行各种处理并达到稳定的操作。
在本发明的另一方面,提供了一种安装在USB存储装置中的控制单元,包括记忆信息存储器部分,存储用于控制包括提供给USB存储装置的快闪存储器的存储装置的至少一个区域的格式信息,以使USB大容量存储器类驱动程序将该区域识别为只能从中读取信息的单元,所述至少一个区域对应于USB存储装置所连接的外部设备中提供的USB大容量存储器类驱动程序的SCSI命令集中定义的逻辑单元号。
控制单元根据从外部设备的盘驱动器驱动程序发出的命令,向该外部设备中的USB大容量存储器类驱动程序提供格式信息,以使USB大容量存储器类驱动程序将其中安装了所述控制单元的USB存储装置识别为具有只能从中读取信息的逻辑单元的SCSI装置;以及根据从所述外部设备接收命令和所述格式信息,仅从该逻辑单元读取信息。
记忆信息存储器部分可以存储控制包括提供给USB存储装置的快闪存储器的存储装置的第一区域和第二区域的格式信息,每个区域对应于USB存储装置所连接的外部设备中提供的USB大容量存储器类驱动程序的SCSI命令集中定义的逻辑单元号,以使USB大容量存储器类驱动程序将第一区域识别为可以向其和从中读、写和删除信息的盘单元,将第二区域识别为只能从中读取信息的单元。
本发明的优选实施例在下面参照附图进行说明,其中图1是表示按照第一实施例的USB存储装置的结构框图;图2是表示存储在记忆信息存储器中的数据示例的表;
图3是说明引导处理的流程图;图4是说明访问处理的流程图;图5是说明初始化软件的操作屏的示例屏幕;图6是说明初始化处理的流程图;图7是表示按照第二实施例的喷墨打印机结构的框图;和图8是表示按照第三实施例的扫描仪结构的框图。
具体实施例方式
第一实施例图1是表示按照第一实施例的USB存储装置17和主机11的示意性结构的框图。
(1)主机11作为外部设备的主机11广泛公知为个人计算机,其具有至少一个操作系统12、作为软件的盘驱动器驱动程序13和USB大容量存储类驱动程序14,以及作为硬件的USB主机控制器15。
操作系统12是全面控制主机11的软件,例如WindowsTM和Mac OSXTM。盘驱动器驱动程序13对从操作系统12接收的、对存储装置的访问命令等等执行SCSI命令转换,并向USB大容量存储类驱动程序14发送转换的命令,同时从USB大容量存储类驱动程序14接收命令等等,并将其发送到操作系统12。USB大容量存储类驱动程序14控制USB主机控制器15。USB主机控制器15具有未示出的USB连接器并通过电缆与另一个装置的USB连接器连接,以便能按照USB标准进行通信。主机11可以不是个人计算机,而是PDA或蜂窝式便携电话,只要它能按照USB标准进行通信。
(2)USB存储装置17USB存储装置17具有USB接口19、控制器21、LED23和快闪存储器25。
(2-1)USB接口19对应于通信装置的USB接口19通过USB总线16执行与主机11通信的功能。USB接口19具有分组传输/接收单元19a、串行/并行转换器19b、分组产生/分解单元19c和USB总线电源控制单元19d。分组传输/接收单元19a与未示出的USB连接器连接,并按照USB标准传输/接收分组。串行/并行转换器19b将串行数据转换为并行数据或反之。分组产生/分解单元19c产生分组以便与主机11通信,并分解分组以重新获得数据。USB总线电源控制单元19d控制主机提供的电能,并将该电能分送到USB存储装置17的各区域。
(2-2)控制器21对应于控制装置的控制器21具有存储控制单元21a、USB接口控制单元21b、记忆信息存储器21c和LED控制单元21d。存储控制单元21a向快闪存储器25和从快闪存储器25读、写和删除数据。USB接口控制单元21b控制上述USB接口19的各区域。控制器21包括程序存储器(未示出),其中程序存储器包含用于操作存储控制单元21a、USB接口控制单元21b和LED控制单元21d的程序。记忆信息存储器21c存储有关快闪存储器25的区域的信息。该信息对应于下面所述的“使USB大容量存储器类驱动程序将第一和第二区域识别为对应于在USB大容量存储器类驱动程序的SCSI命令集中定义的逻辑单元号的区域”。该信息将在下面参照图2中的数据例解释。
如图2所示,记忆信息存储器21c包括用于逻辑单元号31、格式33、写入/删除允许/不允许标识35、逻辑块号37和物理块号39的区域。是用于识别逻辑单元的号码的逻辑单元号31包括“0”和“1”。格式33对应于逻辑单元号31并显示各逻辑单元的格式。在本数据例中,逻辑单元号“0”表示“FAT”格式,而逻辑单元号“1”表示“ISO9660”格式。对应于逻辑单元号31,写入/删除允许/不允许标识35表示是否允许向逻辑单元写入/删除信息。在本数据例中,对于逻辑单元号“0”是“允许”,而对于逻辑单元号“1”是“不允许”。逻辑块号37是主机11分配的块号,定义在每个逻辑单元中。
物理块号39是快闪存储器25的实际块号,其和逻辑块号37之间的对应关系由存储控制单元21a控制。因此,物理块号39和逻辑块号37之间的对应关系是可以任意更改的。另外,可以将ISO9660作为逻辑单元号“0”的格式,FAT用于逻辑单元号“1”。此外,逻辑单元号可以进一步增加,以允许根据用户或应用程序有选择地使用逻辑单元。
(2-3)LED23回到图1,LED23是光发射器,在向/从快闪存储器25执行读、写或删除时点亮。这是向用户告知正向/从快闪存储器25执行读、写或删除,由此防止USB存储装置17在执行这些操作时被拔出主机。
(2-4)快闪存储器25快闪存储器25是存储数据而无需存储器保持操作的半导体存储器。所存储的数据可以由存储控制单元21a读出。写入和删除也可以由存储控制单元21a执行。快闪存储器25对应于存储装置。
(a)引导处理下面参照图3中的流程图描述当USB存储装置17连接到主机11时由USB存储装置17的控制器21根据一程序执行的引导处理。当USB存储装置17连接到主机11时开始引导处理,并由此向USB总线电源控制单元19d提供电能,然后在主机11中进行列举处理。
一旦引导处理开始,根据主机11的命令将称为描述符的装置信息(例如缺省管线的最大分组大小)发送到主机11(S110)。
然后,根据主机11的命令设置USB存储装置17的地址(S115)。此后,USB存储装置17只获得指向该设置地址的帧。
接着,更详细的装置信息被发送到主机11(S120)。装置信息例如包括有关端点、类、子类和协议的信息。
然后在主机11中启动USB大容量存储器类驱动程序14,并通过盘驱动器驱动程序13和USB大容量存储器类驱动程序14建立用于从未示出的应用软件控制USB主机控制器15的访问路径。盘驱动器驱动程序13是一种从MS-DOSTM时代延续下来的驱动程序并基于长时间积累的技术,因此可以提供稳定的操作。
接着,当USB大容量存储器类驱动程序14通过Get Max Logical UnitNumber(获得最大逻辑单元号)的命令请求逻辑单元号时,USB存储装置17从记忆信息存储器21c读出逻辑单元号是“2”的信息,并将该信息发送到主机。
当盘驱动器驱动程序13发出Inquiry(查询)命令时,USB存储装置17从记忆信息存储器21c读取有关各逻辑单元格式的信息,并将该信息发送到主机11。
由此,主机11将USB存储装置17识别为具有逻辑单元号指定为“0”和FAT格式的区域,以及逻辑单元号指定为“1”和ISO9660格式的区域的装置。
一旦在USB存储装置17和主机11之间建立起通信,快闪存储器25就投入运行(S125),并终止引导处理。
当插入或连接存储介质时,WindowsTM具有执行在名为“autorun.inf”的文件中指定的应用软件的功能,该文件存储在存储介质的根目录中。因此,在该文件存储在逻辑单元号指定为“1”的快闪存储器25区域中的情况下,当USB存储装置17连接到主机11时可以自动执行指定的软件。
如上所述,即使用户不习惯操作主机11,也可以通过简单地将USB存储装置17连接到主机11来自动执行指定的应用软件。因此,当USB存储装置17作为销售宣传产品向公众发布时,将可靠地执行用于销售宣传的应用软件,这会增加销售宣传效果。
(b)访问处理下面参照图4的流程图描述当操作在主机11中的各种类型的软件发出向USB存储装置17执行写、读或删除数据的命令时,USB存储装置17的控制器21按照一程序执行的访问处理。
首先在S210中,根据从主机11接收的命令种类分流访问处理。具体地说,当它是写入或删除的命令时,该处理进行到S215,否则,也就是当它是读取命令时,该处理进行到S250。
在S215,根据写入或删除的命令是否是逻辑单元号为“1”的命令来分流访问处理。也就是说,根据该命令是否针对向/从其不可能写入或删除的逻辑单元来分流访问处理。当针对逻辑单元号“1”时,该处理进行到S245,当针对逻辑单元号“0”时,该处理进行到S220。
在S220中,接通LED23。
在S225,将数据写入主机11指定的快闪存储器25的块。或者从主机11指定的快闪存储器25的块中删除数据。使用存储在记忆信息存储器21c中的有关快闪存储器25的区域的信息(参见图2),当逻辑块号37由主机11指定时,执行向/从由对应于逻辑块号37的物理块号39指定的快闪存储器25的块写入或删除数据。
在S230,关闭LED23。
在S235,根据S225中的处理是否已正常完成来分流访问处理。当S225中的处理已正常完成时,访问处理结束,而当没有完成时,访问处理进行到S240。
在S240,向主机11告知在S225中的处理还没有正常完成的事实,并终止访问处理。
另一方面,在当确定写入或删除命令是针对逻辑单元号为“1”的命令时访问处理进行到的S245中,向主机11告知发生了错误,即接收了不可接受的命令的事实。
在当确定已接收了读取命令时进行到的S250中,接通LED23。
在S255,读取主机11指定的快闪存储器25的块中的数据,以及将读取的数据发送到主机11。通过使用存储在记忆信息存储器21c中的有关快闪存储器25的区域的信息(参见图2),当块号37由主机11指定时,执行从由对应于逻辑块号37的物理块号39指定的快闪存储器25的块中读取数据。
在S260,关闭LED23。
然后在S265,根据S255中的处理是否已正常完成来分流访问处理。当S255中的处理已正常完成时,访问处理结束,而当没有完成时,访问处理进行到S270。
在S270,向主机11告知在S255中的处理还没有正常完成的事实,并终止访问处理。
由于访问处理如上所述地执行,当USB存储装置17用作销售宣传产品时,例如可以通过将软件存储在逻辑单元号为“1”的区域中来防止错误删除不应当被删除的软件。
USB存储装置17在记忆信息存储器21c中具有信息,使USB大容量存储器类驱动程序14将逻辑单元号为“0”的区域和逻辑单元号为“1”的区域,识别为对应于在USB大容量存储器类驱动程序14的SCSI命令集中指定的逻辑单元号的区域。因此,USB大容量存储器类驱动程序14将USB存储装置17识别为具有两个逻辑单元的SCSI装置。
在这种情况下,与通过按照USB标准增加端点数量、并要求控制器21具有与端点相同数量的FIFO缓冲器来执行区域管理相比,可以简化控制器21。同样,与通过提供两种USB存储装置单元和一个在USB存储装置中连接这些单元的集线器来执行区域管理的情况相比,USB存储装置17的结构更为简单。当采用本发明的USB存储装置17时,只需要主机11执行一次初始化USB大容量存储器类驱动程序14的处理,由此主机11可以在短时间内识别USB存储装置17。此外,主机11中的操作系统将USB存储装置17控制为具有两个区域的SCSI装置,因此与控制多个装置的情况相比能以简化方式执行各种处理,并能达到稳定的操作。
(c)初始化处理当厂商、分销商等等(下面称为“特定用户”)在主机11上执行初始化软件并按下后面所述的写入按钮66以执行初始化时,USB存储装置17的控制器21按照一程序执行初始化处理。
在解释该初始化处理之前,参照图5中的操作屏幕51描述将在主机11上执行的初始化软件。在该操作屏幕51上,特定用户可以设置有关USB存储装置17的各种参数。
文本框53用于输入对应于逻辑单元号“0”、并允许读、写和删除信息的区域(盘区域)的容量。文本框55用于输入对应于逻辑单元号“1”、并只允许读取信息的区域(CD-ROM区域)的容量。特定用户必须向文本框53和文本框55输入各自的值,使得这些值的总和小于或等于16,即总容量。
文本框57用于输入按照USB标准定义的序列号。主机11可以通过该序列号识别装置。
文本框59用于输入指定ID。该指定ID不是按照USB标准定义的,而是特定于本实施例的USB存储装置17。该指定ID可以用作许可密钥,以防止利用未经授权的复制件等等未经授权地启动内容,也可以用于鉴别密钥或成员服务。指定ID是16个字节或更多和612字节或更少的十六进制数据。操作屏幕51设计为在文本框59的右端按下向上和向下按钮时,不能一次性显示的数据连续显示在文本框59中。
文本框61用于输入将被写入CD-ROM区域的文件的文件名。文本框61可以设计为用于向其中输入多个文件的文件名。
基准按钮63是用于显示对话框以支持在文本框61中输入文件名的按钮。当特定用户从所显示的对话框选择文件名时,选择的文件名显示在文本框61中。
格式选择按钮64是用于显示选择CD图像数据格式的对话框的按钮。可以从显示的对话框中选择ISO9660格式或HFS格式。
写入按钮66是用于启动在操作屏幕51上向USB存储装置17写入由特定用户设置的设置信息的处理的按钮。
取消按钮67是用于关闭操作屏幕51而不在操作屏幕51上向USB存储装置17写入由特定用户设置的设置信息的按钮。
下面参照图6的流程图描述由USB存储装置17的控制器21执行的初始化处理。当执行开始时,首先接收如上所述在操作屏幕51上设置并由主机11发送的设置信息(S310)。然后,根据所接收的设置信息更新在记忆信息存储器21c中的数据(S315)。
接着,根据所接收的设置信息将该数据写入快闪存储器25中逻辑单元号为“1”的区域(S320),并终止初始化处理。尽管原先不允许写入逻辑单元号为“1”的区域,但允许只在初始化处理中写入。待写入的数据是文本框61中指定的文件(参见图5)。
根据上述初始化处理,可以根据特定用户的条件改变区域的容量、设置序列号、设置指定ID和预先在CD-ROM区域中存储文件。
第二实施例图7是表示按照第二实施例的喷墨打印机71和主机11的示意性结构的框图。喷墨打印机71对应于USB存储装置,主机11对应于外部设备。与第一实施例中相同的部分或单元指定了相同的附图标记,以避免重复解释。
喷墨打印机71具有USB接口19、控制器21、快闪存储器25、MPU73、打印头75和传动器77。USB接口19对应于通信装置,控制器21对应于控制装置,快闪存储器25对应于存储装置。MPU73、打印头75和传动器77对应于打印装置。
MPU73通过USB接口19和控制器21与主机11通信,并根据来自未示出的多个传感器的信息控制打印头75和传动器77的操作。尽管在第二实施例中分别配置控制器21和MPU73,控制器21的全部或部分功能可以转移到MPU73上。
具有墨水喷嘴的打印头75通过墨水喷嘴喷射出给定颜色的墨水,以将墨水固定在打印纸上。
包含进给滚轴电机、纸张传送滚轴电机和打印头驱动电机(其中一个也未示出)的传动器77,通过使这些电机正确操作来调整打印纸张和打印头75之间的位置关系,从而获得期望的打印结果。
由于主机11处理待打印数据的应用软件已预先包含在快闪存储器25中逻辑号为“1”的区域(CD-ROM区域)中,主机11可以通过从快闪存储器25的CD-ROM区域读取来使用该应用软件,而无需在自身包含相同的软件。
相反,一般用于提供打印功能的驱动程序、打印管理软件等等,如果没有包含在主机11中,则需要从诸如CD-ROM或软盘的介质安装,或通过因特网下载并安装。但是,很难从介质上将这样的程序或软件安装到例如一般没有用于CD-ROM或软盘的驱动器的PDA中。考虑到这一点,第二实施例的喷墨打印机71提供了超越传统装置的优点。
同样,由于应用软件包含在快闪存储器25的CD-ROM中,因此不会被终端用户错误地删除。在磁盘区域(逻辑单元号为“0”的区域)包含执行打印的打印数据可以使多个主机11通过盘区域共享打印数据。就这点来说,第二实施例的喷墨打印机71进一步提供了超越传统装置的优点。
此外,当设置了第一实施例中描述的指定ID并用作鉴别密钥时,只有一个特定用户可以使用喷墨打印机71或者只有一个特定用户可以使用包含在CD-ROM区域中的应用软件。
第三实施例图8是表示按照第三实施例的扫描仪81和主机11的示意性结构的框图。扫描仪81对应于USB存储装置,主机11对应于外部设备。与第一实施例中相同的部分或单元配以相同的附图标记,以避免重复解释。
扫描仪81具有USB接口19、控制器21、快闪存储器25、MPU83、CCD85和传动器87。USB接口19对应于通信装置,控制器21对应于控制装置,快闪存储器25对应于存储装置。MPU83、CCD85和传动器87对应于扫描装置。
MPU83通过USB接口19和控制器21与主机11通信,并控制CCD85和传动器87的操作。尽管在第三实施例中分别配置控制器21和MPU83,它们的全部或部分功能可以由MPU83执行。
CCD85是用于将光信息转换为电信号的半导体元件,其将给定的对象读取为图像数据并输出该图像数据。
包含光源驱动电机和CCD驱动电机(其中一个也未示出)的传动器87,通过使这些电机正确操作来获得在给定对象的期望区域的图像数据。
由于主机11处理待扫描数据的应用软件已预先包含在快闪存储器25中逻辑号为“1”的区域(CD-ROM区域)中,主机11可以通过从快闪存储器25的CD-ROM区域读取来使用该应用软件,而无需在自身包含相同的软件。
相反,一般用于提供控制扫描仪81功能的驱动程序、图像数据处理软件等等,如果没有包含在主机11中,则需要从诸如CD-ROM或软盘的介质安装,或通过因特网下载并安装。但是,很难从介质上将这样的程序或软件安装到例如一般没有用于CD-ROM或软盘的驱动器的PDA中。考虑到这一点,第三实施例的扫描仪81进一步提供了超越传统装置的优点。
同样,由于应用软件包含在快闪存储器25的CD-ROM中,因此不会被终端用户错误地删除。此外,在磁盘区域(逻辑单元号为“0”的区域)包含图像数据可以使多个主机11通过盘区域共享图像数据。就这点来说,第三实施例的扫描仪81提供了超越传统装置的优点。
除了上述三个实施例外,下面描述其它实施例。
第二实施例的喷墨打印机71或第三实施例的扫描仪81的技术思想可以应用到其它具有USB接口的装置,例如数码相机、便携式终端、扬声器、键盘、鼠标、调制解调器、手持装置和卡适配器。在这种情况下,可以获得与上述实施例相同的优点。
尽管第一实施例中的操作屏幕51(参见图5)设计为从ISO9660格式和HFS格式中选择CD图像数据格式,操作屏幕51也可以设计为从音频CD、CD文本、混合CD、增强CD、视频CD、可引导CD的其它格式中选择格式。存储方法可以从各种方法中指定,例如一次性光盘(Disk-at-Once)、一次性轨道(Track-at-Once)、一次性会话(Session-at-Once)和分组写入。
权利要求
1.一种可以连接到外部设备的USB存储装置,该外部设备由给定操作系统控制、并至少具有盘驱动器驱动程序、USB大容量存储器类驱动程序和USB主机控制器,所述USB存储装置包括存储器,包括快闪存储器并具有至少一个可以由用户使用的区域;通信装置,按照USB协议执行与外部设备的通信;以及控制装置,通过通信装置向存储器并从存储器读、写和删除信息,其中,所述控制装置存储该至少一个可以由用户使用的区域的格式信息,该区域对应于所述外部设备中提供的USB大容量存储器类驱动程序的SCSI命令集中定义的逻辑单元号,以使USB大容量存储器驱动程序将该区域识别为只能从中读取信息的逻辑单元;其中,所述控制装置根据来自盘驱动器驱动程序的命令向USB大容量存储器类驱动程序提供所述格式信息,以使USB大容量存储器类驱动程序将USB存储装置识别为具有只能从中读取信息的逻辑单元的SCSI装置;以及其中,所述控制装置响应于从所述外部设备发送到所述逻辑单元的命令,在读、写和删除信息中仅执行读信息。
2.如权利要求1所述的USB存储装置,其中所述存储器包括具有定义为至少第一区域和第二区域的存储区域的快闪存储器;其中,所述控制装置分别存储第一和第二区域的格式信息,该第一区域和第二区域对应于所述外部设备中提供的USB大容量存储器类驱动程序的SCSI命令集中定义的逻辑单元号,以使USB大容量存储器类驱动程序将第一区域识别为可以向其和从中读、写和删除信息的盘单元,将第二区域识别为只能从中读取信息的单元;其中,所述控制装置根据来自盘驱动器驱动程序的命令向USB大容量存储器类驱动程序提供格式信息,以使USB大容量存储器类驱动程序将USB存储装置识别为具有两个逻辑单元的SCSI装置,该两个逻辑单元由可以向其和从中读、写和删除信息的盘单元以及只能从中读取信息的单元组成;以及其中,所述控制单元根据从所述外部设备接收的命令和所述格式信息,向所述第一区域和从中读、写和删除信息,并从所述第二区域仅读取信息。
3.如权利要求1所述的USB存储装置,其中,所述控制装置控制每个所述逻辑单元中的逻辑块号与所述存储器的物理块号之间的对应关系,连同所述格式信息一起存储该对应关系,并根据存储的对应关系读、写和删除信息。
4.如权利要求2所述的USB存储装置,其中,应用程序预先存储在所述第二区域中,所述USB存储装置设计为在USB存储装置连接到所述外部设备时自动执行该应用程序。
5.如权利要求1所述的USB存储装置,其中,所述只能从中读取信息的单元包括CD-ROM逻辑单元。
6.一种安装在USB存储装置中的控制单元,包括记忆信息存储器部分,存储用于控制包括提供给USB存储装置的快闪存储器的存储装置的至少一个区域的格式信息,以使USB大容量存储器类驱动程序将该区域识别为只能从中读取信息的单元,所述至少一个单元对应于所述USB存储装置所连接的外部设备中提供的USB大容量存储器类驱动程序的SCSI命令集中定义的逻辑单元号,其中,所述控制单元根据从外部设备的盘驱动器驱动程序发出的命令,向该外部设备中的USB大容量存储器类驱动程序提供格式信息,以使USB大容量存储器类驱动程序将其中安装了所述控制单元的USB存储装置识别为具有只能从中读取信息的逻辑单元的SCSI装置;以及其中,所述控制单元响应于从所述外部设备发送到所述逻辑单元的命令,在读、写和删除信息中仅执行读信息。
7.如权利要求6所述的控制单元,其中,所述记忆信息存储器部分存储控制包括提供给USB存储装置的快闪存储器的存储装置的第一区域和第二区域的格式信息,每个区域对应于USB存储装置所连接的外部设备中提供的USB大容量存储器类驱动程序的SCSI命令集中定义的逻辑单元号,以使USB大容量存储器类驱动程序将第一区域识别为可以向其和从中读、写和删除信息的盘单元,将第二区域识别为只能从中读取信息的单元;其中,所述控制单元根据从外部设备的盘驱动器驱动程序发出的命令,向该外部设备中的USB大容量存储器类驱动程序提供格式信息,以使USB大容量存储器类驱动程序将其中安装了所述控制单元的USB存储装置识别为具有两个逻辑单元的SCSI装置,该两个逻辑单元包括可以向其和从中读、写和删除信息的盘单元以及只能从中读取信息的单元;以及其中,所述控制单元根据从所述外部设备接收的命令和所述格式信息,向所述第一区域和从中读、写和删除信息,并从所述第二区域仅读取信息。
8.如权利要求6所述的控制单元,其中,所述控制单元控制每个所述逻辑单元中的逻辑块号与所述存储装置的物理块号之间的对应关系,连同所述格式信息一起存储该对应关系,并根据存储的对应关系读、写和删除信息。
9.如权利要求6所述的控制单元,其中,所述只能从中读取信息的单元包括CD-ROM逻辑单元。
全文摘要
一种以尽可能简单的结构实现防止存储的软件被错误删除功能的USB存储装置。在该USB存储装置中,存储区域分为其中允许执行读、写和删除的区域以及其中只允许执行读取的区域。在该USB存储装置中,存储了使USB大容量存储器类驱动程序将这些区域识别为分别对应于主机具有的USB大容量存储器类驱动程序的SCSI命令集中定义的逻辑单元号的区域的信息。该信息包括逻辑单元号、格式、允许/不允许写/删除标识、逻辑块号和物理块号。由此,USB大容量存储器类驱动程序将USB存储装置识别为具有两个逻辑单元的SCSI装置。
文档编号G06F21/79GK1542630SQ20041003847
公开日2004年11月3日 申请日期2004年4月28日 优先权日2003年4月30日
发明者大石雄司, 仲村公利, 利, 德永惠美, 美, 宫崎薰, 平, 伊藤海平, 树, 藤田直树 申请人:日商. 原科技股份有限公司, 日商.萩原科技股份有限公司