CN101277353B - 具有多个功能的多功能外围设备 - Google Patents

具有多个功能的多功能外围设备 Download PDF

Info

Publication number
CN101277353B
CN101277353B CN200810087465XA CN200810087465A CN101277353B CN 101277353 B CN101277353 B CN 101277353B CN 200810087465X A CN200810087465X A CN 200810087465XA CN 200810087465 A CN200810087465 A CN 200810087465A CN 101277353 B CN101277353 B CN 101277353B
Authority
CN
China
Prior art keywords
scsi
data
function
computer
printer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN200810087465XA
Other languages
English (en)
Other versions
CN101277353A (zh
Inventor
宇野文敏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Brother Industries Ltd
Original Assignee
Brother Industries 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 Brother Industries Ltd filed Critical Brother Industries Ltd
Publication of CN101277353A publication Critical patent/CN101277353A/zh
Application granted granted Critical
Publication of CN101277353B publication Critical patent/CN101277353B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4247Bus transfer protocol, e.g. handshake; Synchronisation on a daisy chain bus
    • G06F13/426Bus transfer protocol, e.g. handshake; Synchronisation on a daisy chain bus using an embedded synchronisation, e.g. Firewire bus, Fibre Channel bus, SSA bus

Abstract

一种多功能设备,其具有选自打印机功能、扫描仪功能、传真功能以及数据存储功能之中的多个功能并且能够经由通用串行总线(USB)接口而被连接到计算机。所述多功能设备包括:设备数据输出单元,当与计算机建立连接时,所述设备数据输出单元输出强制计算机中的OS将所述多功能设备识别为具有多个USB兼容逻辑单元编号(LUN)的USB存储类设备的信息;以及控制单元,当从计算机发送输出数据时,所述控制单元基于该输出数据中所包括的LUN而确定该输出数据是用于控制所述多个功能中的哪一个,并且基于该输出数据控制所确定的功能。

Description

具有多个功能的多功能外围设备
对相关申请的交叉引用
本申请要求于2007年3月28日提交的日本专利申请No.2007-84772的优先权。该优先权申请的全部内容通过引用而被结合于此。
技术领域
本发明涉及一种多功能外围设备和一种设备控制系统。
背景技术
能够经由USB(通用串行总线)接口连接到计算机等的多功能外围设备已被商业化生产。本领域公知的这种多功能外围设备的构造包括用于向多个功能传送数据的端点。
然而,随着功能数目增加,端点的数目也增加,结果硬件构造昂贵,从而增加了多功能外围设备的制造成本。因此,该构造对于提供低成本多功能外围设备存在困难。
为了解决该问题,日本未审定专利申请公开No.2001-222503和No.2005-175936已经提出了用于减少提供于多功能外围设备中的端点数目的技术。例如,在日本未审定专利申请公开No.2001-222503中的技术使得主设备通过仿真从具有一个功能的设备断开并且连接到具有另一功能的设备的设备而能够经由相同端点选择性地接入(access)多个功能。
在日本未审定专利申请公开No.2005-175936中描述的技术减少了用于通过使用独立于数据传送端点设置的控制端点来执行数据传送而传送数据的端点的数目。
然而,利用在日本未审定专利申请公开No.2001-222503中公开的技术,每次使用多功能外围设备上的一个功能时,需要在主机侧切换设备驱动(禁用未在使用的驱动并且装载和启用将要使用的驱动)。因此,需要大量时间用于切换设备驱动,并且不能同时使用两个或者更多个功能。
进一步,使用在日本未审定专利申请公开No.2001-222503中所公开的技术,当在多功能外围设备上操作一个功能时,直至第一功能的操作确实结束才能够切换到不同的功能。因此,难以确定用于控制该切换的适当时刻。
在公开于日本未审定专利申请公开No.2005-175936中的技术中,控制端点被用于数据传送。因此,当大量数据被传送时,该数据传送会干扰控制,使得难以迅速地执行所需控制。
因此,即使上述的传统技术能够减少所需端点的数目,多功能外围设备也比较不容易被用户掌握使用并且可能干扰适当的控制。
发明内容
鉴于前述情况,本发明的目的在于提供一种能够减少端点数目而不降低用户友好性或者不干扰适当控制的多功能外围设备,以及一种用于控制该多功能外围设备的设备控制系统。
为了达到上述以及其它的目的,本发明提供一种多功能设备,其具有选自打印机功能、扫描仪功能、传真功能以及数据存储功能之中的多个功能并且能够经由通用串行总线(USB)接口而被连接到计算机。该多功能设备包括:设备数据输出单元,当与计算机建立连接时,该设备数据输出单元输出强制计算机中的OS将多功能设备识别为具有多个USB兼容逻辑单元编号(LUN)的USB存储类设备的信息;以及控制单元,当从计算机发送输出数据时,该控制单元基于输出数据中所包括的LUN,确定该输出数据是用于控制所述多个功能中的哪一个,并且基于该输出数据控制所确定的功能。
根据另一方面,本发明提供一种设备控制系统,其包括:计算机;以及多功能设备,该多功能设备具有选自打印机功能、扫描仪功能、传真功能以及数据存储功能之中的多个功能。并且能够经由通用串行总线(USB)接口而被连接到计算机。计算机和多功能设备经由通用串行总线(USB)接口相互连接。该多功能设备包括:设备数据输出单元,当与计算机建立连接时,该设备数据输出单元输出强制计算机中的OS将多功能设备识别为具有多个USB兼容逻辑单元编号(LUN)的USB存储类设备的信息;以及设备控制单元,当从计算机发送输出数据时,该设备控制单元基于在输出数据中包括的LUN确定该输出数据是用于控制所述多个功能中的哪一个,并且基于输出数据控制所被确定的功能。所述计算机包括计算机控制单元,该计算机控制单元基于从提供于计算机中的数据处理器发出的用于控制所述多个功能中的一个的命令从计算机向多功能设备传送输出数据,该输出数据包括与作为控制目标的功能对应的LUN。
附图说明
在附图中:
图1是示出根据本发明第一实施例的总体设备控制系统的框图;
图2是示出根据第一实施例的多功能外围设备的内部结构的框图;
图3是示出根据第一实施例的PC的内部结构的框图;
图4是示出当在PC和多功能外围设备之间建立连接时所交换的数据的示例性视图;
图5是示出由PC执行的用于安装多功能外围设备软件的安装进程中的步骤的流程图;
图6是示出当PC通电时在PC上执行的进程中的步骤的流程图;
图7是示出在PC上执行的用于装载静态驱动的进程中的步骤的流程图;
图8是示出在PC上执行的用于装载动态驱动的进程中的步骤的流程图;
图9是示出利用在多功能外围设备上实现的SCSI命令分析任务执行的进程中的步骤的流程图;
图10是示出根据第二实施例的PC的内部结构的框图;
图11是示出由PC执行的用于安装根据第二实施例的多功能外围设备软件的安装进程中的一部分步骤的流程图;
图12是示出由PC执行的用于安装根据第二实施例的多功能外围设备软件的安装进程中的另一剩余部分的步骤的流程图;
图13是示出根据第二实施例在PC上执行的用于装载动态驱动的进程中的步骤的流程图;
具体实施方式
将参考附图描述根据本发明实施例的多功能外围设备,其中相似的部分和构件利用相同的引用数字标注以避免重复说明。
(1)第一实施例
设备控制系统的结构
图1是示出根据本发明第一实施例的设备控制系统的总体结构的框图。
该设备控制系统包括多功能外围设备11和个人计算机(PC)12。多功能外围设备11和PC 12均具有USB接口并且经由USB集线器13被相互连接从而数据可在它们两个之间进行交换。例如,另一USB设备14也被连接到USB集线器13。多功能外围设备11具有CPU 11a。
在该实施例中,多功能外围设备11是具有多个功能的设备,包括打印机功能、扫描仪功能、PC-FAX功能以及读卡器(数据存储功能)。可从PC 12控制这些功能。
多功能外围设备的内部结构
图2是示出多功能外围设备11的内部结构的框图。多功能外围设备11配备有构成USB接口的硬件,包括USB协议引擎101、控制电路103以及读卡器数据I/O电路105。USB协议引擎101根据USB通信协议控制在多功能外围设备11和PC 12之间的数据传送。
该硬件被配置为使得经由端点在PC 12和多功能外围设备11之间传送数据。更具体地,控制电路103通过控制传送端点(以下简称为EP0)向PC 12输入各种控制数据以及从PC 12输出各种控制数据(双向通信)。
在另一方面,读卡器数据I/O电路105通过输入数据端点(以下简称为EP1)向PC 12传送输入数据,并且经由输出数据端点(以下简称为EP2)获取从PC 12传送的输出数据。
作为它的软件功能中的一个,多功能外围设备11还设有SCSI命令分析任务111。当数据从读卡器数据I/O电路105传送到SCSI命令分析任务111时,SCSI命令分析任务111基于在数据中包括的信息,即包括于在该数据中包含的USB兼容数据阵列中的LUN数据,将数据重定向至相应于LUN0-LUN3的四个数据处理系统中的一个。
当数据从相应于LUN0-LUN3的四个数据处理系统中的一个被传送到SCSI命令分析任务111时,SCSI命令分析任务111将该数据传送到读卡器数据I/O电路105。
当重定向数据到相应于LUN0的数据处理系统时,SCSI命令分析任务111向存储器插槽I/O控制任务121传送该数据。存储器插槽I/O控制任务121是用于控制第一存储器插槽131、第二存储器插槽132、第三存储器插槽133以及第四存储器插槽134的软件。
第一到第四存储器插槽131-134中的每个均是接受存储器卡的插槽并且每个插槽接受具有与另一个插槽不同的标准的存储器卡。
在该实施例中,第一到第四存储器插槽131-134被配置为专用。例如,当卡被插入第一存储器插槽131中时,其它插槽不可使用直至该存储器卡被移除。
在另一方面,当将数据转向到相应于LUN1的数据处理系统时,SCSI命令分析任务111向打印机I/O任务151传送数据。传送到打印机I/O任务151的数据被进一步中转到打印机控制任务161以用于控制打印机硬件171。
在另一方面,当将数据转向到相应于LUN2的数据处理系统时,SCSI命令分析任务111向扫描仪I/O任务153传送数据。传送到扫描仪I/O任务153的数据被进一步中转到扫描仪控制任务163以用于控制扫描仪硬件173。
在另一方面,当将数据转向到相应于LUN3的数据处理系统时,SCSI命令分析任务111向PC-FAX I/O任务155传送数据。传送到PC-FAX I/O任务155的数据被进一步中转到调制解调器控制任务165以用于控制调制解调器硬件175。
PC的内部结构
图3是示出PC 12的内部结构的框图。PC 12具有OS的标准功能,例如USB协议堆栈201、USB存储驱动203、SCSI指令处理器211、213、215和217、可移动磁盘驱动221以及文件系统231。
PC 12还具有用于用作打印机端口驱动223、扫描仪驱动225、COM端口驱动227和打印机驱动261的多功能外围设备11的专用软件。
PC 12还包括使用上述功能的应用,例如打印机应用271、扫描仪应用273以及PC-FAX应用275。
在该实施例中,在PC 12上安装的OS是Windows(注册商标)。因此,PC 12还包括作为与Windows绑定的软件的Explorer 277。然而,除了Windows之外的OS可被安装在PC 12上,如果该OS可执行相同功能。
PC 12还包括相应于USB设备14的另一USB设备驱动281。
利用该构造,当PC 12被起动时,USB协议堆栈201开始工作,并且在这之后,对于USB设备是否被连接到PC 12周期地进行监视,如在图4中所示出地。
因为当多功能外围设备11被连接到PC 12时,多功能外围设备11向PC 12返回响应,USB协议堆栈201向多功能外围设备11发出对于设备类型作出响应的请求。当收到该请求时,多功能外围设备11返回指示该多功能外围设备11是USB存储类型设备的响应。因此,PC 12装载USB存储驱动203从而USB存储驱动203在后台运行。
当被启动时,USB存储驱动203向多功能外围设备11发出关于最大LUN的请求。当收到该请求时,多功能外围设备11返回最大LUN(在该示例中为LUN3)。结果,PC 12确定存在相应于LUN0到LUN3的四个逻辑单元并且生成相应于LUN0到LUN3的四个SCSI指令处理器211、213、215和217。SCSI指令处理器211到217用作用于经由USB存储驱动203向多功能外围设备11传送SCSI指令的端口。
当被形成时,SCSI指令处理器211向逻辑单元LUN0发出SCSI指令“询问”。当收到该询问时,多功能外围设备11返回指示该设备类型是可移动磁盘的响应。因此,PC 12装载可移动磁盘驱动221。
以此方式,相应于LUN0的逻辑单元被链接到文件系统231,并且,结果,驱动盘符被分配给到逻辑单元LUN0。在这之后,可通过指定该驱动盘符访问逻辑单元LUN0。多功能外围设备11被配置为使得相应于LUN0的逻辑单元由存储器插槽I/O控制任务121控制。
SCSI指令处理器213-217执行与上述SCSI指令处理器211相似的进程。具体地,SCSI指令处理器213向LUN1逻辑单元发出SCSI指令“询问”。当收到该询问时,多功能外围设备11返回指示设备类型为打印机的响应。相应地,PC 12装载打印机端口驱动223。
当执行实际打印操作时,打印机端口驱动223链接到打印机驱动261,配置用于从PC 12向多功能外围设备11传输打印数据的系统。在多功能外围设备11中用于LUN1的逻辑单元在打印机I/O任务151的控制下操作。
类似地,SCSI指令处理器215向LUN2逻辑单元发出SCSI指令“询问”。当收到该询问时,多功能外围设备11返回指示设备类型为扫描仪的响应。相应地,PC 12装载扫描仪驱动225。在多功能外围设备11中相应于LUN2的逻辑单元在扫描仪I/O任务153的控制下操作。
而且,SCSI指令处理器217向LUN3逻辑单元发出SCSI指令“询问”。当收到该询问时,多功能外围设备11返回指示设备类型为通信设备的响应。相应地,PC 12装载COM端口驱动227。在多功能外围设备11中相应于LUN3的逻辑单元在PC-FAX I/O任务155的控制下操作。
当在以上的进程中装载相应驱动之后,设备驱动处于能够根据SCSI标准经由SCSI指令处理器213-217利用相应逻辑单元执行数据传送的状态中。
这是因为USB标准规定,在具有多个LUN的USB存储类型设备中,根据SCSI兼容方法在逻辑单元之间执行数据传送。换言之,根据USB标准,根据SCSI兼容方法在内部执行用于具有多个LUN的USB存储类型设备的数据传送,并且该数据发送方法与USB标准兼容。
当根据该方法传送数据时,在多功能外围设备11中的每个设备驱动与相应的逻辑单元根据SCSI兼容方法交换数据,而未意识到通信协议是否与USB标准兼容。
在另一方面,虽然PC 12的OS通过使用USB兼容通信协议准备根据SCSI标准传送数据的逻辑通信路径,OS并不知晓通过逻辑通信路径而被发送的数据的类型。因此,任何类型的数据可在由OS准备的通信路径上发送,如果该发送方法是SCSI兼容的,即使当该数据相应于数据存储系统之外的设备时。
在该实施例中,这些通信路径的性质被用于根据SCSI兼容方法分别地向具有打印机功能、扫描仪功能、PC-FAX功能以及读卡器功能的四个逻辑单元的任何一个传送数据。
更具体地,被用于经由SCSI指令处理器213-217(打印机端口驱动223、扫描仪驱动225和COM端口驱动227)在多功能外围设备11之间传送数据的所有的驱动是SCSI兼容驱动。可根据SCSI兼容方法控制多功能外围设备11中的逻辑单元。
利用这种配置,每个驱动可以根据SCSI兼容方法控制相应逻辑单元(打印机功能、扫描仪功能、PC-FAX功能和读卡器功能)的功能,而未获知USB标准。进一步,各种数据可根据SCSI兼容方法在每个驱动和相应逻辑单元之间在内部传送,从而根据USB兼容方法传送数据。
进一步,对于具有多个LUN的USB存储类型设备,多功能外围设备11仅需设有输入端点EP1和输出端点EP2中的各一个从而在每个逻辑单元之间传送数据。即使当根据相同USB标操作时,这种设备也大大地不同于USB复合设备。
即,利用USB复合设备,必须为每个功能提供输入数据端点和输出数据端点中的各一个,由此使得输入和输出端点的总数等于功能数目的两倍。然而,利用上述多功能外围设备11的构造,输入和输出数据端点的总数为“2”,而与功能的数目无关。
在根据以上的进程在PC 12上准备每个驱动之后,PC 12可以使用相应于LUN0逻辑单元的驱动盘符访问在第一到第四存储器插槽131-134的任何一个中安装的存储器卡。
例如,如果用户使用Explorer 277对安装于第一存储器插槽131中的存储器卡中的文件执行操作,则Explorer 277经由文件系统231、可移动磁盘驱动221、SCSI指令处理器211、USB存储驱动203以及USB协议堆栈201向多功能外围设备11传送指令。
多功能外围设备11然后经由USB协议堆栈201、USB存储驱动203、SCSI指令处理器211、可移动磁盘驱动221以及文件系统231向Explorer 277返回响应。
从打印机应用271输出的打印数据经由打印机驱动261被传送到打印机端口驱动223。打印机端口驱动223向SCSI兼容打印机设备发出输出打印数据的指令,由此打印数据经由USB存储驱动203和USB协议堆栈201被传送到SCSI指令处理器213并且顺次被传送到多功能外围设备11。
类似地,从扫描仪应用273输出的扫描仪控制数据等经由扫描仪驱动225、SCSI指令处理器215、USB存储驱动203和USB协议堆栈201被传送到多功能外围设备11。进一步,从PC-FAX应用275输出的传真发送数据,控制数据等经由COM端口驱动227、SCSI指令处理器217、USB存储驱动203和USB协议堆栈201被传送到多功能外围设备11。
在一些情形中,由于以上的各种数据传送,多功能外围设备11向PC 12传送输入数据。例如,如果扫描仪控制数据被传送到多功能外围设备11,则多功能外围设备11启用扫描仪功能,结果该功能从多功能外围设备11传送扫描数据。
当例如扫描数据被传送到PC 12时,数据经由USB协议堆栈201、USB存储驱动203、SCSI指令处理器215和扫描仪驱动225被传送到扫描仪应用273。
打印机功能的状态数据,例如与打印错误等相关的数据,经由USB协议堆栈201、USB存储驱动203、SCSI指令处理器213、打印机端口驱动223和打印机驱动261被传送到打印机应用271。
由PC-FAX功能接收的传真接收数据经由USB协议堆栈201、USB存储驱动203、SCSI指令处理器217和COM端口驱动227被传送到PC-FAX应用275。
多功能外围设备软件的安装进程
下面,将参考图5中的流程图描述用于在PC 12上安装多功能外围设备软件以使得PC 12能够使用具有以上构造的多功能外围设备11的进程。
在示于图5中的进程开始时,在S105中,PC 12运行安装程序。该进程可当用户执行规定操作时执行或者可当CD-ROM或者其它介质被插入CD-ROM驱动等时自动地执行。
在S110中,PC 12在OS中注册用于多功能外围设备的打印机驱动、打印机端口驱动、扫描仪驱动和COM端口驱动。在S110中的OS中记录的每个驱动是由多功能外围设备11的制造商提供的SCSI连接软件。在S110中,PC 12使用OS的功能(在以后描述的即插即用(PnP)安装功能)以在OS中记录安装每个驱动所需的数据。
在S115中,PC 12在PC 12的显示器单元上显示要求用户在PC 12和多功能外围设备11之间建立USB连接的消息。利用该消息也在显示器单元上显示取消按钮。
在显示该消息之后,在S120中,PC 12监视OS的一个功能是否已经开始PnP安装。如果PnP安装没有开始不(S120:NO),在S125中,PC 12确定是否已经按下取消按钮。如果取消按钮未被按下不(S125:NO),则PC 12返回到S120。
虽然以上的进程在S120和S125之间循环,用户能够执行选择取消按钮的操作,例如,利用指针设备点击在显示器单元中显示的取消按钮。如果用户选择取消按钮(S125:YES),在S130中,PC 12从OS删除为多功能外围设备暂时地记录的驱动并且取消安装进程。
然而,如果当PC 12在S120和S125之间循环时PnP安装开始(S120:YES),则已知在PC 12和多功能外围设备11之间已经建立了USB连接。在该情形中,在S135中通过OS的PnP功能,驱动被自动地安装。
因此,在S140中,PC 12将显示器单元上的消息改变为“安装。”在该阶段,用于集成驱动所需的各种数据已被顺序地记录。因此,取消按钮等不被显示在显示器单元中,以防止用户取消该操作。
在S145中,PC 12等待直至PnP安装完成。当该进程尚未完成时(S145:NO),PC 12继续的循环返回到S145。然而,当PnP安装完成时,(S145:YES),在S150中,PC 12将PC-FAX应用使用的COM端口设置为LUN3的COM端口。
具体地,在S150中执行的进程中,PC 12将PC-FAX应用275分配给当安装COM端口驱动227时最近地显示于PC 12上的COM端口。在这之后,PC-FAX应用275将该COM端口识别为将在PC 12中的所有现有COM端口中使用的COM端口。
在S155中,PC 12显示指示安装完成的确认窗口。此时,在PC 12的显示器单元中与确认窗口一起地显示OK按钮,以使得用户能够执行选择OK按钮的操作。当用户选择OK按钮时,PC 12结束安装进程。
当通电时在PC上执行的一个示例进程
下面,参考图6到8描述从PC被打开的时刻直至PC被关闭的时刻在PC上执行的一个示例进程。下面的说明涵盖其中当多功能外围设备11的电源开关已被打开时打开PC 12的电源开关的情形。
当PC 12的电源开关打开时,首先PC 12在图6的S305中装载OS。在S310中,PC 12装载静态驱动。将参考图7更加详细描述S310的该进程。
如图7所示,在S405中,PC 12的OS在参考注册表设置时顺序地装载静态驱动。随后,PC 12在S410中装载打印机驱动,在S415中装载打印机端口驱动,在S420中装载扫描仪驱动。在装载这些驱动之后,图7中的进程结束。
在完成示于图7中的进程之后,图6的S310中的进程结束。下面,在S315中,PC 12装载动态驱动。将参考图8详细描述S315的进程。
具体地,在图8的S505中,PC 12的OS在参考硬件连接状态时顺序地装载动态驱动。在S510中,在USB协议堆栈201已经找到多功能外围设备11之后,PC 12询问多功能外围设备11的设备类型。
如果从多功能外围设备11对于该询问作出指示多功能外围设备11是USB存储设备的响应,则在S515中,PC 12装载USB存储驱动203。
因为通过S515的进程,USB存储驱动203被置于工作状态中,在S520中,USB存储驱动203关于LUN的编号询问多功能外围设备11。更具体地,在S520中,USB存储驱动203发出关于最大LUN的询问。
在该实施例的情形中,多功能外围设备11具有四个逻辑单元。因为一系列的编号被分配给具有为“0”的最小LUN的逻辑单元,多功能外围设备11作为最大LUN返回“3”。
PC 12基于用于最大LUN的响应“3”确定多功能外围设备11具有四个LUN。在该情形中,在S525中,PC 12为SCSI指令进程生成四个端口。通过S525的进程,配置SCSI指令处理器211到217。
在SCSI指令处理器211到217处于工作状态之后,在S530中,SCSI指令处理器211向逻辑单元LUN0发出“询问”。
响应于该询问,在该实施例中,在S535中,PC 12从逻辑单元LUN0接收响应“可移动磁盘”。在该情形中,PC 12装载用于SCSI连接的OS标准可移动磁盘驱动221并且将可移动磁盘驱动221链接到文件系统231,使得驱动盘符被分配给逻辑单元LUN0并且在Explorer 277中显示。可移动磁盘驱动221为SCSI连接设为OS的标准功能并且被用于在PC 12和USB存储设备之间建立USB连接。因此,多功能外围设备11的制造商不必为用户提供可移动磁盘驱动221(用于多功能外围设备11的SCSI驱动)。
在S540中,SCSI指令处理器213向逻辑单元LUN1发出询问。响应于该询问,PC 12从逻辑单元LUN1接收响应“打印机”。在该情形中,在S545中,PC 12装载由制造商提供的用于SCSI连接的打印机端口驱动223。当执行打印操作时,打印机端口驱动223链接到打印机驱动261。因为打印机端口驱动223并非作为PC 12上的OS的标准功能提供,应该由多功能外围设备11的制造商为用户提供打印机端口驱动223(用于多功能外围设备11的SCSI连接驱动)。
在S550中,SCSI指令处理器215向逻辑单元LUN2发出询问。响应于该询问,PC 12从逻辑单元LUN2接收响应“扫描仪”。在S555中,PC 12装载由制造商提供的用于SCSI连接的扫描仪驱动225。因为扫描仪驱动225并非作为PC 12上的OS中的标准提供,应该由多功能外围设备11的制造商为用户提供扫描仪驱动225(用于多功能外围设备11的SCSI连接驱动)。
在S560中,SCSI指令处理器217向逻辑单元LUN3发出询问。响应于该询问,PC 12从逻辑单元LUN3接收响应“通信设备”。在S565中,PC 12装载由制造商提供的用于SCSI连接的COM端口驱动227。因为COM端口驱动227也并非作为PC 12上的OS中的标准提供,应该由多功能外围设备11的制造商为用户提供COM端口驱动227(用于多功能外围设备11的SCSI连接驱动)。
在完成在图8中描述的用于装载动态驱动的进程之后,图6的S315中的进程结束。下面,在S320中,PC 12装载服务进程,并且在S325中等待登录数据。
具体地,PC 12在S325中等待,直至用户已经完成登录操作(S325:未登录进入)。在用户已经完成登录进程之后,(S325:登录进入),在S330中,PC 12启动自动起动程序。在S330中,PC 12的OS在参考开始菜单中的启动中列出的程序时顺序地启动自动起动程序。
在通过启动自动起动程序而完成S330之后,在S355中,PC 12进入正常状态。一旦PC 12已经达到该正常状态,用户能够预期地使用打印机应用271、扫描仪应用273、PC-FAX应用275、Explorer 277等。
如果用户随后执行登录退出或者关闭PC 12的操作(S335:登陆退出或者关闭),在S340中,PC 12首先停止自动地和手动地启动的所有程序,并且在登录退出操作的情形中,(S340:登录退出),返回到S325。
然而,在关闭操作的情形中,(S340:关闭),在S345中,PC 12卸载服务进程,在S350中卸载动态驱动,并且在S355中卸载静态驱动。最后,在S360中,PC 12卸载OS并且将PC 12断电。在S345-S360中的进程以与S305-S320中的进程相反的顺序卸载所有软件。
利用SCSI命令分析任务执行的进程
下面,参考图9描述由设于多功能外围设备11中的SCSI命令分析任务111执行的进程。
在S605中,在该进程开始时,SCSI命令分析任务111确定是否已从PC 12传送SCSI指令。当未从PC 12接收到SCSI指令时(S605:NO),SCSI命令分析任务111重复地循环返回到S605。
当从PC 12传送SCSI指令时,(S605:YES),在S610中,SCSI命令分析任务111确定在SCSI指令中规定的LUN是“0”到“3”中的哪一个。
如果在S610中LUN为“0”(S610:LUN=0),SCSI命令分析任务111将SCSI指令重定向到存储器插槽I/O控制任务121,并且在S615中等待利用存储器插槽I/O控制任务121执行的进程结束。
在S615的进程中,SCSI命令分析任务111将SCSI指令传送到存储器插槽I/O控制任务121。在向存储器插槽I/O控制任务121传送SCSI指令之后,SCSI命令分析任务111等待利用存储器插槽I/O控制任务121执行的进程结束。
在利用存储器插槽I/O控制任务121的进程结束之后,SCSI命令分析任务111从存储器插槽I/O控制任务121接收响应,作为对SCSI指令的响应向PC 12返回该响应,并且结束S615中的进程。在完成S615中的进程之后,SCSI命令分析任务111返回到S605。
这里,对于S615中的进程给出一个具体示例。在该示例中,PC 12向多功能外围设备11传送SCSI指令以请求将数据写入介质(在该实施例中的存储器卡)。在S615中,SCSI命令分析任务111将接收到的SCSI指令传送给存储器插槽I/O控制任务121。
此时,存储器插槽I/O控制任务121执行将目标数据写入介质的进程并且随后作为响应。向SCSI命令分析任务111返回指示写操作结果的数据
在S615的进程期间,SCSI命令分析任务111等待直至存储器插槽I/O控制任务121完成该操作。在从存储器插槽I/O控制任务121接收到响应之后,SCSI命令分析任务111作为对SCSI指令的响应向PC 12返回该响应,并且随后结束S615中的进程。
作为另一示例,PC 12可以向多功能外围设备11传送SCSI指令以请求从介质读出数据。在该情形中,在S615中,SCSI命令分析任务111向存储器插槽I/O控制任务121传送接收到的SCSI指令。
此时,存储器插槽I/O控制任务121执行从介质读出目标数据的进程并且随后作为响应向SCSI命令分析任务111返回指示读操作结果的数据以及读出的数据。
在S615的进程期间,SCSI命令分析任务111等待直至存储器插槽I/O控制任务121完成该操作。在从存储器插槽I/O控制任务121接收到响应之后,SCSI命令分析任务111作为对SCSI指令的响应向PC 12返回该响应,并且随后结束S615中的进程。
如果多功能外围设备11接收到其它各种SCSI指令中的任何一个,在S615中,SCSI命令分析任务111向存储器插槽I/O控制任务121传送该指令并且随后向PC 12传送从存储器插槽I/O控制任务121返回的响应。
因为如上所述,存在可从PC 12传送到存储器插槽I/O控制任务121的各种SCSI指令,利用存储器插槽I/O控制任务121执行的进程的细节也根据SCSI指令广泛地改变。然而,因为利用存储器插槽I/O控制任务121执行的进程与在具有数据存储功能的传统设备上执行的在本领域公知的进程相同,将不在这里包括对这些进程的说明。
在另一方面,如果多功能外围设备11在S610中确定LUN为“1”(S610:LUN=1),则在S620中多功能外围设备11向打印机I/O任务151传送SCSI指令并且等待利用打印机I/O任务151执行的进程结束。
具体地,在S620中,多功能外围设备11从SCSI命令分析任务111向打印机I/O任务151传送从PC 12接收的SCSI指令。在向打印机I/O任务151传送SCSI指令之后,SCSI命令分析任务111等待利用打印机I/O任务151执行的进程结束。
在利用打印机I/O任务151的进程结束之后,SCSI命令分析任务111从打印机I/O任务151接收响应,作为对SCSI指令的响应向PC 12返回该响应,并且结束S620中的进程。在完成S620中的进程之后,SCSI命令分析任务111返回到S605。
这里,对于S620中的进程给出一个具体示例。在该示例中,PC 12向多功能外围设备11传送SCSI指令以请求输出打印数据。在S620中,SCSI命令分析任务111向打印机I/O任务151传送接收到的SCSI指令。
此时,打印机I/O任务151向打印机控制任务161传送数据等,并且打印机控制任务161控制打印机硬件171的操作以例如在记录介质上执行打印操作。当打印机I/O任务151准备接收下一打印数据时,从打印机I/O任务151向SCSI命令分析任务111返回指示该状态的响应。
在S620的进程期间,SCSI命令分析任务111等待直至打印机I/O任务151完成该操作。在从打印机I/O任务151接收到响应之后,SCSI命令分析任务111作为对SCSI指令的响应向PC 12返回该响应,并且随后结束S620中的进程。
存在可由PC 12传送给打印机I/O任务151的各种SCSI指令,例如包括获取打印机状态的指令。由打印机I/O任务151和打印机控制任务161执行的进程的细节依赖于SCSI指令。然而,因为由打印机I/O任务151和打印机控制任务161执行的进程是用于具有打印机功能的传统设备的公知的进程,将不在这里描述这些进程。
进一步,如果多功能外围设备11在S610中确定LUN为“2”(S610:LUN=2),则在S625中多功能外围设备11向扫描仪I/O任务153传送SCSI指令并且等待利用扫描仪I/O任务153的进程结束。
具体地,在S625中,SCSI命令分析任务111向扫描仪I/O任务153传送从PC 12接收到的SCSI指令。在向扫描仪I/O任务153传送SCSI指令之后,SCSI命令分析任务111等待利用扫描仪I/O任务153执行的进程结束。
在利用扫描仪I/O任务153的进程结束之后,SCSI命令分析任务111从扫描仪I/O任务153接收响应,作为对SCSI指令的响应将该响应返回到PC 12,并且结束S625中的进程。在完成S625中的进程之后,SCSI命令分析任务111返回到S605。
这里,将对于S625中的进程给出一个具体示例。在该示例中,PC12向多功能外围设备11传送SCSI指令以请求扫描仪输入。在S625中,SCSI命令分析任务111向扫描仪I/O任务153传送接收到的SCSI指令。
此时,扫描仪I/O任务153向扫描仪控制任务163传送数据等,并且扫描仪控制任务163控制扫描仪硬件173的操作以输入来自原始文献的图像数据。随后,扫描仪I/O任务153将该图像数据等返回到SCSI命令分析任务111。
在S625的进程期间,SCSI命令分析任务111等待直至扫描仪I/O任务153完成该进程。在从扫描仪I/O任务153接收到响应之后,SCSI命令分析任务111作为对SCSI指令的响应向PC 12返回该响应,并且随后结束S625中的进程。
存在可由PC 12传送到扫描仪I/O任务153的各种SCSI指令,例如包括用于获取扫描仪状态的指令。因此,通过由扫描仪I/O任务153和扫描仪控制任务163执行的这些进程的细节根据SCSI指令变化。然而,因为利用扫描仪I/O任务153和扫描仪控制任务163执行的进程与用于具有扫描仪功能的传统设备的在本领域中公知的进程相同,将不在这里给出对这些进程的说明。
进一步,如果多功能外围设备11在S610中确定LUN为“3”(S610:LUN=3),则在S630中多功能外围设备11向PC-FAX I/O任务155传送SCSI指令并且等待利用PC-FAX I/O任务155的进程结束。
具体地,在S630中,SCSI命令分析任务111向PC-FAX I/O任务155传送从PC 12接收到的SCSI指令。在向PC-FAX I/O任务155传送SCSI指令之后,SCSI命令分析任务111等待用于利用PC-FAX I/O任务155执行的进程结束。
在利用PC-FAX I/O任务155的进程结束之后,SCSI命令分析任务111从PC-FAX I/O任务155接收响应,作为对SCSI指令的响应向PC 12返回该响应,并且结束S630中的进程。在完成S630中的进程之后,SCSI命令分析任务111返回到S605。
这里,将对于S630中的进程给出一个具体示例。在该示例中,PC12向多功能外围设备11传送SCSI指令以请求发送传真数据。在S630中,SCSI命令分析任务111将接收到的SCSI指令传送到PC-FAX I/O任务155。
此时,PC-FAX I/O任务155向调制解调器控制任务165传送数据等,并且调制解调器控制任务165控制调制解调器硬件175的操作以执行传真发送进程等。当PC-FAX I/O任务155准备接收随后的传真发送数据时,指示该状态的响应被返回到SCSI命令分析任务111。
在S630的进程期间,SCSI命令分析任务111等待直至PC-FAX I/O任务155完成该进程。在从PC-FAX I/O任务155接收到响应之后,SCSI命令分析任务111作为对SCSI指令的响应向PC 12返回该响应,并且随后结束S630中的进程。
作为另一示例,PC 12可向多功能外围设备11传送SCSI指令以请求接收传真数据。在该情形中,在S630中,SCSI命令分析任务111向PC-FAX I/O任务155传送接收到的SCSI指令。
此时,如果接收到这种数据,则PC-FAX I/O任务155向SCSI命令分析任务111返回传真接收数据等。如果没有接收到传真接收数据,则PC-FAX I/O任务155向SCSI命令分析任务111返回指示没有接收到传真接收数据的数据。
在S630的进程期间,SCSI命令分析任务111等待直至PC-FAX I/O任务155完成该进程。在从PC-FAX I/O任务155接收到响应之后,SCSI命令分析任务111作为对SCSI指令的响应向PC 12返回该响应,并且随后结束S630中的进程。
存在可由PC 12传送到PC-FAX I/O任务155的各种SCSI指令,例如包括用于获取调制解调器状态的指令。因此,利用PC-FAX I/O任务155和调制解调器控制任务165执行的这些进程的细节根据SCSI指令变化。然而,因为用PC-FAX I/O任务155和调制解调器控制任务165执行的进程利与用于具有PC-FAX功能的传统设备的在本技术中公知的进程相同,在这里将不给出对这些进程的说明。
第一实施例的效果
利用上述的第一实施例,多功能外围设备11能够强制PC 12的OS将多功能外围设备11识别为具有多个LUN的USB存储类型设备。PC 12具有用于多功能外围设备11的单一USB存储驱动203。根据USB通信协议,当从PC 12输出的数据(数据包)被传送到多功能外围设备11时,该输出数据包括规定多个LUN中的一个的数据。因此,可根据USB通信协议在PC 12和逻辑单元之间传送数据。具体地,通过相应于该多个LUN向逻辑单元分配多个不同的功能(打印机功能、扫描仪功能、PC-FAX功能和数据存储功能),PC 12能够通过规定相应的LUN控制具有不同的功能的逻辑单元。
而且,多功能外围设备11仅需设有相应于所有的该多个LUN的输入和输出端点的各一个以根据以上的方法执行数据传送。因此,不像具有相应于每个功能的输入和输出端点的USB复合设备,多功能外围设备11仅需具有用于所有这些功能的输入端点和输出端点的各一个,由此减少了所需端点的数目。
因此,不必形成在与另一USB设备建立连接之前,其中一个USB设备应该被断开的虚拟条件。因此,PC 12的OS能够同时地使用该多个功能而无需切换设备驱动的时间。
进一步,因为用于控制传送的端点(EP0)不被用于传送其它数据,所以能够快速地执行所需控制而不受其它数据传送的干扰,即使当传送大量数据时。
(2)第二实施例
下面,描述本发明的第二实施例。因为第二实施例的结构仅仅部分地不同于上述的第一实施例,下面的说明将主要侧重与第一实施例的差别,而公共结构的说明将被省去。
PC的内部结构
图10是示出根据第二实施例的PC22的内部结构的框图。在根据上述第一实施例的PC 12中,所有的打印机端口驱动223、扫描仪驱动225和COM端口驱动227为SCSI兼容设备驱动。然而,第二实施例的结构在这点上不同。
具体地,在第二实施例中的打印机端口驱动224和扫描仪驱动226为不与SCSI兼容的设备驱动。不能仅仅通过使用那些设备驱动224和226经由SCSI指令处理器213和215执行SCSI兼容数据传送。
因此,在第二实施例中的打印机端口驱动224和扫描仪驱动226经由SCSI兼容COM端口驱动228和229与多功能外围设备11交换数据。
利用这种配置,当打印机端口驱动224或者扫描仪驱动226向多功能外围设备11传送数据时,相应的COM端口驱动228或者229在SCSI兼容数据的数据段中存储该数据并且将该SCSI兼容数据传送到多功能外围设备11。
进一步,被传送到打印机端口驱动224或者扫描仪驱动226的数据被存储于从多功能外围设备11接收到的SCSI兼容数据的数据段中。因此,相应的COM端口驱动228或者229接收该SCSI兼容数据并且将该数据段传送到打印机端口驱动224或者扫描仪驱动226。
因此,打印机端口驱动224和扫描仪驱动226不必为SCSI兼容设备,并且在多功能外围设备11中的软件不需支持用于打印机功能和扫描仪功能的SCSI标准。因此,当采用用于数据传送路径的SCSI兼容数据传送方法时,能够采用例如用于与打印机功能和扫描仪功能相关的软件组的唯一标准。
多功能外围设备软件的安装进程
下面,将参考图11和12中的流程图描述由根据第二实施例的PC22执行的用于安装在PC 22上执行的多功能外围设备软件的进程。
在示于图11中的进程开始时,在S705中,PC22运行安装程序。在S710中,PC22在OS中注册用于多功能外围设备的COM端口驱动。在S710中在OS中记录的COM端口驱动是由多功能外围设备11的制造商提供的SCSI连接软件。在S710中,PC 12使用OS的PnP安装功能以在OS中记录安装每个驱动所需的数据。根据第二实施例的安装进程不同于第一实施例之处在于不记录打印机驱动、打印机端口驱动和扫描仪驱动。
在S715中,PC22在PC22的显示器单元上显示要求用户在PC22和多功能外围设备11之间建立USB连接的消息。利用该消息也在显示器单元上显示取消按钮。
在显示该消息之后,在S720中,PC22监视OS的一个功能是否已经开始PnP安装。如果PnP安装没有开始(S720:NO),则在S725中,PC22确定是否已经按下取消按钮。如果取消按钮未被按下(S725:NO),则PC22返回到S720。
虽然以上的进程在S720和S725之间循环,但是用户能够执行选择取消按钮的操作,例如,利用指针设备点击在显示器单元中显示的取消按钮。如果用户选择取消按钮(S725:YES),则在S730中,PC22从OS删除为多功能外围设备暂时地记录的驱动并且取消安装进程。
然而,如果当PC22在S720和S725之间循环时PnP安装开始(S720:YES),则已知在PC22和多功能外围设备11之间已经建立了USB连接。在该情形中,在S735中,通过OS的PnP功能,驱动被自动地安装。
因此,在S740中,PC22将显示器单元上的消息改变为“安装”。在该阶段,用于集成驱动所需的各种数据已被顺序地记录。因此,取消按钮等不被显示在显示器单元中,以防止用户取消该操作。在S745中,PC22等待直至PnP安装完成。当该进程尚未完成时(S745:NO),PC22继续的循环返回到S745。
然而,当PnP安装完成时,(S745:YES),在S750中,PC22将打印机驱动使用的COM端口设置为LUN1的COM端口。因为将打印机驱动直接地链接到COM端口的打印机端口驱动被包括作为OS的标准功能,所以可以使用该功能。在S755中,PC22将扫描仪驱动使用的COM端口设为LUN2的COM端口,并且在S760中将PC-FAX应用使用的COM端口设为LUN3的COM端口。
在完成以上的进程之后,在S765中,PC22显示指示安装完成的确认窗口。此时,在PC22的显示器单元中与确认窗口一起地显示OK按钮,以使得用户能够执行选择OK按钮的操作。当用户选择OK按钮时,PC22结束安装进程。
用于装载动态驱动的进程
下面,参考图13描述根据第二实施例的用于装载动态驱动的进程,因为该进程稍微不同于图8所示的根据第一实施例的进程。
具体地,在图13的S805中,PC22的OS在参考硬件连接状态时顺序地装载动态驱动。在S810中,在USB协议堆栈201已经找到多功能外围设备11之后,PC22执行询问多功能外围设备11的设备类型的进程。
如果从多功能外围设备11对于该询问作出指示多功能外围设备11是USB存储设备的响应,则在S815中,PC22装载USB存储驱动203。
一旦通过S815的进程将USB存储驱动203置于工作状态中,在S820中,USB存储驱动203关于LUN的数目询问多功能外围设备11。更具体地,在S820中,USB存储驱动203发出关于最大LUN的询问。
在该实施例的示例中,多功能外围设备11具有四个逻辑单元。因为分配给这些逻辑单元的最小LUN为“0”,所以多功能外围设备11作为最大LUN返回“3”。
当作为最大LUN返回“3”时,在S825中,PC22基于该响应确定多功能外围设备11具有四个LUN并且形成用于SCSI指令进程的四个端口。通过S825的进程,对SCSI指令处理器211-217进行配置。
一旦SCSI指令处理器211到217处于工作状态中,在S830中,SCSI指令处理器211向逻辑单元LUN0发出“询问”。
响应于该询问,在S835中,PC22从逻辑单元LUN0接收响应“可移动磁盘”。这里,PC22装载作为OS中的标准为SCSI连接提供的可移动磁盘驱动221并且将可移动磁盘驱动221链接到文件系统231,使得驱动盘符被分配给逻辑单元LUN0。该驱动盘符还在Explorer 277中显示。
在S840中,SCSI指令处理器213向逻辑单元LUN1发出询问。响应于该询问,在S845中,PC22从LUN1逻辑单元接收响应“通信设备”。这点不同于第一实施例。PC22为SCSI连接装载由制造商提供的COM端口驱动228。
在S850中,SCSI指令处理器215向逻辑单元LUN2发出询问。响应于该询问,在S855中,PC22从逻辑单元LUN2接收响应“通信设备”。这点也不同于第一实施例。PC22为SCSI连接装载由制造商提供的COM端口驱动229。
在S860中,SCSI指令处理器217向逻辑单元LUN3发出询问。响应于该询问,在S865中,PC22从逻辑单元LUN3接收响应“通信设备”。PC22为SCSI连接装载由制造商提供的COM端口驱动227。
在完成在图13中描述的用于装载动态驱动的进程之后,示于图6中的S315的进程结束。其余进程与在第一实施例中描述的相同。
除了由第一实施例实现的优点,第二实施例能够为用于打印机功能、扫描仪功能和PC-FAX功能共享SCSI兼容COM端口驱动。因此,能够经由COM端口驱动控制打印机设备和扫描仪设备的打印机驱动和扫描仪驱动可替代SCSI兼容打印机驱动和SCSI兼容扫描仪驱动使用。
因此,打印机驱动和扫描仪驱动可由例如不受SCSI标准限制,而是符合唯一标准的设备驱动构成。
实施例的改变
虽然已经参考其具体实施例详细描述了本发明,但是对于本领域技术人员而言明显的是,可在其中作出各种改变和修改而不背离本发明的精神,本发明的范围由权利要求限定。
例如,虽然在上述实施例中读卡器功能被分配给LUN0,但是相应于另一数据存储设备的功能可被分配给LUN0,例如相应于另一可移动磁盘、CD-ROM驱动、硬盘或者磁光盘驱动的功能。

Claims (6)

1.一种多功能设备,具有选自打印机功能、扫描仪功能、传真功能以及数据存储功能之中的多个功能,并且能够经由通用串行总线(USB)接口连接到计算机,所述计算机发送输出数据到所述多功能设备,所述输出数据包括与作为控制目标的功能对应的LUN,所述多功能设备包括:
设备数据输出单元,当与所述计算机建立连接时,所述设备数据输出单元输出强制所述计算机中的OS将所述多功能设备识别为具有多个USB兼容逻辑单元编号(LUN)的USB存储类设备的信息;以及
控制单元,当从所述计算机发送所述输出数据时,所述控制单元基于所述输出数据中包括的LUN,确定所述输出数据是用于控制所述多个功能中的哪一个,并且基于所述输出数据控制所确定的功能。
2.根据权利要求1的多功能设备,其中所述设备数据输出单元被配置成使得能够输出强制所述计算机识别与所述多个LUN中的每个相关联的功能的数据,
当具有打印机功能时,所述设备数据输出单元输出指示SCSI兼容打印机设备的数据,
当具有扫描仪功能时,所述设备数据输出单元输出指示SCSI兼容扫描仪设备的数据,
当具有传真功能时,所述设备数据输出单元输出指示SCSI兼容通信设备的数据,以及
当具有数据存储功能时,所述设备数据输出单元输出指示SCSI兼容可移动磁盘的数据。
3.根据权利要求1的多功能设备,其中所述设备数据输出单元被配置成使得能够输出强制所述计算机识别与所述多个LUN中的每个相关联的功能的数据,
当具有打印机功能、扫描仪功能和传真功能中的任一个时,所述设备数据输出单元输出指示SCSI兼容通信设备的数据,以及
当具有数据存储功能时,所述设备数据输出单元输出指示SCSI兼容可移动磁盘的数据。
4.一种设备控制系统,包括:
计算机;以及
多功能设备,具有选自打印机功能、扫描仪功能、传真功能以及数据存储功能中的多个功能,
所述计算机和所述多功能设备经由通用串行总线(USB)接口相互连接,
所述计算机包括计算机控制单元,所述计算机控制单元基于从提供在计算机中的数据处理器发出的用于控制所述多个功能中的一个的指令,从所述计算机向所述多功能设备传送输出数据,所述输出数据包括与作为控制目标的功能对应的LUN,
所述多功能设备包括:
设备数据输出单元,当与所述计算机建立连接时,所述设备数据输出单元输出强制所述计算机中的OS将所述多功能设备识别为具有多个USB兼容逻辑单元编号(LUN)的USB存储类设备的信息;以及
设备控制单元,当从所述计算机发送所述输出数据时,所述设备控制单元基于所述输出数据中包括的LUN,确定所述输出数据是用于控制所述多个功能中的哪一个,并且基于所述输出数据控制所确定的功能。
5.根据权利要求4的设备控制系统,其中所述设备数据输出单元被配置成使得能够输出强制所述计算机识别与所述多个LUN中的每个相关联的功能的数据,
当具有打印机功能时,所述设备数据输出单元输出指示SCSI兼容打印机设备的数据,
当具有扫描仪功能时,所述设备数据输出单元输出指示SCSI兼容扫描仪设备的数据,
当具有传真功能时,所述设备数据输出单元输出指示SCSI兼容通信设备的数据,以及
当具有数据存储功能时,所述设备数据输出单元输出指示SCSI兼容可移动磁盘的数据,并且
其中所述计算机的计算机控制单元基于从所述多功能设备发送的数据,装载与从所述多功能设备传送的功能对应的设备驱动,所述设备驱动是对应于打印机设备的SCSI兼容打印机驱动、对应于扫描仪设备的SCSI兼容扫描仪驱动、对应于通讯通信设备的SCSI兼容COM端口驱动和对应于可移动磁盘的SCSI兼容可移动磁盘驱动中的任一个。
6.根据权利要求4的设备控制系统,其中所述设备数据输出单元被配置成使得能够输出强制所述计算机识别与所述多个LUN中的每个相关联的功能的数据,
当具有打印机功能、扫描仪功能和传真功能中的任一个时,所述设备数据输出单元输出指示SCSI兼容通信设备的数据,以及
当具有数据存储功能时,所述设备数据输出单元输出指示SCSI兼容可移动磁盘的数据,并且
其中,所述计算机的计算机控制单元基于从所述多功能设备发送的数据,装载与从多功能设备传送的功能对应的设备驱动,所述设备驱动是对应于打印机设备的SCSI兼容COM端口驱动、对应于扫描仪设备的SCSI兼容COM端口驱动、对应于通信设备的SCSI兼容COM端口驱动和对应于可移动磁盘的SCSI兼容可移动磁盘驱动中的任一个,
当装载对应于打印机设备的COM端口驱动时,所述计算机控制单元装载能够经由对应于打印机设备的COM端口驱动来控制打印机设备的打印机驱动,以及
当装载对应于扫描仪设备的COM端口驱动时,所述计算机控制单元装载能够经由对应于扫描仪设备的COM端口驱动来控制扫描仪设备的扫描仪驱动。
CN200810087465XA 2007-03-28 2008-03-28 具有多个功能的多功能外围设备 Expired - Fee Related CN101277353B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2007-084772 2007-03-28
JP2007084772A JP4333764B2 (ja) 2007-03-28 2007-03-28 デバイス制御システム

Publications (2)

Publication Number Publication Date
CN101277353A CN101277353A (zh) 2008-10-01
CN101277353B true CN101277353B (zh) 2012-11-21

Family

ID=39793777

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200810087465XA Expired - Fee Related CN101277353B (zh) 2007-03-28 2008-03-28 具有多个功能的多功能外围设备

Country Status (3)

Country Link
US (1) US8171184B2 (zh)
JP (1) JP4333764B2 (zh)
CN (1) CN101277353B (zh)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5513018B2 (ja) * 2008-06-27 2014-06-04 キヤノン電子株式会社 周辺装置及び画像読取装置
JP2010039684A (ja) * 2008-08-04 2010-02-18 Canon Inc 画像形成装置、情報処理装置、データ処理方法及びプログラム
JP5269704B2 (ja) * 2009-06-26 2013-08-21 株式会社バッファロー コンピュータ装置、コンピュータ処理方法、およびコンピュータプログラム
CN102004710A (zh) * 2009-09-01 2011-04-06 辉达公司 用于扩展便携式多媒体设备功能的方法和装置
US8554956B1 (en) * 2010-02-24 2013-10-08 Open Invention Network Llc Method for creation of a device driver for a peripheral device
CN102214148B (zh) * 2010-04-01 2014-04-02 山东新北洋信息技术股份有限公司 具有usb接口的打印机及其驱动安装方法与系统
JP2013545630A (ja) * 2010-10-12 2013-12-26 ダイモ・ビーブイビーエイ ラベルプリンタ
JP5261515B2 (ja) * 2011-02-23 2013-08-14 シャープ株式会社 画像形成装置
JP5533760B2 (ja) * 2011-03-30 2014-06-25 ブラザー工業株式会社 画像読取装置
JP5491548B2 (ja) * 2012-01-31 2014-05-14 株式会社ユニテックス 情報処理装置、情報処理システム、情報処理方法、プログラム及び記録媒体
US9182996B2 (en) * 2013-03-12 2015-11-10 Midnight Mosaic Llc Methods and apparatus for USB tunneling through USB printer device class
CN103744631A (zh) * 2014-01-28 2014-04-23 王华庭 打印数据处理装置
CN105095118B (zh) * 2014-05-19 2019-08-30 小米科技有限责任公司 设备的使用方法及装置
US9858224B2 (en) * 2014-08-30 2018-01-02 Microsoft Technology Licensing, Llc Universal serial bus emulation layer
US20160112421A1 (en) * 2014-10-20 2016-04-21 Xerox Corporation Method and apparatus for selective activation of universal serial bus (usb) ports
CN111666122B (zh) * 2020-05-22 2022-05-27 湖南云之翼软件有限公司 一种新型的usb存储设备重定向方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1707452A (zh) * 2004-04-27 2005-12-14 冲数据株式会社 计算机的外围装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5903733A (en) * 1997-02-13 1999-05-11 Toshiba America Information Systems, Inc. Multifunction peripheral controller
JP2001222503A (ja) 2000-02-08 2001-08-17 Ricoh Co Ltd 周辺機器制御システム
JP3513147B2 (ja) 2002-05-29 2004-03-31 株式会社ハギワラシスコム Usbストレージデバイス及びその制御装置
US7526580B2 (en) * 2003-06-27 2009-04-28 Brother Kogyo Kabushiki Kaisha Peripheral device
JP3906838B2 (ja) 2003-12-11 2007-04-18 村田機械株式会社 Usb対応型デジタル複合機
JP2006178704A (ja) 2004-12-22 2006-07-06 Seiko Epson Corp 複数の機能を有する装置、及び当該装置と接続可能な上位装置
JP2007021817A (ja) 2005-07-13 2007-02-01 Seiko Epson Corp マスストレージ機能を有する印刷装置
JP4897331B2 (ja) * 2006-03-30 2012-03-14 富士通フロンテック株式会社 通信制御装置、通信制御プログラム、通信ドライバ登録方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1707452A (zh) * 2004-04-27 2005-12-14 冲数据株式会社 计算机的外围装置

Also Published As

Publication number Publication date
US8171184B2 (en) 2012-05-01
CN101277353A (zh) 2008-10-01
JP4333764B2 (ja) 2009-09-16
US20080239378A1 (en) 2008-10-02
JP2008242974A (ja) 2008-10-09

Similar Documents

Publication Publication Date Title
CN101277353B (zh) 具有多个功能的多功能外围设备
CN101277362B (zh) 多功能外围设备和设备控制系统
US8156268B2 (en) Multifunction peripheral
CN100412836C (zh) 利用外部装置通过通用串行总线控制主机的方法及其系统
EP2273775B1 (en) Peripherals of computer
US7752342B2 (en) Interface integrated circuit device for a USB connection
US20050240713A1 (en) Flash memory device with ATA/ATAPI/SCSI or proprietary programming interface on PCI express
US20030196011A1 (en) Upstream peripheral device serving as a USB host
JP3809216B2 (ja) ネットワークインタフェースボード及びディジタル複写機及びコンピュータ可読メモリ
KR100899511B1 (ko) 컴퓨터 주변기기에 저장 기능을 부가하는 방법 및 그 구조
US7568053B2 (en) USB composite device, USB communication system, and USB communication method
US6753903B1 (en) Adaptor for direct connection between USB digital still camera and use color printer
US20060200612A1 (en) Method and protocol for transmitting extended commands to USB devices
US20070198753A1 (en) Method and protocol for transmitting extended commands to USB devices
JPH09198170A (ja) 電子機器
CN102404476B (zh) 图像形成装置及其形成图像的方法
US8049904B2 (en) Printer having keyboard function, a printing system and printing method using the printing system
JP2001230899A (ja) 画像処理システム及びその制御方法
JPH05241796A (ja) 端末装置のインストール方法
JP2010039970A (ja) 周辺装置及び周辺装置接続方法
JP2001230898A (ja) 画像処理システム及びその制御方法
JP2004118517A (ja) データ転送方法及び装置及び印刷方法及び印刷装置及びデータ転送装置の制御プログラム及び記憶媒体
JP2003140863A (ja) プリンタ装置及び記録制御方法
JP2001325209A (ja) データ転送制御装置
JP2011103090A (ja) 通信装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20121121

Termination date: 20200328