信息处理设备、程序控制方法和计算机程序产品的制作方法

文档序号:6598731阅读:248来源:国知局
专利名称:信息处理设备、程序控制方法和计算机程序产品的制作方法
技术领域
本发明涉及信息处理设备、程序控制方法和计算机程序产品。
背景技术
近年来,通常有能够使用通用接口动态地连接各种类型的装置的配置。这样的通 用接口的典型示例是USB (通用串行总线)。现在,由USB实施者论坛(USB Implementers Forum, Inc.) (USB-IF)实行 USB 规范的开发和管理。在因特网 <URL :http://www. usb. org/ developers/docs/usb_20_122208. zip> 上的 USB 实施者论坛,"Universal Serial Bus Specification Revision 2. 0 (通用串行总线规范修订版2. 0) ” [在线],[2009年1月9 日检索](非专利文件1)中能够找到USB规范的细节。基于USB规范的各种USB装置(例 如,诸如USB键盘或者鼠标的输入装置、诸如打印机的输出装置、以及诸如硬盘或者USB存 储器的存储存储器(memory storage)(例如,具有USB端口的闪速装置或者闪速存储器,一 般是便携的)在个人计算机领域内变得很普遍。具有以上例示的各种功能的装置作为USB装置存在。当控制USB装置的USB主机 (PC)检测到具有新功能的USB装置的连接时,USB主机在系统程序(系统软件)中安装诸 如USB装置特有的功能的控制程序(控制软件)或者USB装置特有的驱动。这样,通常能 够在USB主机中使用USB装置。为了能够使用USB装置,必须安装上述控制程序。存在获取安装所需要的数 据(控制程序)很麻烦的问题。作为与这样的问题相关的技术,有在日本专利申请特开 No. 2002-373144 (专利文件1)、曰本专利申请特开No. 2008-139916 (专利文件2)以及日本 专利申请特开No. 2000-194645 (专利文件3)中公开的已知技术。专利文件1公开了通过在USB装置中保存(hold)USB装置驱动(控制程序),然后 直接从USB装置中获取安装所需的USB装置驱动来去除麻烦的技术。专利文件2公开了与专利文件1基本上相同的技术,即,在USB装置中保存驱动 (控制程序),然后在PC (USB主机)中保存指示驱动的安装状态的安装标志,以便当要求安 装驱动时将驱动安装到USB装置内的技术。专利文件3公开了与专利文件1和2基本上相同的技术,即,在USB装置中预先存 储控制软件(驱动、应用(utility)、等等),然后将控制软件从USB装置传送到主机的技 术。当能够将控制程序(控制软件)添加到(安装到)USB主机(PC)的系统程序(系 统软件)中时,专利文件1至3中公开的技术是有效的技术。然而,近年来,诸如USB的通 用接口也被用于除PC领域之外的诸如MFP(多功能打印机)或者LP(激光打印机)的安装装置。在这样的安装装置中,在许多情况下,能够将系统程序存储在不能被重写和另外记录 的ROM中。因此,因为不能将控制程序添加到(安装到)安装装置中,所以专利文件1至3 中公开的技术是无效的。当USB装置连接到这样的安装装置上时,只有当将USB装置特有 的功能或者USB装置特有的控制程序预先并入到安装装置中时,才能使用USB装置。当控 制程序没有被预先并入到安装装置中时,不能使用USB装置。
从所述情况中,使用诸如USB的通用接口的设备需要通知用户是否能够使用 连接到其的装置。此外,在因特网 <URL ;http://www. usb. org/developers/docs/EH Compliance vl 0. pdf> 上的 USB 实施者论坛,“USB-IF EmbeddedHost Compliance Plan,,, 修订版1. 0,2006年8月,[在线],[2009年1月9日检索](非专利文件2)中描述了在安 装装置中提供通知用户是否能够使用连接装置的“No Silent Failure (非无声故障)”功 能。为了实现该功能,有必要使安装装置唯一地确定是否能够使用所连接的USB装置,然后 确定是否将确定结果报告给用户。另一方面,提出了不能重写或者另外写入MFP或者LP的系统程序的设备能够容 易地添加功能增强程序的技术。日本专利申请特开No.2004-046804(专利文件4)中公开 了在诸如SD卡(登记商标)的可附加/可拆卸外部存储装置中保存功能增强程序并且检 测外部存储装置的附加/拆卸,以便自动启动功能增强程序的技术。通过使用专利文件4 中公开的技术,在一些情况下能够使用在诸如MFP或者LP的设备中传统上不能使用的外 部连接装置。例如,即使当数码相机连接到诸如MFP或者LP的设备上时,也不能传统地使 用数码相机。然而,通过应用专利文件4中公开的技术到诸如MFP或者LP的设备,能够将 因特网 <URL :http://www. cipa. jp/pictbridge/index_j. html> 上的有限责任媒介公司照 相机与图像产品协会(limited-liability intermediatecorporation camera & imaging products association),“PictBridge_CIPA,,[在线],[2009 年 1 月 9 日检索](非专利文 件3)中公开的“PictBridge”相关的程序作为功能增强程序添加到诸如MFP或者LP的设 备。这样,存在打印机能够直接打印来自数码相机的图像的情况。如果另外回顾能够通过应用专利文件4中公开的技术添加扩展程序(扩展软件) 到其的安装装置,则存在有时不能确定是否能够使用连接到通用接口的外部连接装置的问 题。PC等等能够修改或者添加系统程序(系统软件)。PC能够保存指示是否能够通过 在诸如HDD的记录介质上重写系统文件(例如,通常称为微软公司的Windows (登记商标) 中的“登记”的文件组)来使用外部连接装置的信息。然而,不能重写或者添加系统程序的 安装装置不能保存指示是否能够使用外部连接装置的信息。此外,直到启动系统程序时为 止,不可能知道存在或者不存在扩展程序。例如,如上所述,即使添加“PictBridge”程序一 次,在这之后,安装装置也必须再次确定当保存“PictBridge”程序的外部存储器装置被移 除时不能使用数码相机。

