CN107943725A - 一种实现usb设备内程序运行的方法及设备 - Google Patents
一种实现usb设备内程序运行的方法及设备 Download PDFInfo
- Publication number
- CN107943725A CN107943725A CN201711379725.6A CN201711379725A CN107943725A CN 107943725 A CN107943725 A CN 107943725A CN 201711379725 A CN201711379725 A CN 201711379725A CN 107943725 A CN107943725 A CN 107943725A
- Authority
- CN
- China
- Prior art keywords
- usb device
- program
- rom drive
- host computer
- equipment
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
- G06F13/105—Program control for peripheral devices where the programme performs an input/output emulation function
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4411—Configuring for operating with peripheral devices; Loading of device drivers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0042—Universal serial bus [USB]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
Abstract
本发明实施例公开了一种实现USB设备内程序运行的方法及设备,其方法包括:在USB设备插入到上位机后,所述上位机对所述USB设备进行设备识别,所述USB设备同时支持U盘设备和模拟光驱设备的识别功能;所述上位机基于上位机操作系统设置识别出所述USB设备的设备功能类型,所述设备功能类型为:U盘设备、和/或模拟光驱设备;基于设备功能类型运行存储在所述USB设备上所对应的光驱运行程序。实施本发明实施例,由于USB设备同时支持U盘设备和模拟光驱设备的识别功能,以一种设备功能类型被上位机所识别枚举出,保障了安装包文件不管是在任何操作系统下都可以实现安装。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种实现USB设备内程序运行的方法。
背景技术
Microsoft Windows,是美国微软公司研发的一套操作系统,它问世于1985年,起初仅仅是Microsoft-DOS模拟环境,后续的系统版本由于微软不断的更新升级,不但易用,也慢慢的成为家家户户人们最喜爱的操作系统。Windows采用了图形化模式GUI,比起从前的DOS需要键入指令使用的方式更为人性化。
MAC是苹果公司自1984年起以“Macintosh”开始开发的个人消费型计算机,如:iMac、Mac mini、Macbook Air、Macbook Pro、Macbook、Mac Pro等计算机。苹果公司使用独立的mac OS系统,最新的OS X系统基于NeXT系统开发,不支持兼容,是一套完备而独立的操作系统。
目前USB设备中采用flash模拟为只读U盘来存储安装包或者使用flash模拟为光驱来存储安装包,如果仅仅模拟为U盘的话,会存在U盘无法自动弹出,比如在U盘插入到MAC上无法自动识别被弹出,也会因操作系统的安全设置,U盘也无法被解析弹出。若仅仅模拟为光驱的话即当做一个模拟光驱设备,而操作系统未包含光驱的驱动,会导致光驱无法识别,即光驱无法识别是因为操作系统没有安装USB光驱驱动,导致无法正确识别出USB设备上的安装包,也会存在一些安全原因,禁止了auto run,导致光驱无法正常弹出。
发明内容
本发明的目的在于克服现有技术的不足,本发明提供了一种实现USB设备内程序运行的方法和设备,在USB设备插入主设备后,上位机系统基于自己的操作系统设置来识别出USB设备相应的功能类型,从而实现对USB设备上的光驱运行程序的运行。
为了解决上述问题,本发明提出了一种实现USB设备内程序运行的方法,所述方法包括如下步骤:
在USB设备插入到上位机后,所述上位机对所述USB设备进行设备识别,所述USB设备同时支持U盘设备和模拟光驱设备的识别功能;
所述上位机基于上位机操作系统设置识别出所述USB设备的设备功能类型,所述设备功能类型为:U盘设备、和/或模拟光驱设备;
基于设备功能类型运行存储在所述USB设备上所对应的光驱运行程序。
所述基于设备功能类型运行存储在所述USB设备上所对应的光驱运行程序包括:
在所述上位机识别出所述USB设备的设备功能类型为U盘设备时,解析出所述USB设备上所存储的光驱驱动和引导启动光驱程序的程序;所述上位机基于所述光驱驱动和引导启动光驱程序的程序运行存储在所述USB设备上所对应的光驱运行程序;或者
在所述上位机识别出所述USB设备的设备功能类型为模拟光驱设备时,基于模拟光驱设备运行存储在所述USB设备上所对应的光驱运行程序。
所述上位机基于所述光驱驱动和引导启动光驱程序的程序运行存储在所述USB设备上所对应的光驱运行程序包括:
在识别出用户点击所述光驱驱动和引导启动光驱程序的程序后,所述上位机基于所述光驱驱动和引导启动光驱程序的程序加载光驱驱动,并在光驱驱动加载完毕之后,运行存储在所述USB设备上所对应的光驱运行程序。
所述基于模拟光驱设备运行存储在所述USB设备上所对应的光驱运行程序包括:
在识别出用户点击所述模拟光驱设备后,基于模拟光驱设备运行存储在所述USB设备上所对应的光驱运行程序。
所述基于设备功能类型运行存储在所述USB设备上所对应的光驱运行程序还包括:
基于操作系统类型运行存储在所述USB设备上所对应的光驱运行程序。
所述操作系统类型为windows操作系统MAC操作系统,所述USB设备上所对应的光驱运行程序还包括:windows引导程序、MAC引导程序,所述基于操作系统类型运行存储在所述USB上所对应的光驱运行程序包括:
基于windows引导程序或者运行windows类型的光驱运行程序;或者基于MAC引导程序运行MAC类型的光驱运行程序。
相应的,本发明还提出了一种实现USB设备内程序运行的方法,所述方法包括如下步骤:
在USB设备插入到上位机上电后,USB设备判断USB设备被上位机所枚举出的设备功能类型,所述设备功能类型为:U盘设备、和/或模拟光驱设备,所述USB设备同时支持U盘设备和模拟光驱设备的识别功能;
所述USB设备按照所枚举出的设备功能类型供上位机运行存储在USB设备上所对应的光驱运行程序。
所述USB设备按照所枚举出的设备功能类型供上位机运行存储在USB设备上所对应的光驱运行程序包括:
在枚举出所述USB设备的设备功能类型为U盘设备时,所述USB设备将存储的光驱驱动和引导启动光驱程序的程序供上位机解析;并以所述光驱驱动和引导启动光驱程序的程序供所述上位机运行存储在所述USB设备上所对应的光驱运行程序;或者
在枚举出所述USB设备的设备功能类型为模拟光驱设备时,所述USB设备将存储在所述USB设备上所对应的光驱运行程序供所述上位机运行。
所述USB按照操作系统类型存储着光驱运行程序,所述操作系统类型为:windows操作系统或者MAC操作系统,所述USB设备按照所枚举出的设备功能类型供上位机运行存储在USB设备上所对应的光驱运行程序包括:
所述USB设备解析出上位机的操作系统类型,并按照操作系统类型供所述上位机运行所述光驱运行程序。
相应的,本发明还提出了一种USB设备,所述USB设备包括:
USB接口模块,用于插入上位机;
存储模块,用于存储可执行程序,并在USB设备插入上位机上电后,供上位机运行所述可执行程序,所述可执行程序供执行如权利要求7-9任一项所述的方法。
相应的,本发明还提出了一种计算机设备,所述系统上存储有计算机程序,所述计算机程序包括可执行程序,所述程序指令被处理器执行时使所述可执行程序执行如权利要求1-6任一项所述的方法。
在本发明实施例中,由于USB设备同时支持U盘设备和模拟光驱设备的识别功能,不管是插入到MAC系统还是windows操作系统上都可以以一种设备功能类型被上位机所识别枚举出,然后在基于该识别出的设备功能类型完成对USB设备上光驱运行程序的运行,保障了安装包文件不管是在任何操作系统下都可以实现安装。
在USB设备被上位机枚举出为U盘设备时,可以基于USB设备内的光驱驱动对上位机进行模拟光驱设备的驱动安装,然后基于引导驱动光驱程序来加载光驱运行程序,实现对USB设备上的光驱运行程序的解析或者文件包的安装。在USB设备被上位机枚举出为模拟光驱设备时,可以基于模拟光驱设备直接运行光驱运行程序,实现对USB设备上的光驱运行程序的解析或者文件包的安装。
整个上位机或者USB设备可以根据操作系统类型来引导出操作系统所对应的光驱运行程序,比如基于windows引导程序或者运行windows类型的光驱运行程序;或者基于MAC引导程序运行MAC类型的光驱运行程序。基于操作系统匹配所对应的光驱运行程序,避免了不同操作系统下,各种程序间无法兼容而不能运行。
整个USB所设置成具有两种操作系统所兼容的功能设备,也同时具有U盘和模拟光驱设备枚举功能,基于操作系统所对应的引导程序,从而实现多系统兼容性,保障USB设备通用性,避免USB设备插入时,在系统设置项导致其中一项不能正常运行时,还可以通过另一组功能设备被枚举出,从而实现USB设备内光驱运行程序的运行功能,保证程序包的运行或者文件安装等。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1是本发明实施例中的实现USB设备内程序运行的系统结构示意图;
图2是本发明实施例中的实现USB设备内程序运行的第一方法流程图;
图3是本发明实施例中的实现USB设备内程序运行的第二方法流程图;
图4示出了本发明实施例中基于模拟光驱设备弹窗后的显示状态图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例所涉及的实现USB设备内程序运行的方法,在USB设备插入到上位机后,该上位机对所述USB设备进行设备识别,这里的USB设备同时支持U盘设备和模拟光驱设备的识别功能;该上位机基于上位机操作系统设置识别出所述USB设备的设备功能类型,该设备功能类型为:U盘设备、和/或模拟光驱设备;基于设备功能类型运行存储在USB设备上所对应的光驱运行程序。
本发明实施例所涉及的实现USB设备内程序运行的方法,在USB设备插入到上位机上电后,USB设备判断USB设备被上位机所枚举出的设备功能类型,该设备功能类型为:U盘设备、和/或模拟光驱设备,该USB设备同时支持U盘设备和模拟光驱设备的识别功能;该USB设备按照所枚举出的设备功能类型供上位机运行存储在USB设备上所对应的光驱运行程序。
需要说明的是,这里的模拟光驱设备也为模拟光驱的设备,或者叫做模拟的光驱,即将USB设备模拟成光驱设备,或者模拟光驱的设备,或者是模拟的光驱。
相应的,图1示出了本发明实施例中的实现USB设备内程序运行的系统结构示意图,该系统包括:USB设备和上位机,其中:
USB设备包括USB接口模块和存储模块,USB接口模块可以插入到上位机上,存储模块存储可执行程序,在USB设备插入上位机上电后,供上位机运行所述可执行程序。USB设备将存储模块划分了U盘功能区和光驱功能区,即USB设备同时支持U盘设备和模拟光驱设备的识别功能。在USB设备插入到上位机上电后,USB设备判断USB设备被上位机所枚举出的设备功能类型,该设备功能类型为:U盘设备、和/或模拟光驱设备,该USB设备按照所枚举出的设备功能类型供上位机运行存储在USB设备上所对应的光驱运行程序。
具体实施过程中,由于上位机本身的系统设置原因,其在USB设备插入到上位机后,该上位机可能只以U盘的方式解析出USB设备,也可能只以模拟光驱设备的方式解析出USB设备,也可能是同时解析出是U盘和模拟光驱设备等,但不管是以哪种模式解析出来,都可以按照所枚举出的设备功能类型供上位机运行存储在USB设备上的光驱运行程序。
具体实施过程中,可以将U盘功能区设置成一个只读U盘供上位机解析或者枚举出,U盘功能区存储有光驱驱动和引导启动光驱程序的程序,光驱功能区存储有光驱运行程序。在USB设备被上位机枚举出是U盘设备时,该USB设备将光驱驱动和引导启动光驱程序的程序供上位机解析,一般在上位机上先弹出一个U盘窗口,而U盘窗口里面显示有光驱驱动和引导启动光驱程序,用户可以点击基于U盘所显示程序,然后启动上位机加载光驱驱动完成光驱驱动的安装,并基于引导启动光驱程序而运行存储在光驱功能区的光驱运行程序,在执行完相应的程序运行之后,关闭U盘窗口。在USB设备被上位机枚举出是模拟光驱设备时,该USB设备将存储在光驱功能区上的光驱运行程序供上位机运行,一般在上位机上先弹出一个光驱窗口,光驱窗口里面显示有光驱运行程序,用户可以点击基于光驱窗口所显示程序,然后运行相应的程序,在执行完相应的程序运行之后,关闭U盘窗口。
具体实施过程中,光驱功能区可以按照操作系统类型存储着光驱运行程序,该操作可惜一般是windows操作系统、MAC操作系统等等,不管是上位机所显示的是U盘窗口还是光驱窗口,USB设备或者上位机都得按照操作系统类型来运行存储在USB设备上所对应的光驱运行程序。即上位机是windows操作系统时,上位机需要基于操作系统类型来调取光驱功能区的光驱运行程序,或者USB设备解析出上位机的操作系统类型来供给光驱功能区的光驱运行程序。比如上位机操作系统为windows操作系统时,其只能基于光驱功能区所存储的windows引导程序来运行光驱运行程序,在上位机操作系统为MAC系统时,其只能基于光驱功能区所存储的MAC引导程序来运行光驱运行程序。
上位机上存储有计算机程序,该计算机程序包括可执行程序,根据USB设备所具有的结构,在USB设备插入上电后,上位机对所述USB设备进行设备识别,上位机基于上位机操作系统设置识别出所述USB设备的设备功能类型,设备功能类型为:U盘设备、和/或模拟光驱设备;基于设备功能类型运行存储在所述USB设备上所对应的光驱运行程序。
具体实施过程中,在上位机识别出所述USB设备的设备功能类型为U盘设备时,解析出USB设备上所存储的光驱驱动和引导启动光驱程序的程序;上位机基于所述光驱驱动和引导启动光驱程序的程序运行存储在所述USB设备上所对应的光驱运行程序;或者在上位机识别出USB设备的设备功能类型为模拟光驱设备时,基于模拟光驱设备运行存储在USB设备上所对应的光驱运行程序。
具体实施过程中,上位机在识别出用户点击光驱驱动和引导启动光驱程序的程序后,上位机基于光驱驱动和引导启动光驱程序的程序加载光驱驱动,并在光驱驱动加载完毕之后,运行存储在USB设备上所对应的光驱运行程序。或者在识别出用户点击模拟光驱设备后,基于模拟光驱设备运行存储在USB设备上所对应的光驱运行程序。
具体实施过程中,上位机基于操作系统类型运行存储在USB设备上所对应的光驱运行程序,这里的操作系统类型为windows操作系统或者MAC操作系统,该USB设备上所对应的光驱运行程序还包括:windows引导程序、MAC引导程序,上位机基于windows引导程序运行windows类型的光驱运行程序;或者基于MAC引导程序运行MAC类型的光驱运行程序。
相应的,图2示出了本发明实施例中的实现USB设备内程序运行的第一方法流程图,具体包括如下步骤:
S201、在USB设备插入到上位机后,上位机对USB设备进行设备识别;
需要说明的是,这里的USB设备同时支持U盘设备和模拟光驱设备的识别功能,而上位机对USB设备进行设备识别一般是基于上位机操作系统设置来完成的,比如上位机操作系统设置中没有进行安全隔离设置等,USB设备可以作为U盘直接弹出,也可以作为模拟光驱设备直接弹出,也可能因为操作系统不支持U盘直接弹出,只支持模拟光驱设备直接弹出。
上位机基于上位机操作系统设置识别出所述USB设备的设备功能类型后,该设备功能类型为:U盘设备、和/或模拟光驱设备等。
S202、上位机识别出所述USB设备的设备功能类型为U盘设备;
S203、解析出所述USB设备上所存储的光驱驱动和引导启动光驱程序的程序;
S204、上位机基于所述光驱驱动和引导启动光驱程序的程序运行存储在USB设备上所对应的光驱运行程序;
具体实施过程中,上位机识别出USB设备为U盘设备时,则弹出U盘窗口,从而基于U盘实现程序启动过程。弹出U盘窗口后,用户可以对U盘窗口中的程序进行点击,而此时U盘窗口所显示的程序为光驱驱动和引导启动光驱程序的程序,该程序供上位机进行驱动加载并调用光驱运行程序。在识别出用户点击光驱驱动和引导启动光驱程序的程序后,所述上位机基于所述光驱驱动和引导启动光驱程序的程序加载光驱驱动,并在光驱驱动加载完毕之后,运行存储在所述USB设备上所对应的光驱运行程序。
具体实施过程中,可以基于上位机操作系统类型运行存储在USB设备上所对应的光驱运行程序,即操作系统类型可以是windows操作系统或者MAC操作系统,可以基于windows引导程序运行windows类型的光驱运行程序;也可以基于MAC引导程序运行MAC类型的光驱运行程序,这里需要结合上位机的操作系统类型来完成。
S205、上位机识别出USB设备的设备功能类型为模拟光驱设备;
S206、上位机基于模拟光驱设备运行存储在所述USB设备上所对应的光驱运行程序。
具体实施过程中,上位机识别出USB设备为模拟光驱设备时,则弹出光驱窗口,从而基于光驱窗口实现程序启动过程。弹出U盘窗口后,用户可以对光驱窗口中的程序进行点击,而此时光驱窗口所显示的程序为光驱运行程序。在识别出用户点击雇你光驱程序后,上位机直接运行存储在所述USB设备上所对应的光驱运行程序。
具体实施过程中,可以基于上位机操作系统类型运行存储在USB设备上所对应的光驱运行程序,即操作系统类型可以是windows操作系统或者MAC操作系统,可以基于windows引导程序运行windows类型的光驱运行程序;也可以基于MAC引导程序运行MAC类型的光驱运行程序,这里需要结合上位机的操作系统类型来完成。
需要说明的是,如果USB设备是以U盘弹出,在用户双击U盘内的程序,则实际是加载光驱的驱动,并根据系统识别,启动相对应的光驱内的程序,执行相关动作,关闭可能已经弹出的光驱窗口,或者U盘窗口。如果是以光驱弹出,用户直接双击光驱窗口内的程序,执行相关动作,关闭可能已经弹出的光驱窗口或者U盘窗口。
需要说明的是,如果USB设备在上位机进行了第一次光驱运行程序的运行后,如果用户第二次插入USB设备,则会直接执行关闭U盘弹出窗口或者光驱弹出窗口的动作,而直接执行相关动作。即在此过程中,系统会判断USB设备是首次运行还是再次运行过程。
相应的,图3示出了本发明实施例中的实现USB设备内程序运行的第二方法流程图,具体包括如下步骤:
开始;
需要说明的是,这里的USB设备同时支持U盘设备和模拟光驱设备的识别功能,而上位机对USB设备进行设备识别一般是基于上位机操作系统设置来完成的,比如上位机操作系统设置中没有进行安全隔离设置等,USB设备可以作为U盘直接弹出,也可以作为模拟光驱设备直接弹出,也可能因为操作系统不支持U盘直接弹出,只支持模拟光驱设备直接弹出。上位机基于上位机操作系统设置识别出USB设备的设备功能类型后,该设备功能类型为:U盘设备、和/或模拟光驱设备等。
S301、判断USB设备是否首次插入上位机,如果是首次插入则进入S302,若不是首次插入,则进入S306;
需要说明的是,如果USB设备在上位机进行了第一次光驱运行程序的运行后,如果用户第二次插入USB设备,则会直接执行关闭U盘弹出窗口或者光驱弹出窗口的动作,而直接执行相关动作,即进入S306和S307过程。
不管是上位机还是USB设备所具有记忆功能,由于第一次在上位机上运行,不管是基于模拟光驱设备来启动光驱运行程序的运行,还是基于U盘设备来启动光驱运行程序的运行,后续都可以直接实现光驱运行程序的运行,即模拟光驱设备本身可以直接运行光驱运行程序,U盘设备第一次也完成了模拟光驱设备驱动的加载。
S302、判断USB设备被上位机所枚举出的设备功能类型,如果是U盘则进入S303,若是光驱则进入S305;
上位机对USB设备进行设备识别,其可以当做U盘设备识别出,也可以当做模拟光驱设备识别出,在当做U盘设备识别出时,上位机需要进行S202至S204的步骤过程,在当做模拟光驱设备识别出时,上位机需要进行S205至S206步骤过程。
S303、USB设备将存储的光驱驱动和引导启动光驱程序的程序供上位机解析;
在USB设备识别出上位机USB设备被上位机所枚举出的设备功能类型时,USB设备会将存储的程序供上位机来执行运行,比如在上位机将USB设备当做U盘弹出时,那么USB设备中的光驱驱动和引导启动光驱程序的程序就会被上位机所执行和调用,从而上位机基于光驱驱动和引导启动光驱程序的程序来完成自身光驱驱动的加载,并基于引导启动光驱程序来执行或者运行光驱运行程序。
S304、以光驱驱动和引导启动光驱程序的程序供上位机引导运行存储在USB设备上所对应的光驱运行程序;
需要说明的是,USB设备以光驱驱动和引导启动光驱程序的程序供上位机引导运行存储在USB设备上所对应的光驱运行程序,即先进行光驱驱动加载,然后再运行光驱运行程序。
S305、以光驱驱动和引导启动光驱程序的程序供上位机引导运行存储在USB设备上所对应的光驱运行程序;
在上位机将USB设备当做光驱弹出时,那么USB设备中光驱运行程序可以直接供上位机运行。
S306、USB设备解析出上位机的操作系统类型;S307、按照操作系统类型供上位机运行所述光驱运行程序。
具体实施过程中,针对不同的操作系统运行所对应的光驱运行程序,该操作系统类型为windows操作系统或者MAC操作系统,在USB设备上所对应的光驱运行程序中还包括:windows引导程序、MAC引导程序,这里将基于windows引导程序运行windows类型的光驱运行程序;或者基于MAC引导程序运行MAC类型的光驱运行程序。
具体实施过程中,光驱运行程序一般都是一个可执行程序,比如是DTENStart是光驱里的可执行程序,基于可执行程序会去调用剩下的东西,比如把光驱里其他文件拷贝到电脑本地,并执行,图4示出了本发明实施例中基于模拟光驱设备弹窗后的显示状态图。假设光驱未识别,仅识别了U盘。在U盘里基于软件A.exe安装光驱驱动,驱动文件在U盘内,或者在本地。然后安装完驱动程序后,调用光驱内的DTENStart.exe。DTENStart将文件夹DTENShare拷贝并解压缩到本地目录下,启动拷贝后本地目录的DTENService,去安装驱动和链接接收端。链接到接收端后,通过接收端下载DTENShare程序,进行最终的投屏。
综上,由于USB设备同时支持U盘设备和模拟光驱设备的识别功能,不管是插入到MAC系统还是windows操作系统上都可以以一种设备功能类型被上位机所识别枚举出,然后在基于该识别出的设备功能类型完成对USB设备上光驱运行程序的运行,保障了安装包文件不管是在任何操作系统下都可以实现安装。
在USB设备被上位机枚举出为U盘设备时,可以基于USB设备内的光驱驱动对上位机进行模拟光驱设备的驱动安装,然后基于引导驱动光驱程序来加载光驱运行程序,实现对USB设备上的光驱运行程序的解析或者文件包的安装。在USB设备被上位机枚举出为模拟光驱设备时,可以基于模拟光驱设备直接运行光驱运行程序,实现对USB设备上的光驱运行程序的解析或者文件包的安装。
整个上位机或者USB设备可以根据操作系统类型来引导出操作系统所对应的光驱运行程序,比如基于windows引导程序或者运行windows类型的光驱运行程序;或者基于MAC引导程序运行MAC类型的光驱运行程序。基于操作系统匹配所对应的光驱运行程序,避免了不同操作系统下,各种程序间无法兼容而不能运行。
整个USB所设置成具有两种操作系统所兼容的功能设备,也同时具有U盘和模拟光驱设备枚举功能,基于操作系统所对应的引导程序,从而实现多系统兼容性,保障USB设备通用性,避免USB设备插入时,在系统设置项导致其中一项不能正常运行时,还可以通过另一组功能设备被枚举出,从而实现USB设备内光驱运行程序的运行功能,保证程序包的运行或者文件安装等。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、磁盘或光盘等。
另外,以上对本发明实施例所提供的实现USB设备内程序运行的方法及设备进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (11)
1.一种实现USB设备内程序运行的方法,其特征在于,所述方法包括如下步骤:
在USB设备插入到上位机后,所述上位机对所述USB设备进行设备识别,所述USB设备同时支持U盘设备和模拟光驱设备的识别功能;
所述上位机基于上位机操作系统设置识别出所述USB设备的设备功能类型,所述设备功能类型为:U盘设备、和/或模拟光驱设备;
基于设备功能类型运行存储在所述USB设备上所对应的光驱运行程序。
2.如权利要求1所述的实现USB设备内程序运行的方法,其特征在于,所述基于设备功能类型运行存储在所述USB设备上所对应的光驱运行程序包括:
在所述上位机识别出所述USB设备的设备功能类型为U盘设备时,解析出所述USB设备上所存储的光驱驱动和引导启动光驱程序的程序;所述上位机基于所述光驱驱动和引导启动光驱程序的程序运行存储在所述USB设备上所对应的光驱运行程序;或者
在所述上位机识别出所述USB设备的设备功能类型为模拟光驱设备时,基于模拟光驱设备运行存储在所述USB设备上所对应的光驱运行程序。
3.如权利要求2所述的实现USB设备内程序运行的方法,其特征在于,所述上位机基于所述光驱驱动和引导启动光驱程序的程序运行存储在所述USB设备上所对应的光驱运行程序包括:
在识别出用户点击所述光驱驱动和引导启动光驱程序的程序后,所述上位机基于所述光驱驱动和引导启动光驱程序的程序加载光驱驱动,并在光驱驱动加载完毕之后,运行存储在所述USB设备上所对应的光驱运行程序。
4.如权利要求2所述的实现USB设备内程序运行的方法,其特征在于,所述基于模拟光驱设备运行存储在所述USB设备上所对应的光驱运行程序包括:
在识别出用户点击所述模拟光驱设备后,基于模拟光驱设备运行存储在所述USB设备上所对应的光驱运行程序。
5.如权利要求1至4任一项所述的实现USB设备内程序运行的方法,其特征在于,所述基于设备功能类型运行存储在所述USB设备上所对应的光驱运行程序还包括:
基于操作系统类型运行存储在所述USB设备上所对应的光驱运行程序。
6.如权利要求5所述的实现USB设备内程序运行的方法,其特征在于,所述操作系统类型为windows操作系统或者MAC操作系统,所述USB设备上所对应的光驱运行程序还包括:windows引导程序、MAC引导程序,所述基于操作系统类型运行存储在所述USB上所对应的光驱运行程序包括:
基于windows引导程序运行windows类型的光驱运行程序;或者基于MAC引导程序运行MAC类型的光驱运行程序。
7.一种实现USB设备内程序运行的方法,其特征在于,所述方法包括如下步骤:
在USB设备插入到上位机上电后,USB设备判断USB设备被上位机所枚举出的设备功能类型,所述设备功能类型为:U盘设备、和/或模拟光驱设备,所述USB设备同时支持U盘设备和模拟光驱设备的识别功能;
所述USB设备按照所枚举出的设备功能类型供上位机运行存储在USB设备上所对应的光驱运行程序。
8.如权利要求7所述的实现USB设备内程序运行的方法,其特征在于,所述USB设备按照所枚举出的设备功能类型供上位机运行存储在USB设备上所对应的光驱运行程序包括:
在枚举出所述USB设备的设备功能类型为U盘设备时,所述USB设备将存储的光驱驱动和引导启动光驱程序的程序供上位机解析;并以所述光驱驱动和引导启动光驱程序的程序供所述上位机运行存储在所述USB设备上所对应的光驱运行程序;或者
在枚举出所述USB设备的设备功能类型为模拟光驱设备时,所述USB设备将存储在所述USB设备上所对应的光驱运行程序供所述上位机运行。
9.如权利要求7或者8所述的实现USB设备内程序运行的方法,其特征在于,所述USB按照操作系统类型存储着光驱运行程序,所述操作系统类型为:windows操作系统或者MAC操作系统,所述USB设备按照所枚举出的设备功能类型供上位机运行存储在USB设备上所对应的光驱运行程序包括:
所述USB设备解析出上位机的操作系统类型,并按照操作系统类型供所述上位机运行所述光驱运行程序。
10.一种USB设备,其特征在于,所述USB设备包括:
USB接口模块,用于插入上位机;
存储模块,用于存储可执行程序,并在USB设备插入上位机上电后,供上位机运行所述可执行程序,所述可执行程序供执行如权利要求7-9任一项所述的方法。
11.一种计算机设备,其特征在于,所述系统上存储有计算机程序,所述计算机程序包括可执行程序,所述程序指令被处理器执行时使所述可执行程序执行如权利要求1-6任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711379725.6A CN107943725A (zh) | 2017-12-20 | 2017-12-20 | 一种实现usb设备内程序运行的方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711379725.6A CN107943725A (zh) | 2017-12-20 | 2017-12-20 | 一种实现usb设备内程序运行的方法及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107943725A true CN107943725A (zh) | 2018-04-20 |
Family
ID=61942453
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711379725.6A Pending CN107943725A (zh) | 2017-12-20 | 2017-12-20 | 一种实现usb设备内程序运行的方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107943725A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112214249A (zh) * | 2020-09-02 | 2021-01-12 | 福建星网智慧科技有限公司 | 一种基于usb设备的跨平台自启动程序的方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101110039A (zh) * | 2007-08-23 | 2008-01-23 | 中兴通讯股份有限公司 | 终端设备自安装及自启动系统及方法 |
CN101872311A (zh) * | 2010-07-02 | 2010-10-27 | 上海市共进通信技术有限公司 | Mac平台插入USB设备运行客户端程序并弹出光驱设备的方法 |
CN102253904A (zh) * | 2011-06-08 | 2011-11-23 | 广州视睿电子科技有限公司 | 一种usb设备识别计算机操作系统的方法及装置 |
CN103064708A (zh) * | 2012-12-25 | 2013-04-24 | 广东欧珀移动通信有限公司 | 一种应用程序安装方法及系统 |
CN106550170A (zh) * | 2017-01-16 | 2017-03-29 | 北京维山科技有限公司 | 一种即插即用的高拍仪 |
-
2017
- 2017-12-20 CN CN201711379725.6A patent/CN107943725A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101110039A (zh) * | 2007-08-23 | 2008-01-23 | 中兴通讯股份有限公司 | 终端设备自安装及自启动系统及方法 |
CN101872311A (zh) * | 2010-07-02 | 2010-10-27 | 上海市共进通信技术有限公司 | Mac平台插入USB设备运行客户端程序并弹出光驱设备的方法 |
CN102253904A (zh) * | 2011-06-08 | 2011-11-23 | 广州视睿电子科技有限公司 | 一种usb设备识别计算机操作系统的方法及装置 |
CN103064708A (zh) * | 2012-12-25 | 2013-04-24 | 广东欧珀移动通信有限公司 | 一种应用程序安装方法及系统 |
CN106550170A (zh) * | 2017-01-16 | 2017-03-29 | 北京维山科技有限公司 | 一种即插即用的高拍仪 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112214249A (zh) * | 2020-09-02 | 2021-01-12 | 福建星网智慧科技有限公司 | 一种基于usb设备的跨平台自启动程序的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102779050B (zh) | 提供加速的引导性能的系统和方法 | |
CN104679540A (zh) | 计算机系统与计算机系统启动方法 | |
CN103853586B (zh) | 一种在uefi层实现无线网卡驱动的方法 | |
CN102609285B (zh) | 一种驱动智能匹配加载的方法 | |
CN103065090B (zh) | 一种应用程序恶意广告拦截方法及装置 | |
CN104375856A (zh) | 应用更新方法和装置 | |
US20070006220A1 (en) | Computer system, system software installation method, and software installation method of portable computer | |
CN109002346B (zh) | 一种Windows虚拟机引导程序的转换方法 | |
CN110231949A (zh) | 系统升级方法、装置、电子设备和存储介质 | |
CN105678160B (zh) | 用于提供对引导驱动程序的原始例程的访问的系统和方法 | |
CN102609290B (zh) | 电子产品的软件升级方法 | |
CN102073524B (zh) | 一种无线通讯终端及其自启动的方法 | |
CN103150188A (zh) | 非x86指令集计算机的x86兼容显卡快速初始化方法 | |
CN109582331A (zh) | 车载通信模块的升级方法、装置和系统 | |
CN106095493A (zh) | 双操作系统的加载方法和系统 | |
US8214825B2 (en) | Electronic device and method for installing software | |
CN100541509C (zh) | 一种查杀电脑病毒的方法 | |
CN104699615A (zh) | 一种系统故障的处理方法和装置 | |
CN109947493A (zh) | 应用程序启动方法、装置、电子设备及存储介质 | |
CN107943725A (zh) | 一种实现usb设备内程序运行的方法及设备 | |
CN111880818B (zh) | 一种虚拟机操作系统的安装方法、系统及装置 | |
CN109271332B (zh) | 一种节点设备驱动初始化的方法和设备 | |
CN110618908A (zh) | 一种快速验证屏幕和机器显示接口的方法 | |
CN115766429A (zh) | 系统的匹配方法和装置、边缘计算网关 | |
CN105868101B (zh) | 一种软件测试方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180420 |