集成电路存储器组件的自动运行的制作方法

文档序号:6486209阅读:179来源:国知局
专利名称:集成电路存储器组件的自动运行的制作方法
技术领域
本发明涉及一种利用诸如闪速存储器之类的存储介质来实现自动运行在所述存储介质上存储的可执行应用程序或安装程序的系统和方法。
技术领域
如本领域内所知,当把CD-ROM盘片插入CD-ROM驱动器时,可以自动地运行诸如软件安装程序之类的一些应用程序,其中所述CD-ROM驱动器有时可能被称作接入坞(dock)或读取器。操作中, 应用程序的这种自动运行由自动运行特征来提供,所述自动运行特征存储或并入在CD-ROM驱动器接入坞/读取器中。由主机(host)个人计算机根据由CD-ROM驱动器接入坞/读取器中的自动运行特征的激 活来执行在CD-ROM盘片上所存储的可执行程序或安装程序。在此 实施方式中,自动运行特征并入到硬件驱动器/接入坞/读取器,其与 存储介质相分离。
通用串行总线(USB)技术正在迅速赢得用于计算设备(诸如个人或膝上型计算机)上的外围设备接口技术选择的偏爱。与USB接口耦合的闪速存储器已成为方便且便携式的存储设备,其可以代替软盘 和光盘(CD)。
然而,流行且广泛采用的通用串行总线技术并不包括在接入坞/读取器中明显的自动运行特征。因此,诸如USB存储设备之类的常规集成电路存储设备并不具有自动运行功能。
因此,本发明向任何IC存储设备(诸如任何USB外围设备)提
供自动运行功能,所述IC存储设备具有与计算设备接口微控制器相 接的存储器组件。本发明在没有基于中间硬件的自动运行特征的情况 下,提供了从具有与计算设备的接口的存储器组件自动运行一个或多个可执行程序或应用程序安装程序。作为例子,这种接口可以是USB接口,这种计算设备可以是个人计算机。
例如,每个USB外围设备在内部包含USB微控制器,所述USB 微控制器执行与用于向主机计算设备(诸如个人计算机)识别所述设 备相关联的功能。依照本发明,把自动运行固件嵌入到USB微控制器 中。自动运行固件能够自动运行在USB设备的存储器组件上所存储的 可安装或可执行应用程序。所述固件充当用于在主机PC和存储器组 件之间转换所有命令和交互作用的桥接组件。
根据优选实施例的详细说明,本发明的附加描述和实施将变得显 而易见,将参考附图进行优选实施例的详细说明。