发明内容
本发明的目的是至少部分地解决现有技术中的问题。根据本发明的一个方面,提供了信息处理设备,包括外部记录介质连接单元,被 配置为连接外部记录介质;外部装置连接单元,被配置为以预定接口连接多种类型的外部装置;程序启动单元,启动存储在连接到外部记录介质连接单元的外部记录介质中的程序; 外部装置连接检测单元,检测外部装置与外部装置连接单元的连接;第一信息获取单元,当 外部装置连接检测单元检测到外部装置与外部装置连接单元的连接时,获取与连接到外部 装置连接单元的外部装置相关的第一信息;第二信息获取单元,通过执行程序获取与能够 使用的外部装置相关的第二信息;确定单元,通过比较第一信息与第二信息确定是否能够 使用连接到外部装置连接单元的外部装置;控制单元,当确定单元确定能够使用连接到外 部装置连接单元的外部装置时,控制连接到外部装置连接单元的外部装置;以及通知单元, 当确定单元确定不能使用连接到外部装置连接单元的外部装置时,通知用户不能使用外部
直ο另外,根据本发明的另一方面,提供了用于信息处理设备的程序控制方法,该信息 处理设备包括被配置为连接外部记录介质的外部记录介质连接单元以及被配置为以预定 接口连接多种类型的外部装置的外部装置连接单元。该程序控制方法包括启动记录在连 接到外部记录介质连接单元的外部记录介质中的程序;检测外部装置与外部装置连接单元 的连接;第一获取步骤,包括在检测时当检测到外部装置与外部装置连接单元的连接时,获 取与连接到外部装置连接单元的外部装置相关的第一信息;第二获取步骤,包括通过执行 程序获取与能够使用的外部装置相关的第二信息;通过比较第一信息与第二信息,确定是 否能够使用连接到外部装置连接单元的外部装置;当确定能够使用连接到外部装置连接单 元的外部装置时,控制连接到外部装置连接单元的外部装置;以及通知步骤,包括当确定不 能使用连接到外部装置连接单元的外部装置时,通知用户不能使用外部装置。此外,根据本发明的又一方面,提供了包括具有具体表现为介质的计算机可读程 序代码的计算机可用介质的计算机程序产品,用于实现包括被配置为连接外部记录介质的 外部记录介质连接单元以及被配置为以预定接口连接多个类型的外部装置的外部装置连 接单元的信息处理设备的程序控制方法,当执行时,所述程序代码使得计算机执行启动在 连接到外部记录介质连接单元的外部记录介质中记录的程序;检测外部装置与外部装置连 接单元的连接;第一获取步骤,包括在检测时当检测到外部装置与外部装置连接单元的连 接时,获取与连接到外部装置连接单元的外部装置相关的第一信息;第二获取步骤,包括通 过执行程序获取与能够使用的外部装置相关的第二信息;通过比较第一信息与第二信息, 确定是否能够使用连接到外部装置连接单元的外部装置;当确定能够使用连接到外部装置 连接单元的外部装置时,控制连接到外部装置连接单元的外部装置;以及通知步骤,包括当 确定不能使用连接到外部装置连接单元的外部装置时,通知用户不能使用外部装置。通过阅读以下本发明优选实施例的详细说明,并与附图一起考虑,能够更好地理 解本发明的上述以及其它目的、特征、优点以及技术和工业重要性。


图1是说明根据本发明第一实施例的图像形成设备(MFP)的配置的框图;图2是说明存储在图1所示的ROM中的程序的模块配置示例图;图3是说明存储在图1所示的插入到卡槽中的卡中的扩展程序的模块配置示例 图;图4A是说明能够连接到图1所示的USB端口的USB装置的示例图4B是说明能够连接到图1所示的USB端口的USB装置的示例图;图4C是说明能够连接到图1所示的USB端口的USB装置的示例图;
图5是简要说明根据第一实施例的图像形成设备中的程序模块之间的合作关系 的图;图6是简要说明在启动根据第一实施例的图像形成设备时各程序模块的处理序 列的图;图7是说明在图5所示的USB装置监控单元内的表中登记的登记信息示例图;图8是简要说明根据第一实施例的图像形成设备中的程序模块的处理序列的图;图9是简要说明当USB装置连接到图1所示的USB端口时,USB装置监控单元的 处理的图;图10是简要说明根据第一实施例的图像形成设备中的程序模块的处理序列的 图;图11是简要说明根据第一实施例的图像形成设备中的程序模块的处理序列的 图;图12是简要说明根据第一实施例的图像形成设备中的程序模块的处理序列的 图;图13是说明在图5所示的USB装置监控单元内的表中登记的登记信息的示例的 图;图14是简要说明根据本发明第二实施例的图像形成设备中的程序模块的处理序 列的图;图15是简要说明根据本发明第三实施例的图像形成设备中的程序模块之间的合 作关系的图;图16是简要说明在启动根据第三实施例的图像形成设备时各程序模块的处理序 列的图。
具体实施例方式以下将参考附图详细解释本发明的示例性实施例。相同部件具有相同的附图标 记,省略对它们的描述。图1是说明根据本发明第一实施例的图像形成设备(MFP) 1的配置的框图。根据 第一实施例,将根据本发明的信息处理设备应用于图像形成设备。图像形成设备1包括控制器2、图像形成引擎3、以及操作面板4。控制器2控制所 有多功能产品、制图(drawing)、通信、以及来自操作面板4的输入。图像形成引擎3是打印机引擎。例如,图像形成引擎3是黑白绘图仪、单色鼓绘图 仪、四色鼓绘图仪、扫描仪、或者传真单元。另外,除诸如绘图仪之类的所谓的引擎部分之 夕卜,图像形成引擎3还包括诸如误差扩散或者伽马转换之类的图像处理部分。控制器2包括CPU 21、系统存储器22、ASIC (专用集成电路)23、R0M(只读存储 器)24、USB主机控制器25、USB端口 26、以及卡槽27。CPU 21对多功能产品实行总的控制以及经由ASIC 23连接到其它部件。ASIC 23是具有用于图像处理的硬件元件(element)的图像处理IC (集成电路),以及具有连接图像形成引擎3、操作面板4、CPU 21、系统存储器22、R0M 24、USB主机控制器25、以及卡槽27的桥接器的作用。ASIC 23包括控制系统存储器22的存储器控制器、使用 硬件逻辑执行图像数据的旋转等的多个DMAC(直接存储器存取控制器)、以及通过ASIC与 图像形成引擎3之间的PCI总线执行数据传送等的PCI单元。ASIC 23经由PCI总线连接 到图像形成引擎3、R0M 24、USB主机控制器25、以及卡槽27。操作面板4直接连接到ASIC 23。系统存储器22是RAM(随机存取存储器),其用作用于开发程序(软件)或者数据 的存储器、用于在打印机中制图的存储器、等等。ROM 24是读出专用存储器,其用作用于存储图像形成设备1的系统程序(软件) 或者数据的存储器。在启动图像形成设备1时,CPU 21将存储在ROM 24中的程序加载到 系统存储器22中,并执行加载在系统存储器22中的程序。将存储扩展程序(扩展软件)的外部记录介质(例如,SD卡(登记商标)等等, 以下,“卡”)插入到卡槽27中。当将存储扩展程序的卡安装到卡槽27时,执行系统程序的 CPU 21自动执行(启动)存储在卡中的扩展程序。因为执行(启动)存储在卡中的扩展程 序的方法和过程不是本发明的要点,所以省略对它们的描述。作为执行(启动)存储在卡 中的扩展程序的方法的示例,例如,能够使用专利文件4中公开的技术。然而,本发明并不 限于此。此外,卡槽是示例性的。因此,如果装置能够连接或者安装到存储扩展程序的记录 介质,则装置并不限于卡槽。操作面板4是执行图像形成设备1和用户之间的接口的部分,且包括IXD (液晶显 示)和按键开关。操作面板4将图像形成设备1的各种类型的状态和操作指令显示在LCD 上,以及接受来自用户的按键开关输入。当不能使用连接到USB端口 26的外部连接装置时, 通过操作面板4将结果通知给用户。操作面板是示例性的。因此,如果装置能够将结果通 知给用户,则装置并不限于操作面板。具有以USB规范定义的连接器(插头)的各种USB装置连接到USB端口(插座)26。 USB主机控制器25是以USB规范定义的、在连接到USB端口 26的控制器和USB装置之间执 行数据传送的主机控制器。USB主机控制器25也是满足公知的EHCI (增强主机控制器接 口)规范的硬件。图2是说明存储在ROM 24中、由CPU 21执行的程序(软件)的模块配置的示例 图。如图2所示,OS (操作系统)包括USB主机控制器驱动、USB主机驱动、操作面板驱动、 等等。CPU 21能够执行这些驱动程序来控制诸如USB主机控制器25或者操作面板4的硬 件。SCS、NCS、OCS、MCS、以及FCS是分别执行系统和网络的服务控制的服务控制模块 和程序。此外,打印机应用程序、扫描仪应用程序、复印应用程序、以及传真应用程序是分别 实现图像形成设备1的功能(复印等)的应用程序模块。这些程序模块被存储在ROM 24(见 图1)中。图3是说明存储在插入卡槽27中的卡中的扩展程序的模块配置的示例图。如图3 所示,数码相机打印应用程序被存储在卡31中。当数码相机连接到图像形成设备1的USB 端口 26时,数码相机打印应用程序是使图像形成设备1打印存储在数码相机中的图像的应 用程序。当卡31插入卡槽27中时,由执行系统程序的CPU 21自动执行(启动)数码相机打印应用程序。数码相机打印应用程序是等同于图2所示的程序模块配置中的应用程序模 块(复印应用程序、打印机应用程序、等等)的程序模块。图4A至图4C是说明能够连接到USB端口 26的USB装置的示例图。各种装置作 为USB装置存在。作为USB装置的示例,图4A说明数码相机41,图4B说明USB存储器42, 以及图4C说明USB键盘43。所有USB装置存储或者保存以USB规范定义的描述符信息。 描述符信息包括装置制造商的标识符“Bendor ID (idVendor) ”、称为作为产品的标识符的 “产品ID(idProdUCt)”数据、以及称为指示装置类型(功能)的“Class”、"Subclass”、以及 “Protocol”数据。基于USB装置特有的条件(功能等)而决定存储(保存)在USB装置中的 描述符信息。“Class (类)”、“Subclass (子类)”、以及“Protocol (协议)”由以USB规范定义 的标准装置描述符 “bDeviceClass”、“bDeviceSubClass”、以及 “bDeviceProtocol” 决定, 或者由以USB规范定义的标准接口描述符“bInterfaceClass”、“bInterfaceSubClass,,、以 及“blnterfaceProtocol”决定。此外,根据USB规范定义USB主机从USB装置获取描述符 信息的过程。
图5是简要说明本实施例中的程序模块之间的合作关系的图。USB装置监控单元 是监控USB装置附加到图像形成设备1的USB端口 26或者从图像形成设备1的USB端口 26拆卸的模块,且作为图2所示的NCS的一部分而被包括。操作面板控制单元是执行将要显示在操作面板4上的消息内容的语义解释以及 经由操作面板驱动从操作面板4输入的模块。操作面板控制单元作为图2所示的OCS的一 部分而被包括。扩展程序(扩展软件)启动单元是启动存储在卡31中的扩展程序(在本实施例 中的数码相机打印应用程序)的模块,并作为图2所示的SCS的一部分而被包括。扫描仪应用程序是执行USB存储器的处理的程序模块。数码相机打印应用程序是 执行数码相机的处理的程序模块。图6是简要说明在启动图像形成设备1时每个程序模块的处理序列的图。在启动 系统程序时由CPU 21执行(启动)包括在系统程序内的每个模块(驱动组、操作面板控制 单元、USB装置监控单元、扩展程序启动单元、以及扫描仪应用程序)。扩展程序启动单元检测存储在卡31中的数码相机打印应用程序的存在并启动数 码相机打印应用程序(步骤Sll)。USB主机控制器驱动执行硬件(USB主机控制器25)所 需要的初始化(步骤S12)。扫描仪应用程序在USB装置监控单元中登记可控制USB装置的条件(步骤S13)。 根据本实施例,扫描仪应用程序能够控制USB存储器并向USB装置监控单元通知(登记) 符合 USB 存储器的条件(Class = 0x08, SubClass = 0x06,以及 Protocol = 0x80)。类似地,数码相机打印应用程序在USB装置监控单元中登记可控制USB装置的条 件(步骤S14)。根据本实施例,数码相机打印应用程序能够控制定义为成像装置的数码相 机并将符合成像装置的条件(Class = 0x06, SubClass = 0x01,以及Protocol = 0x01)通 知USB装置监控单元。图7是说明在步骤S13和S14中在USB装置监控单元的表中登记的登记信息的示 例图。图7所示的表的第一条目是包括与在步骤S13中由扫描仪应用程序登记的USB装置 (USB存储器)相关的信息的条目。第二条目是包括与在步骤S14中由数码相机打印应用程序登记的USB装置(数码相机)相关的信息的条目。再次参考图6,USB装置监控单元经由USB主机驱动(以及USB主机控制器驱动) 启动监控USB装置与USB端口 26的连接(步骤S 15)。以上是启动图像形成设备1时每个程序模块的处理序列的概要。接下来,将解释 当USB装置连接到USB端口 26时,例如,当数码相机41 (在本实施例中能够使用的USB装 置的示例)连接到USB端口 26时以及当USB键盘43 (在本实施例中不能使用的USB装置 的示例)连接到USB端口 26时,每个程序模块的处理。首先,将解释当数码相机41连接到USB端口 26每个程序模块的处理。图8是简要说明当数码相机41连接到USB端口 26时每个程序模块的处理序列的图。USB装置(在该示例中的数码相机41)与USB端口 26的连接由USB主机控制器 25检测并且通知给USB主机控制器驱动(步骤S21)。另外,经由USB主机驱动将连接通 知给USB装置监控单元。USB主机控制器25向USB装置发送被称为SET_ADDRESS和GET_ DESCRIPTOR的装置请求,以获取存储在USB装置中的描述符信息(步骤S22和S23)。这些 装置请求是以USB规范定义的一般标准装置请求。作为对这些装置请求的响应,USB装置向USB主机控制器25发送描述符信息(在 该示例中,包括 Class = 0x06, SubClass = 0x01,以及 Protocol = 0x01),以及 USB 主机控 制器25向USB主机控制器驱动发送描述符信息(步骤S24)。USB主机控制器驱动向USB 主机驱动发送描述符信息(步骤S25),以及USB主机驱动向USB装置监控单元发送描述符 信息(装置的独有信息)(步骤S26)。图9是简要说明当USB装置连接到USB端口 26时USB装置监控单元中的步骤S27 的处理的图。USB装置监控单元等待检测到USB装置的连接的通知(步骤S31)。如果没有 通知检测到USB装置的连接的结果(步骤S32 =No),则USB装置监控单元继续等待。如果通知了检测到USB装置的连接的结果(步骤S32 :Yes),则USB装置监控单元 经由USB主机驱动和USB主机控制器驱动接收USB装置的描述符信息(步骤S33)。然后,USB装置监控单元比较所接收的描述符信息的Class、Subclass、以及 Protocol与表的每个条目的Class,Subclass,以及Protocol (见图7)(步骤S34)。当所接 收的描述符信息的Class、Subclass、以及Protocol与表的任意条目的Class、Subclass、以 及Protocol相同时(步骤S35 =Yes),USB装置监控单元确定能够使用连接到USB端口 26 的USB装置(步骤S36)。另一方面,当所接收的描述符信息的Classjubclass、以及Protocol与表的任意 条目的Class、Subclass、以及Protocol不相同时(步骤S35 :No),USB装置监控单元确定 不能使用连接到USB端口 26的USB装置(步骤S37)。在本示例中,USB装置监控单元接收包括作为描述符信息的Class = 0x06、 SubClass = 0x01、以及 Protocol = 0x01 的信息。描述符信息的这些 Class、Subclass、以 及Protocol与表的第二条目的Class、Subclass、以及Protocol (见图7)相同。因此,USB 装置监控单元确定通过使用数码相机打印应用程序能够使用连接到USB端口 26的USB装 置(在该示例中的数码相机41)。再次参考图8,USB装置监控单元将数码相机41连接到USB端口 26的结果通知数 码相机打印应用程序(步骤S28)。这样,然后,数码相机打印应用程序能够执行对数码相机41的控制(步骤S29)以及通过使用图像形成设备1打印存储在数码相机41中的图像。接下来,将解释当USB键盘43连接到USB端口 26时每个程序模块的处理。图10 是简要说明当USB键盘43连接到USB端口 26时每个程序模块的处理序列的图。USB装置(在该示例中的USB键盘43)与USB端口 26的连接由USB主机控制器25检测到并且将该连接通知给USB主机控制器驱动(步骤S41)。另外,经由USB主机驱动 将该连接通知给USB装置监控单元。为了获取存储在USB装置中的描述符信息,USB主机 控制器25向USB装置发送称为SET_ADDRESS和GET_DESCRIPTOR的装置请求(步骤S42和 S43)。作为对这些装置请求的响应,USB装置向USB主机控制器25发送描述符信息(在 该示例中,包括 Class = 0x03, SubClass = 0x00,以及 Protocol = 0x01),以及 USB 主机控 制器25向USB主机控制器驱动发送描述符信息(步骤S44)。USB主机控制器驱动向USB 主机驱动发送描述符信息(步骤S45),以及USB主机驱动向USB装置监控单元发送描述符 信息(装置的独有信息)(步骤S46)。再次参考图9,USB装置监控单元等待通知检测到USB装置的连接的结果(步骤 S31)。如果没有通知检测到USB装置的连接的结果(步骤S32 =No),则USB装置监控单元 继续等待。如果通知了检测到USB装置的连接的结果(步骤S32 :Yes),则USB装置监控单元 经由USB主机驱动和USB主机控制器驱动接收USB装置的描述符信息(步骤S33)。然后,USB装置监控单元比较所接收的描述符信息的Class、Subclass、以及 Protocol与表的每个条目的Class,Subclass,以及Protocol (见图7)(步骤S34)。当所接 收的描述符信息的Class、Subclass、以及Protocol与表的任意条目的Class、Subclass、以 及Protocol相同时(步骤S35 =Yes),USB装置监控单元确定能够使用连接到USB端口 26 的USB装置(步骤S36)。另一方面,当所接收的描述符信息的Classjubclass、以及Protocol与表的任意 条目的Class、Subclass、以及Protocol不相同时(步骤S35 :No),USB装置监控单元确定 不能使用连接到USB端口 26的USB装置(步骤S37)。在本示例中,USB装置监控单元接收包括作为描述符信息的Class = 0x03、 SubClass = 0x00、以及 Protocol = 0x00 的信息。描述符信息的这些 Class、Subclass、以 及Protocol与表的任意条目的Class、Subclass、以及Protocol不相同(见图7)。因此, 因为不存在使用连接到USB端口 26的USB装置(在该示例中的USB键盘43)的应用程序, 所以USB装置监控单元确定不能使用连接到USB端口 26的USB装置。再次参考图10,USB装置监控单元要求操作面板控制单元显示不能使用连接到 USB端口 26的USB装置(该示例中的USB键盘43)的结果的消息(步骤S47)。操作面板 控制单元控制操作面板驱动以便显示不能使用连接到USB端口 26的USB装置的结果的消 息(步骤S48)。这样,将不能使用连接到USB端口 26的USB装置的结果的消息显示在操作 面板4上。用户能够知道不能使用连接到USB端口 26的USB装置。接下来,将解释当卡31插入到卡槽27中以及数码相机41连接到USB端口 26时 每个程序模块的处理,以及当卡31没有插入到卡槽27中以及数码相机41连接到USB端口 26时每个程序模块的处理。
首先,将解释当卡31插入到卡槽27中以及数码相机41连接到USB端口 26时每 个程序模块的处理。 图11是简要说明当卡31插入到卡槽27中以及数码相机41连接到USB端口 26时 每个程序模块的处理序列的图。图11是结合上述图6和图8所获得的图。内容与图6和 图8中解释的相同。接下来,将解释当卡31没有插入到卡槽27中以及数码相机41连接到USB端口 26 时每个程序模块的处理。图12是简要说明当卡31没有插入到卡槽27中以及数码相机41连接到USB端口 26时每个程序模块的处理序列的图。当卡31没有插入到卡槽27中时,不执行(启动)数 码相机打印应用程序。参考图12,USB主机控制器驱动执行硬件(USB主机控制器25)所需要的初始化处 理(步骤S12)。扫描仪应用程序在USB装置监控单元中登记可控制USB装置的条件(步骤 S13)。在本实施例中,扫描仪应用程序向USB装置监控单元通知(登记)符合USB存储器 的条件(Class = 0x08,SubClass = 0x06,以及 Protocol = 0x80)。USB装置监控单元经由USB主机驱动(以及USB主机控制器驱动)启动监控USB 装置与USB端口 26的连接(步骤S15)。USB装置(在该示例中的数码相机41)与USB端口 26的连接由USB主机控制器 25检测并且被通知给USB主机控制器驱动(步骤S21)。另外,经由USB主机驱动将连接通 知给USB装置监控单元。为了获取存储在USB装置中的描述符信息,USB主机控制器25向 USB装置发送称为SET_ADDRESS和GET_DESCRIPTOR的装置请求(步骤S22和S23)。作为对这些装置请求的响应,USB装置向USB主机控制器25发送描述符信息(在 该示例中,包括 Class = 0x06, SubClass = 0x01,以及 Protocol = 0x01),以及 USB 主机控 制器25向USB主机控制器驱动发送描述符信息(步骤S24)。USB主机控制器驱动向USB 主机驱动发送描述符信息(步骤S25),以及USB主机驱动向USB装置监控单元发送描述符 信息(装置的独有信息)(步骤S26)。USB装置监控单元执行以上已经解释的图9所示的处理(步骤S27),并确定不能 使用连接到USB端口 26的USB装置(在该示例中的数码相机41)。然后,USB装置监控单元要求操作面板控制单元显示不能使用连接到USB端口 26 的USB装置(该示例中的数码相机41)的结果的消息(步骤S47)。操作面板控制单元控制 操作面板驱动以便显示不能使用连接到USB端口 26的USB装置的结果的消息(步骤S48)。 这样,不能使用连接到USB端口 26的USB装置的结果的消息显示在操作面板4上。用户能 够知道不能使用连接到USB端口 26的USB装置。如上所述,根据本实施例,即使能够容易地附加或者拆卸记录扩展程序(在本实 施例中的数码相机打印应用程序)的卡31,也能够容易地执行是否能够使用由通用接口 (在本实施例中的USB)连接的外部扩展装置(在本实施例中的USB装置)的确定,并能够 实现满足装置的可扩展性和可用性的图像形成设备。根据本实施例,根据卡31的存在或者不存在而不重写或者添加系统程序(系统软 件),能够动态地执行是否使用USB装置的确定。在本实施例中,扫描仪应用程序和数码相机打印应用程序在USB装置监控单元的表(见图7)中登记Class、Subclass、以及Protocol,且USB装置监控单元比较从USB装 置获取的描述符信息的Class、Subclass、以及Protocol与表中登记的Class、Subclass、 以及Protocol。然而,也能够使用不同的信息来代替Class、Subclass、以及Protocol。 如上所述,作为USB装置的制造商标识符的Vendor ID(厂商ID) (idVendor)和作为USB 装置的产品标识符的product ID(产品ID) (idProduct)被包括在USB的标准装置描述 符中。因此,扫描仪应用程序和数码相机打印应用程序能够在USB装置监控单元的表中 登记 Vendor ID (idVendor)和 product ID (idProduct)。图 13 是说明其中登记 vendor ID (idVendor)禾口 product ID (idProduct)代替 Class、Subclass、以及 Protocol 的表的 示例图。在这种情况下,USB装置监控单元比较从USB装置获取的描述符信息的Vendor ID (idVendor)和 product ID (idProduct)与在表中登记的 Vendor ID (idVendor)和 product ID(idProduct)ο结果,即使能够容易地附加或者拆卸记录扩展程序的卡31,也能够容易地执行是否能够使用由USB (通用串行总线)连接的外部扩展装置(USB装置)的确定,且能够实现 满足装置的可扩展性和可用性的图像形成设备。在本实施例中,USB (通用串行总线)用作连接外部装置的通用接口。然而,在本发 明中,用于连接外部装置的接口并不限于USB。USB装置把持以USB规范确定的描述符信息。 在本实施例中,描述符信息的一部分(或者全部)用作外部装置特有的功能信息。PCI(外 围部件互连)作为类似于USB的接口的示例给出。PCI装置将与装置类型相关的信息保存 在以PCI规范确定的寄存器空间上。类似于上述USB装置,通过使用作为外部装置(PCI装 置)特有的功能信息的登记信息,也能够控制经由PCI总线连接的PCI装置。以下将解释本发明的第二实施例。因为根据本实施例的图像形成设备的块配置和 程序模块配置类似于根据上述第一实施例的图像形成设备1的块配置(见图1)和程序模 块配置(见图2、3、以及5),所以省略对它们的描述。图14是简要说明当卡31插入到卡槽27中以及数码相机41连接到USB端口 26 时每个程序模块的处理序列的图。参考图14,在启动系统程序时,由CPU 21执行(启动)包括在系统程序内的每个 模块(驱动、USB装置监控单元、扩展程序启动单元、扫描仪应用程序、等等)。USB主机控制器驱动执行硬件(USB主机控制器25)所需要的初始化处理(步骤 S12)。扫描仪应用程序在USB装置监控单元中登记可控制USB装置的条件(步骤S13)。 在本实施例中,扫描仪应用程序是能够控制USB存储器并且向USB装置监控单元通知(登 记)符合 USB 存储器的条件(Class = 0x08, SubClass = 0x06,以及 Protocol = 0x80)的 程序。USB装置监控单元经由USB主机驱动(以及USB主机控制器驱动)启动监控USB 装置与USB端口 26的连接(步骤S15)。USB装置(在该示例中的数码相机41)与USB端口 26的连接由USB主机控制器 25检测并且被通知给USB主机控制器驱动(步骤S21)。另外,经由USB主机驱动将该连接 通知给USB装置监控单元。为了获取存储在USB装置中的描述符信息,USB主机控制器25 向USB装置发送称为SET_ADDRESS和(iET_DESCRIPTOR的装置请求(步骤S22和S23)。
作为对这些装置请求的响应,USB装置向USB主机控制器25发送描述符信息(在 该示例中,包括 Class = 0x06, SubClass = 0x01,以及 Protocol = 0x01),且 USB 主机控制 器25向USB主机控制器驱动发送描述符信息(步骤S24)。USB主机控制器驱动向USB主 机驱动发送描述符信息(步骤S25),且USB主机驱动向USB装置监控单元发送描述符信息 (装置的独有信息)(步骤S26)。USB装置监控单元接收包括作为描述符信息的Class = 0x06、SubClass = 0x01、 以及Protocol = 0x01的信息(步骤S27)。然而,在这一点上,能够由数码相机打印应用程 序控制的USB装置(数码相机41)的条件没有在USB装置监控单元中登记。因此,USB装 置监控单元不会立即确定不能使用连接到USB端口 26的USB装置(在该示例中的数码相 机41),而是等待预定时间(例如,一分钟)。然后,当存储在卡31中的数码相机打印应用程序由扩展程序启动单 元启动时(步 骤Sll),数码相机打印应用程序在USB装置监控单元中登记可控制USB装置的条件(步骤 S14)。在本实施例中,数码相机打印应用程序是能够控制定义为成像装置的数码相机、并向 USB装置监控单元通知(登记)符合成像装置的条件(Class = 0x06,SubClass = 0x01、以 及 Protocol = 0x01)的程序。USB装置监控单元从USB主机驱动接收包括作为描述符信息的Class = 0x06、 SubClass = 0x01、以及Protocol = 0x01的信息(步骤S26)。这些描述符信息的Class、 Subclass、以及Protocol与数码相机打印应用程序登记的Class、Subclass、以及Protocol 相同。因此,USB装置监控单元确定能够由数码相机打印应用程序使用连接到USB端口 26 的USB装置(在该示例中的数码相机41),以及将数码相机41连接到USB端口 26的结果通 知给数码相机打印应用程序(步骤S28)。如上所述,根据本实施例,在数码相机打印应用程序登记可控制的数码相机41的 条件之前,即使接收到连接了数码相机41的结果的通知和数码相机41的描述符信息,图像 形成设备也不会立即将不能使用数码相机41的结果通知给用户,而是等待预定时间。然 后,当由数码相机打印应用程序登记可控制的数码相机41的条件时,图像形成设备将连接 了数码相机41的结果通知给数码相机打印应用程序。因此,在启动装置(初始化处理)时, 有可能防止不正确的通知(不能使用数码相机41的结果的通知)并排除用户误解的可能。以下将解释本发明的第三实施例。因为根据本实施例的图像形成设备的块配置类 似于根据上述第一实施例的图像形成设备1的块配置(见图1),所以省略它们的描述。图15是简要说明根据第三实施例的程序模块之间的合作关系的图。在第三实施 例中,与上述第一实施例(见图5)相比,添加了扩展程序(扩展软件)初始化检查单元。扩 展程序(扩展软件)初始化检查单元被实现为作为图2所示的SCS的一部分而被包括。扩展程序初始化检查单元检查诸如卡槽27(见图1)之类的所有外部记录介质连 接槽。当完成所有扩展程序的初始化处理时,扩展程序初始化检查单元将完成所有扩展程 序的初始化处理的结果通知给USB装置监控单元。图16是简要说明本实施例中的每个起动程序模块的处理序列的图。在这种情况 下,用作USB装置的USB键盘43连接到USB端口 26(见图1)。如图16所示,当扩展程序启动单元启动扩展程序(数码相机打印应用程序)时 (步骤Sl 1),扩展程序在USB装置监控单元中登记可用USB装置的条件(在该示例中,Class=0x06、SubClass = 0x01、以及Protocol = 0x01),作为启动时初始化处理的一部分(步 骤S14)。另外,当完成初始化处理时,扩展程序将完成初始化处理的结果通知扩展程序初始 化检查单元(步骤S51)。当确认完成所有外部槽的所有扩展程序的初始化处理时,扩展程 序初始化检查单元将完成所有扩展程序的初始化处理的结果通知USB装置监控单元(步骤 S52)。当USB装置监控单元从扩展程序初始化检查单元中接收到完成所有扩展程序的初始化处理的结果的通知时,当确定不能使用USB装置(在该示例中的USB键盘43)时,USB 装置监控单元使得操作面板控制单元显示指示结果的消息(见图15)。因此,由操作面板4 将不能使用USB键盘43的结果通知给用户。另一方面,当USB装置监控单元从扩展程序初始化检查单元中接收到完成所有扩 展程序的初始化处理的结果的通知时,当确定能够使用USB装置时,USB装置监控单元将连 接了 USB装置的结果通知能够使用USB装置的应用程序。因此,应用程序能够使用USB装置。在上述第二实施例中,USB装置监控单元等待预定时间(例如,一分钟)。因此,根 据第二实施例,即使在预定时间内完成了所有扩展程序的初始化处理,USB装置监控单元也 会等待预定时间。另一方面,根据本实施例,当USB装置监控单元接收到完成所有扩展程序的初始 化处理的结果的通知时,当确定不能使用USB装置时,USB装置监控单元请求显示用于通知 用户结果的消息。当确定能够使用USB装置时,USB装置监控单元将连接了 USB装置的结 果通知能够使用USB装置的应用程序。因此,能够省略不必要的等待时间。当需要的最小 时间段结束时(当完成所有扩展程序的初始化处理时),能够将不能使用USB装置的结果通 知给用户或者能够将USB装置的连接通知给应用程序。因此,有可能提高系统响应性。另外,在ROM 24中预先并入以及提供在根据本发明的实施例的图像形成设备中 执行的程序控制程序。在根据本发明的实施例的图像形成设备中执行的程序控制程序能够被配置为在 诸如以能够安装或者执行的文件格式的CD-ROM、FD (软盘)、CD-R、或者DVD (数字多用途 盘)的计算机可读记录介质中记录并且提供。另外,在根据本发明实施例的图像形成设备中执行的程序控制程序能够被存储在 连接到诸如因特网之类的网络的计算机中,以及通过经由网络下载来提供。此外,在根据本 发明实施例的图像形成设备中执行的程序控制程序能够通过诸如因特网之类的网络来提 供或者分发。在根据本发明实施例的图像形成设备中执行的程序控制程序具有包括以上部件 (0S (包括驱动组)、服务组(包括USB装置监控单元、操作面板控制单元、扩展程序启动单 元、以及扩展程序初始化检查单元)、打印机应用程序、扫描仪应用程序、复印应用程序、以 及传真应用程序)的模块配置。作为实际的硬件,CPU(处理器)从ROM中读出以及执行程 序控制程序,因而部件被加载在主存储器上。因此,在主存储器上生成OS (包括驱动组)、服 务组(包括USB装置监控单元、操作面板控制单元、扩展程序启动单元、以及扩展程序初始 化检查单元)、打印机应用程序、扫描仪应用程序、复印应用程序、以及传真应用程序。在本发明的实施例中,已经解释了将本发明的图像形成设备应用于至少具有复印功能、打印机功能、扫描仪功能、以及传真功能中的两个功能的多功能产品的示例。然而,图像形成设备能够应用于复印机、打印机、扫描仪、以及传真机中的任意。如上所述,根据本发明的一个方面,即使难以重写或者添加系统程序,也能够动态地确定是否能够使用外部装置。虽然通过有关具体实施例对本发明作出了完整而清晰的描述,但是所附的权利要求并不限于此,对于本领域技术人员来说,将所述的权利要求解释为具体体现落入在此提 出的基本教导之内的所有修改和替换。
权利要求
一种信息处理设备,包括外部记录介质连接单元,被配置为连接外部记录介质;外部装置连接单元,被配置为以预定接口连接多个类型的外部装置;程序启动单元,启动存储在连接到所述外部记录介质连接单元的外部记录介质中的程序;外部装置连接检测单元,检测外部装置与所述外部装置连接单元的连接;第一信息获取单元,当所述外部装置连接检测单元检测到所述外部装置与所述外部装置连接单元的连接时,获取与连接到所述外部装置连接单元的所述外部装置相关的第一信息;第二信息获取单元,通过执行所述程序来获取与能够使用的外部装置相关的第二信息;确定单元,通过比较所述第一信息和所述第二信息来确定是否能够使用连接到所述外部装置连接单元的所述外部装置;控制单元,当所述确定单元确定能够使用连接到所述外部装置连接单元的所述外部装置时,控制连接到所述外部装置连接单元的所述外部装置;以及通知单元,当所述确定单元确定不能使用连接到所述外部装置连接单元的所述外部装置时,通知用户不能使用所述外部装置。
2.根据权利要求1所述的信息处理设备,其中 所述预定接口是通用串行总线,以及所述第一信息和所述第二信息是以通用串行总线规范定义的描述符信息的一部分或 者全部。
3.一种用于信息处理设备的程序控制方法,所述信息处理设备包括被配置为连接外部 记录介质的外部记录介质连接单元以及被配置为以预定接口连接到多个类型的外部装置 的外部装置连接单元,所述程序控制方法包括启动在连接到所述外部记录介质连接单元的外部记录介质中记录的程序; 检测外部装置与所述外部装置连接单元的连接;第一获取步骤,包括在该检测步骤时检测到所述外部装置与所述外部装置连接单元的 连接时,获取与连接到所述外部装置连接单元的所述外部装置相关的第一信息;第二获取步骤,包括通过执行所述程序来获取与能够使用的外部装置相关的第二信息;通过比较所述第一信息与所述第二信息,确定是否能够使用连接到所述外部装置连接 单元的所述外部装置;当确定能够使用连接到所述外部装置连接单元的所述外部装置时,控制连接到所述外 部装置连接单元的所述外部装置;以及第一通知步骤,包括当确定不能使用连接到所述外部装置连接单元的所述外部装置 时,通知用户不能使用所述外部装置。
4.根据权利要求3所述的程序控制方法,其中 所述预定接口是通用串行总线,以及所述第一信息和所述第二信息是以通用串行总线规范定义的描述符信息的一部分或者全部。
5.根据权利要求3所述的程序控制方法,其中,所述确定步骤包括当在所述第一获取步骤获取到所述第一信息且在所述第二获取步骤没有获取到所述 第二信息时,等待预定时间,当在所述预定时间内在所述第二获取步骤获取到所述第二信息时,通过比较所述第 一信息和所述第二信息,来确定是否能够使用连接到所述外部装置连接单元的所述外部装 置,以及当在所述预定时间内在所述第二获取步骤没有获取到所述第二信息时,确定不能使用 所述外部装置。
6.根据权利要求4所述的程序控制方法,其中,所述确定步骤包括当在所述第一获取步骤获取到所述第一信息且在所述第二获取步骤没有获取到所述 第二信息时,等待预定时间,当在所述预定时间内在所述第二获取步骤获取到所述第二信息时,通过比较所述第一 信息和所述第二信息,确定是否能够使用连接到所述外部装置连接单元的所述外部装置, 以及当在所述预定时间内在所述第二获取步骤没有获取到所述第二信息时,确定不能使用 所述外部装置。
7.根据权利要求3所述的程序控制方法,还包括第二通知步骤,包括当完成在启动时 启动的所述程序的初始化时,将所述程序的初始化的完成通知给所述确定步骤,其中所述确定步骤包括当在所述第一获取步骤获取到所述第一信息以及在所述第二获取步骤没有获取到所 述第二信息时,等待来自所述第二通知步骤的通知,当直到接收到来自所述第二通知步骤的通知为止在所述第二获取步骤获取到所述第 二信息时,通过比较所述第一信息和所述第二信息,来确定是否能够使用连接到所述外部 装置连接单元的所述外部装置,以及在接收到来自所述第二通知步骤的通知时没有在所述第二获取步骤获取到所述第二 信息时,确定不能使用所述外部装置。
8.根据权利要求4所述的程序控制方法,还包括第二通知步骤,包括当完成在启动时 启动的程序的初始化时,将所述程序的初始化的完成通知给所述确定步骤,其中所述确定步骤包括当在所述第一获取步骤获取到所述第一信息而在所述第二获取步骤没有获取到所述 第二信息时,等待来自所述第二通知步骤的通知,当直到接收到来自所述第二通知步骤的通知为止在所述第二获取步骤获取到所述第 二信息时,通过比较所述第一信息和所述第二信息,确定是否能够使用连接到所述外部装 置连接单元的所述外部装置,以及在接收到来自所述第二通知步骤的通知时没有在所述第二获取步骤获取到所述第二 信息时,确定不能使用所述外部装置。
9.一种包括具有具体表现为介质的计算机可读程序代码的计算机可用介质的计算机 程序产品,用于实现包括被配置为连接外部记录介质的外部记录介质连接单元以及被配置为以预定接口连接多个类型的外部装置的外部装置连接单元的信息处理设备的程序控制 方法,当执行时,所述程序代码使得计算机执行启动在连接到所述外部记录介质连接单元的外部记录介质中记录的程序; 检测外部装置与所述外部装置连接单元的连接;第一获取步骤,包括在检测步骤当检测到所述外部装置与所述外部装置连接单元的连 接时,获取与连接到所述外部装置连接单元的所述外部装置相关的第一信息;第二获取步骤,包括通过执行所述程序获取与能够使用的外部装置相关的第二信息; 通过比较所述第一信息与所述第二信息,确定是否能够使用连接到所述外部装置连接 单元的所述外部装置;当确定能够使用连接到所述外部装置连接单元的所述外部装置时,控制连接到所述外 部装置连接单元的所述外部装置;以及第一通知步骤,包括当确定不能使用连接到所述外部装置连接单元的所述外部装置 时,通知用户不能使用所述外部装置。
10.根据权利要求9所述的计算机程序产品,其中 所述预定接口是通用串行总线,以及所述第一信息和所述第二信息是以通用串行总线规范定义的描述符信息的一部分或 者全部。
11.根据权利要求9所述的计算机程序产品,其中,所述确定步骤包括当在所述第一获取步骤获取到所述第一信息且在所述第二获取步骤没有获取到所述 第二信息时,等待预定时间,当在所述预定时间内在所述第二获取步骤获取到所述第二信息时,通过比较所述第一 信息和所述第二信息,确定是否能够使用连接到所述外部装置连接单元的外部装置,以及当在所述预定时间内在所述第二获取步骤没有获取到所述第二信息时,确定不能使用 所述外部装置。
12.根据权利要求10所述的计算机程序产品,其中,所述确定步骤包括当在所述第一获取步骤获取到所述第一信息且在所述第二获取步骤没有获取到所述 第二信息时,等待预定时间,当在所述预定时间内在所述第二获取步骤获取到所述第二信息时,通过比较所述第一 信息和所述第二信息,确定是否能够使用连接到所述外部装置连接单元的外部装置,以及当在所述预定时间内在所述第二获取步骤没有获取到所述第二信息时,确定不能使用 所述外部装置。
13.根据权利要求9所述的计算机程序产品,其中,所述程序代码还使得计算机执行第 二通知步骤,包括当完成在启动时启动的程序的初始化时,将所述程序的初始化的完成通 知给所述确定步骤,其中所述确定步骤包括当在所述第一获取步骤获取到所述第一信息且在所述第二获取步骤没有获取到所述 第二信息时,等待来自所述第二通知步骤的通知,当直到接收到来自所述第二通知步骤的通知为止在所述第二获取步骤获取到所述第 二信息时,通过比较所述第一信息和所述第二信息,确定是否能够使用连接到所述外部装置连接单元的外部装置,以及在接收到来自所述第二通知步骤的通知时在所述第二获取步骤没有获取到所述第二 信息时,确定不能使用所述外部装置。
14.根据权利要求10所述的计算机程序产品,其中,所述程序代码还使得计算机执行 第二通知步骤,包括当完成在启动时启动的程序的初始化时,将所述程序的初始化的完成 通知给所述确定步骤,其中 所述确定步骤包括当在该第一获取步骤时获取到该第一信息以及在该第二获取步骤时没有获取到该第 二信息时,等待来自该第二通知步骤的通知,当直到接收到来自所述第二通知步骤的通知为止在所述第二获取步骤获取到所述第 二信息时,通过比较所述第一信息和所述第二信息,确定是否能够使用连接到所述外部装 置连接单元的外部装置,以及在接收到来自所述第二通知步骤的通知时在所述第二获取步骤没有获取到所述第二 信息时,确定不能使用所述外部装置。
全文摘要
公开了信息处理设备、程序控制方法及计算机程序产品。程序启动单元启动存储在连接到外部记录介质连接单元的外部记录介质中的程序。外部装置连接检测单元检测外部装置与外部装置连接单元的连接。第一信息获取单元获取与连接到外部装置连接单元的外部装置相关的第一信息。第二信息获取单元通过执行程序获取与能够使用的外部装置相关的第二信息。确定单元通过比较第一信息和第二信息,确定是否能够使用外部装置。当确定能够使用外部装置时,控制单元控制外部装置。另一方面,当确定不能使用外部装置时,通知单元通知用户不能使用外部装置。
文档编号G06F13/10GK101799792SQ20101011763
公开日2010年8月11日 申请日期2010年2月10日 优先权日2009年2月10日
发明者滨崎考成 申请人:株式会社理光
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1