图1图示了依照本发明的自动运行集成电路(IC)存储设备的示 例性实施方式。
图2是现有技术设备的框图,其中主机个人计算机包括用于提供 自动运行特征的中间硬件接入坞。
图3是IC存储设备自动运行方法的流程图。
图4A和4B图示了依照本发明被嵌入到替代USB设备配置中的自动运行固件。
图5是具有多种功能的USB外围设备的框图。
图6是具有自动运行固件并且能访问多个不同功能的USB集线 器的框图。
图7是可由人操作的物理滑动开关的示意图。 图8是用软件实现的拷贝保护方法的流程图。
具体实施例方式
图1图示了依照本发明的自动运行集成电路(IC)存储设备100的示例性实施方式。自动运行IC存储设备可以是USB存储设备、压 縮闪速卡、智能卡等形式。为了说明,将参考通用串行总线(USB) 存储设备的实施方式来描述自动运行IC存储设备100。
自动运行IC存储设备100包括存储器组件110,它与具有自动 运行固件130的USB微控制器120通信,所述自动运行固件130并入 或嵌入在微控制器120中。自动运行IC存储设备100包括用于连接 到主机计算设备150 (例如,个人或膝上型计算机、手持式计算机、 PDA、灵巧电话机等,未示出)的上游端口 140。在图示的实施方式 中,上游端口 140是USB端口 。
当对于主机计算设备150激活IC存储设备100时,自动运行固 件130使在存储器组件110中存储的应用程序或可执行程序自动安装 或运行。此激活可以釆用各种方式来实现,包括把自动运行IC存储 设备IOO连接或插入到接入系统(docking system)或端口,所述接入 系统或端口存在于主机计算设备150上或与其相接。例如,具有并入 到USB微控制器120的自动运行固件130的IC存储设备100允许"USB 闪速驱动器"当被激活时自动地运行(即,自动运行),所述USB闪 速驱动器存储一个或多个应用可执行或可安装程序,所述激活诸如所 述闪速驱动器被插入主机PC 150的USB端口中。
图2是现有技术设备的框图,其中主机个人计算机200包括中间 硬件接入坞220,所述中间硬件接入坞220为像CD-ROM 230之类的 存储介质提供自动运行特征。中间硬件接入坞220用作存储介质读取 器,其可以内部集成在主机个人计算机200中,也可以外部连接到所 述主机个人计算机200和存储介质230。
在此现有技术实施方式中,把CD-ROM盘片230插入CD-ROM接入坞/读取器220可以激活自动运行特征,所述自动运行特征存储或 并入在CD-ROM接入坞/读取器220中。然后基于CD-ROM接入坞/ 读取器220的自动运行特征的激活,可以由主机个人计算机200来执 行在CD-ROM盘片230上所存储的可执行程序或安装程序。
作为这种现有技术实施方式的另一例子,连接到主机计算设备(诸 如个人计算机)的闪速存储卡读取器还可以包括自动运行特征,所述
自动运行特征可以激活可执行程序或安装程序以便在所述主机计算设 备上运行。
这种现有技术实施方式的缺点在于把自动运行特征并入与存储介 质分离的硬件接入坞或读取器中。然而,流行且广泛采用的通用串行 总线技术并不包括这种明显的自动运行特征。因此,诸如USB存储设 备之类的常规集成电路存储设备并不具有自动运行功能。相比之下, 本发明向任何IC存储设备(诸如任何USB外围设备)提供了自动运 行功能,.所述IC存储设备具有与USB微控制器相接的存储器组件。
图3是IC存储设备自动运行方法300的流程图,所述方法可以 从并入USB控制器120的固件130上实现。
在步骤305,把USB外围设备插入或连接到主机计算设备(例如, 个人计算机)的USB端口。
在步骤310,主机计算设备执行列举(enumeration)以便识别新 附加的USB外围设备。
步骤320询问所述USB外围设备是否包括启用的自动运行固件。 如果是的话,步骤320继续至步骤330。如果不是的话,步骤320继 续至步骤370。
在步骤330, USB外围设备中的自动运行固件用设备接口描述通 告自身。例如,设备接口描述例如可以包括大容量存储器类(Mass Storage Class )、 SCSI透明命令集、对应于CD-ROM的仅批量传输(Bulk Only Transport)。
在步骤340,主机和USB外围设备使用例如标准MMC-2规范集 来彼此通信。所述通信包括依照MMC-2规范从自动运行固件对主机 命令作出响应。作为MMC-2规范的一部分,主机请求列举在根目录 中的文件并且自动运行固件对所述请求作出响应。
在步骤350,自动运行固件通知主机存在要执行的自动运行的可 执行文件,并且向所述主机提供所述文件。例如,所述文件可以被命 名为"Autorun.inf",所述文件可以被存储在USB外围设备的存储器 组件上。所述主机执行自动运行的可执行文件以便提供自动运行功
步骤360询问将是否再次列举或"重新列举"所述自动运行固件。 如果是的话,那么步骤360继续至步骤370。如果不是的话,那么步 骤360继续至步骤390。重新列举使自动运行固件能够向主机把自身 通告为一个或多个其它USB外围设备(例如数据存储设备,通信适配 器等),或者如果没有重新列举,那么自动运行固件可以继续按照 MMC-2规范起作用。
在步骤370,自动运行固件把自身重新列举或标识为另一 USB设 备,诸如USB闪速驱动器或USB无线(例如,蓝牙、WiFi、 IrDA) 设备或"软件狗"。利用这种重新列举,自动运行固件利用设备接口 描述符来向其它USB设备(例如,USB闪速驱动器或USB蓝牙软件 狗)标识自身。
在步骤380,自动运行固件加载与所列举的USB外围设备(例如,
USB闪速驱动器或USB蓝牙软件狗)相关联的固件。
在步骤390,自动运行固件被配置为并不重新列举自身,并且继 续作为实现MMC-2规范的虚拟CD-ROM类型的设备。
处理步骤320、 330、 340、 350和360对应于自动运行固件的实 施。步骤390根据用于实现SCSI命令集和MMC-2规范的存储器组件 来提供虚拟大容量存储设备的实施。
依照本发明的自动运行固件可以被嵌入到多个USB设备配置中, 以便向各种独特的USB外围设备提供自动运行功能并且向其它外围设 备提供类似的功能。例如,图4A示出了 USB集线器400,其中具有 自动运行固件415的USB微控制器410与内部存储器组件420通信。 在图4B中,经由USB下游端口 470把USB微控制器450连接到外 部储存器组件460。
参考图4A,用于形成USB集线器400 —部分的USB微控制器410 典型地是中继器类型的实体,其允许级联的多个USB外围设备经由单 个上游端口连接到主机系统。USB微控制器410包括对编程能力的支 持,其包括自动运行固件415。然后自动运行固件可以被移植到USB 微控制器410上来工作。可以把固件存储在内部存储器组件420上。 作为替换,可以把自动运行固件存储在外部存储器上,所述外部存储 器是附加的USB存储器组件430。
作为另一配置,图5是具有多种功能的USB外围设备500的框 图。在此实施方式中,USB外围设备500包括具有USB接口的内部 微处理器510,或者作为替换包括USB微控制器,其与存储器组件520 和无线(例如,蓝牙)联网硬件530通信。结果,USB外围设备500 能够作为无线(例如,蓝牙)联网设备或"软件狗"以及作为USB闪 速驱动器来操作,这两者都是可利用自动运行功能来访问的。
在一个配置中,微处理器510具有USB接口能力。它与存储器 组件520和蓝牙无线电组件530耦合。微处理器510实现蓝牙堆栈的 客户层。微处理器510所执行的固件被存储在存储器组件520中。自 动运行固件还可以被另外存储为现有固件的一部分功能,或独立地存 储在存储器组件520中。在另一配置中,微处理器510可以不直接具 有USB接口能力,并且可以使用独立的USB微控制器(未示出)。
在USB外围设备中包括自动运行固件的特征在于可以把软件应 用程序与USB外围设备捆绑。捆绑的软件应用程序可以利用或不利用 USB外围设备。
作为一个例子,图6是USB集线器600的框图,所述USB集线 器600包括具有自动运行固件615并且能访问一个或多个不同功能或 USB外围设备的USB微控制器610,所述USB外围设备诸如外部存 储器组件630、蓝牙联网组件640或WLAN组件650。可以结合USB 集线器600形成这种USB外围设备630 - 650。如图所示,USB集线 器600可以与这些组件630 - 650中的一个或多个外部连接,或者作为 替换,组件630 - 650中的一个或多个可以被内部集成以便形成USB 外围设备或具有多种不同功能的设备。
可以存在来自这些外围设备中每个或某些外围设备的自动运行固 件的多个执行。从而自动运行固件允许软件(例如设备驱动程序,同 步软件等)的分发(distribution),所述软件可以与任何USB外围设 备一起自动运行。
实施选项还包括允许由外部机构(例如,开关)启用或禁止自动 运行特征的机构,所述外部机构被包括在所述设备或外围设备上。所 述开关可以由人来手动操作。所述开关可以是简单的双模式(例如, 自动运行开/关)开关,或可以是从两个以上模式之间选择的开关。
图7是可由人来操作的物理滑动开关700的示意图,其允许人们从USB设备或"软件狗"上可用的多个模式、功能或外围设备之间选 择。作为一个例子,开关700涉及可从图6的USB集线器600中获得 的特征或外围设备,包括外部储存器组件630和用于向其主机PC添 加无线(例如蓝牙、WiFi、 IrDA)接口的无线软件狗或模块(640或 650)。
在此示例性的附图中,开关700具有4个用户可选的位置。在位 置710,启用自动运行功能,禁止无线组件。在位置720,禁止自动运 行功能,禁止无线组件。在位置730,启用自动运行功能,启用无线组 件。在位置740,禁止自动运行功能,启用无线组件。
自动运行固件能够实现可从存储器组件自动运行的软件的分发。 还存在独特的安全机制,可以包括所述安全机制以便通过自动运行固 件保护可从存储器组件安装或执行的软件。
内部存储器组件(例如,图6的存储器组件620)的扇区可以通 过密码保护或由诸如尤其是锁之类的物理安全装置来防止被公共访 问。闪速存储器组件还可以被分段为公共和私有扇区。私有扇区可以 用来存储不能由用户査看或访问的可安装或可执行程序,而公共扇区 可以由用户依照常规方式来查看或访问。经由存储器组件分发的可安 装或可执行软件可以被存储在所述存储器组件的保护区域中。此可安 装软件的经由拷贝保护的安全性可以通过只允许可执行应用程序启动 程序(application launcher)访问该可安装软件来实现,所述应用程序 启动程序从存储器组件自动运行。
在一个实施方式中,可执行应用程序启动程序具有以下特性它 从存储器组件自动运行,并且它能够访问存储器组件的保护或私有区 域。通过向存储器控制器(例如USB微控制器)和/或向在存储器组
件的保护区域中的可安装软件认证自身来获得此访问。认证机制可以 是基于密码的机制或更复杂的密码算法。在各种技术之中,用于认证 的是数字签名和唯一标识符,像蓝牙设备地址、MAC地址等。可执行 应用程序启动程序可以直接向存储器控制器软件和/或可安装软件或 向独立的认证软件认证自身,所述独立的认证软件存在于存储器组件 的保护区域中。
一般可以构建所述可执行应用程序启动程序以便执行存在于存储 器组件的保护区域内的任何或所有可执行和可安装程序。作为替换, 可执行应用程序启动程序可以被编程来从所述保护区域启动特定的可
执^:或可安装程序。考虑到存储器组件可能被分段为"n"个保护扇区, 其中n大于1,所述可执行应用程序启动程序可以依照这里所描述的机 制来访问这些扇区中的一个或多个。保护存储器区域例如可以包含可 执行软件(也称作可执行应用程序)或可安装软件(也称作可安装应 用程序)或保护数据。
图8是用软件实现的拷贝保护方法的流程图,所述方法用于使用 自动运行固件来保护可执行或可安装的软件。
在步骤810,在IC存储设备的存储器组件中存储的可执行应用程 序启动程序通过在所述IC存储设备上存储的自动运行固件来在主机计 算机上自动运行。当激活IC存储设备时,诸如当出现把存储设备插入 主机计算机的端口或插槽时,自动运行固件自动操作。
在步骤820,应用程序启动程序向存在于存储器组件的保护区域 中的认证代理软件认证自身。认证代理软件可以并入在被保护的可执 行或可安装软件内或可以是独立的应用程序。认证算法可以是基于密 码的或可以涉及密码技术。
步骤830询问所述认证是否成功。如果不成功的话,拒绝对所保
护的可执行或可安装程序的访问。如果认证成功,那么步骤830继续
至步骤840,并且可执行应用程序启动程序获得对所保护的存储器区域
的访问。
在步骤S40,可执行应用程序启动程序执行在存储器组件的保护 区域中存储的可执行或可安装应用程序。可执行应用程序启动程序还 可以被编程来执行存在于存储器组件的保护区域内的任何或所有可执 行和可安装程序。
在步骤850,在主机计算机上执行由此所启动的可执行和可安装 程序。
鉴于可以应用本发明原理的许多可能的实施例,应当认识到,具 体实施例仅是说明性的,并且不应当被理解为限制本发明的范围。相 反地,我们主张本发明所有这种实施例都落入权利要求及其等效物的 范围和精神内。
权利要求
1. 一种可连接到主机计算设备的集成电路存储设备,包括控制器,用于控制在所述集成电路存储设备和所述主机计算设备之间的交互作用;存储器组件,用于存储所选择的可在所述主机计算设备上操作的软件;和在所述集成电路存储设备上存储的自动运行软件,用于当利用所述主机计算设备激活所述集成电路存储设备时自动在所述主机计算设备上加载并运行所选择的软件。
2. 如权利要求1所述的集成电路存储设备,其中把所述自动运 行软件嵌入到所述控制器中。
3. 如权利要求1所述的集成电路存储设备,其中存储器组件包 括受保护的存储器组件,并且所选择的软件存储在所述受保护的存储 器组件中,并且其中由自动运行软件对所选择的软件进行访问要求认 证所述自动运行软件。
4. 如权利要求1所述的集成电路存储设备,还包括无线联网组 件,并且所选择的软件提供所述无线联网组件在所述主机计算设备上 的操作。
5. 如权利要求1所述的集成电路存储设备,还包括可由用户操 作的手动开关,所述手动开关允许用户在多种操作状态之间选择。
6. 如权利要求5所述的集成电路存储设备,其中所述可由用户 操作的手动开关允许用户从两个以上的操作状态之间选择。
7. 如权利要求1所述的集成电路存储设备,其具有到多个不同 的外围设备的连接。
8. 如权利要求1所述的集成电路存储设备,还包括可连接到通 用串行总线端口的连接。
9. 如权利要求1所述的集成电路存储设备,其中所述控制器和 存储器组件一起作为所述主机计算设备的存储设备操作。
10. —种集成电路存储设备自动运行方法,包括当利用主机计算机激活集成电路存储设备时确定是否启用在集成电路存储设备上的自动运行软件;利用设备接口描述来向所述主机计算机标识所启用的自动运行软件;在所述主机计算机上加载并运行所述自动运行软件。
11. 如权利要求10所述的方法,还包括所述自动运行软件向所 述主机计算设备把自身重新列举为不同类型的设备,并且所述集成电 路存储设备作为所述不同类型的设备与所述主机计算设备操作。
12. 如权利要求11所述的方法,其中所述不同类型的设备包括 无线联网设备。
13. 如权利要求10所述的方法,其中所述设备接口描述依照与 CD-ROM驱动器相似的方式来标识所述集成电路存储设备。
14. 如权利要求10所述的方法,其中所述集成电路存储设备包 括受保护的存储器组件,在此存储所选择的可在主机计算机上操作的 软件,并且其中在所述主机计算机上加载并执行所选择的软件要求由 在所述受保护的存储器组件中所存储的安全应用特征来认证所述自动 运行软件。
15. 如权利要求14所述的方法,其中所述安全应用特征被包括 在所选择的应用程序中。
16. —种其中具有集成电路存储设备自动运行软件的计算机可读 介质,包括用于利用设备接口描述来向主机计算机标识所启用的自动运行软 件的软件;和用于在所述主机计算机上加载并运行所述自动运行软件的软件。
17. 如权利要求16所述的介质,还包括用于当利用主机计算机 激活集成电路存储设备时确定是否启用在集成电路存储设备上的自动 运行软件的软件(可以移到从属权利要求)。
18. 如权利要求16所述的介质,还包括用于使所述自动运行软 件向主机计算设备把自身重新列举为不同类型的设备的软件,以便所 述集成电路存储设备作为所述不同类型的设备与所述主机计算设备操 作。
19. 如权利要求16所述的介质,还包括在集成电路存储设备中 的受保护的存储器组件,在此存储所选择的可在主机计算机上操作的 软件,以及当由在所述受保护的存储器组件中所存储的安全应用特征 认证所述自动运行软件时,用于在所述主机计算机上加载并执行所选 择的软件的软件。
全文摘要
自动运行功能被并入诸如任何USB外围设备之类的集成电路存储设备(100)中,所述集成电路存储设备具有与USB微控制器(120)相接的存储器组件(110)。这在没有基于中间硬件的自动运行特征的情况下,提供了从具有USB接口的存储器组件(110)自动运行一个或多个可执行程序或应用程序安装程序。USB外围设备在内部包括USB微控制器(120),所述USB微控制器执行与用于向主机计算设备(150)(诸如个人计算机)标识所述设备相关联的功能。把自动运行固件(130)嵌入到USB微控制器(120)中。自动运行固件(130)能够实现自动运行在USB设备的存储器组件(110)上所存储的可安装或可执行应用程序。所述固件(130)充当用于在主机PC(150)和存储器组件(110)之间转换所有命令和交互作用的桥接组件。
文档编号G06F3/00GK101208657SQ200480016309
公开日2008年6月25日 申请日期2004年4月12日 优先权日2003年4月11日
发明者和 张, 维尼纳森·维斯万纳森 申请人:福来西奥德技术公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1