CN101561785A - 在usb装置上自动侦测操作系统的方法 - Google Patents

在usb装置上自动侦测操作系统的方法 Download PDF

Info

Publication number
CN101561785A
CN101561785A CNA2008100916972A CN200810091697A CN101561785A CN 101561785 A CN101561785 A CN 101561785A CN A2008100916972 A CNA2008100916972 A CN A2008100916972A CN 200810091697 A CN200810091697 A CN 200810091697A CN 101561785 A CN101561785 A CN 101561785A
Authority
CN
China
Prior art keywords
usb
operating system
order
usb device
string
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.)
Granted
Application number
CNA2008100916972A
Other languages
English (en)
Other versions
CN101561785B (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.)
Beijing Sunplus Technology Co., Ltd.
Original Assignee
LINGYANG INNOVATIVE TECHNOLOGY HOLDING Co 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 LINGYANG INNOVATIVE TECHNOLOGY HOLDING Co Ltd filed Critical LINGYANG INNOVATIVE TECHNOLOGY HOLDING Co Ltd
Priority to CN2008100916972A priority Critical patent/CN101561785B/zh
Publication of CN101561785A publication Critical patent/CN101561785A/zh
Application granted granted Critical
Publication of CN101561785B publication Critical patent/CN101561785B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)
  • Information Transfer Systems (AREA)

Abstract

本发明涉及一种在USB装置上自动侦测操作系统的方法,其先执行USB装置初始化。之后,USB装置接收操作系统传送的Get DeviceDescriptor的USB命令,USB装置再判断操作系统是否传送Reset的USB命令,若判定操作系统没有传送Reset的USB命令,则将旗标设为0,否则将该旗标设为1。接下来,记录操作系统传送至该USB装置的USB命令。然后,判断操作系统是否传送Set Interface Report的USB命令,若有且旗标为1时,USB装置判定操作系统为MicrosoftWindows操作系统,否则,USB装置判定操作系统为Apple MAC操作系统。

Description

在USB装置上自动侦测操作系统的方法
技术领域
本发明涉及计算机外设的技术领域,尤指一种在USB(通用串行总线)装置上自动侦测操作系统的方法。
背景技术
由于因特网快速发展,在家中使用个人计算机上网已经成为趋势。然而并非每个人都熟悉个人计算机及浏览器的操作。针对上述问题,一般现有技术利用光驱或随身碟的自动执行(auto-run)功能,当将光盘片放入光驱中或插入随身碟时,操作系统会执行自动执行功能,由此可开启浏览器并输入特定网址,使得一般不熟悉个人计算机及浏览器操作的老人或小孩可轻松上网。
然而前述使用自动执行功能往往会因为安全因素,而被防毒软件拦阻而无法执行。针对这一问题,一种解决方法则是利用通用串行总线(USB)装置仿真键盘/鼠标。由于该USB装置仿真键盘/鼠标,则可利用输出特定按键开启浏览器并输入特定网址,由此达到轻松上网的目的。
然而,在每一种操作系统中,特定按键被指定的功能不相同,使得USB装置仿真键盘/鼠标的技术必须视操作系统而需要不同固件。例如:在Apple MAC操作系统中,同时按下window键及L键,表示输入网址,而在Microsoft Windows操作系统中,同时按下window键及L键,表示锁定。由于不同操作系统的特定按键的功能不相同,该USB装置则需依据不同操作系统而设计其固件,这样不但增加开发成本,同时使用者也需针对不同操作系统而使用不同的USB装置,因而增加了持有成本并且降低了使用的便利性。由此可知,现有的USB装置上自动侦测操作系统的方法仍有诸多缺失而有予以改善的必要。
发明内容
本发明的目的是提供一种在USB(通用串行总线)装置上自动侦测操作系统的方法,以提升USB装置使用的便利性。
依据本发明的一个特色,其提出一种在USB(通用串行总线)装置上自动侦测操作系统的方法,其用以侦测与该USB装置连接的主机的操作系统,该方法包含步骤:(A)执行该USB装置初始化;(B)记录该操作系统传送至该USB装置的USB命令;(C)当接收到连续两次的GetProduct String的USB命令、Get Vender String的USB命令、在Set Address的USB命令前面没有Reset的USB命令、没有Get Language ID的USB命令、或没有Set Feature Report的USB命令时,该USB装置判定该操作系统为第一操作系统;(D)当没有Get Vender String的USB命令、有两组Get Language ID及Get Product String的USB命令、在Get Product String的USB命令后面有Get Device Descriptor的USB命令、或有Set InterfaceReport的USB命令时,该USB装置判定该操作系统为第二操作系统。
依据本发明的另一特色,其提出一种在USB装置上自动侦测操作系统的方法,其用以侦测与该USB装置连接的主机的操作系统为Microsoft Windows操作系统或是Apple MAC操作系统,该方法包含步骤:(A)执行该USB装置初始化;(B)接收该操作系统传送至该USB装置的Get Device Descriptor的USB命令;(C)判断该操作系统是否传送Reset的USB命令;(D)若判定该操作系统没有传送该Reset的USB命令,则将旗标设为0,否则将该旗标设为1;(E)记录该操作系统传送至该USB装置的USB命令;(F)判断该操作系统是否传送Set InterfaceReport的USB命令,若有且该旗标为1时,该USB装置判定该操作系统为Microsoft Windows操作系统,否则,该USB装置判定该操作系统为Apple MAC操作系统。
附图说明
图1为本发明在USB装置上自动侦测操作系统的示意图。
图2为本发明中Microsoft Windows操作系统、Apple MAC操作系统、及Linux操作系统的USB行为差异的示意图。
图3为本发明中Microsoft Windows操作系统、Apple MAC操作系统、及Linux操作系统的USB行为差异的比较图。
图4为本发明在USB装置上自动侦测操作系统的方法另一实施例的流程图。
主要组件符号说明
主机        110
USB装置     120
USB连接线   130
步骤        S410~S490
具体实施方式
请参见图1,其为本发明在USB装置上自动侦测操作系统的示意图,其包含主机110、USB装置120、USB连接线130。该USB装置120可直接通过USB插接孔(图未示)而电气连接至该主机110,或是通过该USB连接线130而电气连接至该主机110。该USB装置120可为USB键盘、或USB鼠标或USB控制杆(joystick)或任何具有仿真键盘鼠标描述表的USB装置。其中具有仿真键盘鼠标描述表的USB装置是指在主机110取得装置组件描述(Get Device Descriptor)的过程中,该USB装置可被宣告成键盘鼠标。主机110可执行操作系统,该操作系统较佳为MicrosoftWindows操作系统、Apple MAC操作系统、或Linux操作系统。
当该USB装置120连接该USB插接孔或该USB连接线130后,该主机110通过该USB插接孔或该USB连接线130输出一串USB命令,以初始化该USB装置120。在本发明中,该USB装置120记录该操作系统传送至该USB装置120的USB命令。
图2为本发明中Microsoft Windows操作系统、Apple MAC操作系统、及Linux操作系统的USB行为差异的示意图。由图2可知,在初始化过程中,Microsoft Windows操作系统、Apple MAC操作系统、及Linux操作系统所输出的USB命令不完全相同。本发明即依此特性,而可在该USB装置120上判断位于主机110的操作系统。
例如:在Apple MAC操作系统及Linux操作系统中,不会输出SetInterface Report的USB命令,而仅有Microsoft Windows操作系统会输出Set Interface Report的USB命令。由此即可判断位于主机110的操作系统为Microsoft Windows操作系统。
图3为本发明中Microsoft Windows操作系统、Apple MAC操作系统、及Linux操作系统的USB行为差异的比较图。由图3可知,当接收到连续两次的Get Product String的USB命令、一次Get Vender String的USB命令、在Set Address的USB命令前面没有Reset的USB命令、没有Get Language ID的USB命令、或没有Set Feature Report的USB命令时,该USB装置120判定该操作系统为Apple MAC操作系统。
当没有Get Vender String的USB命令、有两组Get Language ID及Get Product String的USB命令、在Get Product String的USB命令后面有Get Device Descriptor的USB命令、或有Set Interface Report的USB命令时,该USB装置120判定该操作系统为Microsoft Windows操作系统。
当在Get Product String的USB命令后面接续Get Vender String的USB命令、只有一次Get 4Descriptor的USB命令、或有Get FeatureReport的USB命令时,该USB装置判定该操作系统为Linux操作系统。
图4为本发明在USB装置上自动侦测操作系统的方法另一实施例的流程图,其用以侦测与该USB装置120连接的主机110的操作系统为Microsoft Windows操作系统或是Apple MAC操作系统。
首先,在步骤S410中,当该USB装置120插入该USB插接孔或该USB连接线130后,该主机110通过该USB插接孔或该USB连接线130输出一串USB命令,以初始化该USB装置120。
在步骤S420中,该USB装置120接收该操作系统传送至该USB装置120的Get Device Descriptor的USB命令。其中该USB装置送出具有仿真键盘鼠标的描述表,以宣告其为键盘鼠标装置。
在步骤S430中,该USB装置120判断该操作系统是否传送Reset的USB命令。
若判定该操作系统没有传送该Reset的USB命令,则将旗标设为0(步骤S440),否则将该旗标设为1(步骤S450)
在步骤S460中,记录该操作系统传送至该USB装置的USB命令。
在步骤S470中,判断该操作系统是否传送Set Interface Report的USB命令,若有且该该旗标为1时,该USB装置判定该操作系统为Windows操作系统(步骤S480),否则,该USB装置判定该操作系统为MAC操作系统(步骤S490)。
本发明的技术可在该USB装置120的微控器的固件算法来达成,故无需通过驱动程序,也不需系统重新开机或热插拔的动作,即可立即完成判别功能。通过本发明,USB装置120可在不同操作系统达到相同功能,故可避免因操作系统语系及输入法的不同而发生功能失效的情况。
通过本发明的技术,该USB装置120可判别主机110端的操作系统,因此可提供非Microsoft Windows操作系统通过复合指令的方式,启动其对应的功能,使得该USB装置120在不同操作系统中仍可提供相同服务,进而提升该USB装置120的功能。由于以往未有此类型的判别方法,因此在非Windows操作系统中必须安装应用程序及驱动程序才能达成原本Windows操作系统才具有的多媒体功能。通过本发明,可无需安装任何驱动程序与应用程序,仅由该USB装置120的微控器上的固件判别目前的操作系统,即可依据操作系统执行相对应的功能,由此提升产品支持性、降低软件的依赖性。
由上述说明可知,利用本发明的技术,可以彻底解决USB装置120在单一操作系统所具有的功能无法使用在另一操作系统的问题。例如在Microsoft Windows操作系统中,具有快捷键可执行浏览器,而其功能却无法作Apple MAC操作系统或Linux操作系统中使用;或是智能型输入装置仅能在Microsoft Windows操作系统中使用,而无法在AppleMAC操作系统或Linux操作系统中启动相同功能。现有USB输入装置常局限在单一操作系统中发展其固件,在其它操作系统中却无法具有其新增功能。本方法的USB装置在正确识别操作系统后,可针对各种不同操作系统执行相对应的功能。
相比于以往的技术,由于各操作系统的操作方式皆不相同,加上未有侦测操作系统的方法,导致USB装置仅能针对部分操作系统提供输入装置完整服务,而其它的操作系统仅能使用部分功能。此外,现有技术仅靠驱动程序以针对不同的操作系统提供相同的功能。本发明则无需安装驱动程序,也不需要重开操作系统或热插拔的动作,在USB装置120插入后,即可完成侦测主机110的操作系统的功能。在配合智能型输入装置时,使得智能型输入装置可针对所识别的操作系统以执行该操作系统的操作行为,由此避免智能型输入系统在无法识别操作系统时,造成不可预期的操作错误。
由上述可知,本发明无论就目的、手段及功效,均显示出其迥异于现有技术的特征,极具实用价值。但是应注意的是,上述诸多实施例仅为了便于说明用来举例而已,本发明所主张的权利范围自应以权利要求为准,而非仅限于上述实施例。

Claims (8)

1、一种在USB装置上自动侦测操作系统的方法,其用以侦测与该USB装置连接的主机的操作系统,该方法包含步骤:
(A)初始化该USB装置;
(B)记录该操作系统传送至该USB装置的USB命令;
(C)当接收到连续两次的Get Product String的USB命令、一次GetVender String的USB命令、在Set Address的USB命令前面没有Reset的USB命令、没有Get Language ID的USB命令、或没有Set FeatureReport的USB命令时,该USB装置判定该操作系统为第一操作系统;以及
(D)当没有Get Vender String的USB命令、有两组Get Language ID及两组Get Product String的USB命令、在Get Product String的USB命令后面有Get Device Descriptor的USB命令、或有Set Interface Report的USB命令时,该USB装置判定该操作系统为第二操作系统。
2、根据权利要求1所述的方法,进一步包含:
(E)当在Get Product String的USB命令后面接续Get Vender String的USB命令、只有一次Get 4 Descriptor的USB命令、或有Get FeatureReport的USB命令时,该USB装置判定该操作系统为第三操作系统。
3、根据权利要求2所述的方法,其中,该第一操作系统为AppleMAC操作系统。
4、根据权利要求3所述的方法,其中,该第二操作系统为MicrosoftWindows操作系统。
5、根据权利要求4所述的方法,其中,该第三操作系统为Linux操作系统。
6、根据权利要求1所述的方法,其中,该USB装置包含USB键盘、USB鼠标、USB控制杆、具有仿真键盘鼠标描述表的USB装置的其中一个或其组合。
7、一种在USB装置上自动侦测操作系统的方法,其用以侦测与该USB装置连接的主机的操作系统为Microsoft Windows操作系统或是Apple MAC操作系统,该方法包含步骤:
(A)初始化该USB装置;
(B)接收该操作系统传送至该USB装置的Get Device Descriptor的USB命令;
(C)判断该操作系统是否传送Reset的USB命令;
(D)若判定该操作系统没有传送该Reset的USB命令,则将旗标设为0,否则将该旗标设为1;
(E)记录该操作系统传送至该USB装置的USB命令;以及
(F)判断该操作系统是否传送Set Interface Report的USB命令,若有且该该旗标为1时,该USB装置判定该操作系统为Microsoft Windows操作系统,否则,该USB装置判定该操作系统为Apple MAC操作系统。
8、根据权利要求7所述的方法,其中,该USB装置包含USB键盘、USB鼠标、USB控制杆、具有仿真键盘鼠标描述表的USB装置的其中一个或其组合。
CN2008100916972A 2008-04-14 2008-04-14 在usb装置上自动侦测操作系统的方法 Active CN101561785B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2008100916972A CN101561785B (zh) 2008-04-14 2008-04-14 在usb装置上自动侦测操作系统的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2008100916972A CN101561785B (zh) 2008-04-14 2008-04-14 在usb装置上自动侦测操作系统的方法

Publications (2)

Publication Number Publication Date
CN101561785A true CN101561785A (zh) 2009-10-21
CN101561785B CN101561785B (zh) 2012-01-04

Family

ID=41220597

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008100916972A Active CN101561785B (zh) 2008-04-14 2008-04-14 在usb装置上自动侦测操作系统的方法

Country Status (1)

Country Link
CN (1) CN101561785B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102043751A (zh) * 2010-06-29 2011-05-04 北京飞天诚信科技有限公司 Usb设备识别主机操作系统的方法
CN102375786A (zh) * 2011-10-18 2012-03-14 中兴通讯股份有限公司 Usb设备自动识别操作系统的方法及系统
CN102622313A (zh) * 2011-01-30 2012-08-01 中兴通讯股份有限公司 Usb设备的端口切换方法、系统和区分操作系统的方法
US9189358B2 (en) 2012-02-24 2015-11-17 Samsung Electronics Co., Ltd. Apparatus and method for verifying operating system of host device in portable terminal
CN105608611A (zh) * 2015-12-16 2016-05-25 国网江西省电力公司鹰潭供电分公司 内外网票据统一电子化服务系统

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1291294C (zh) * 2004-10-14 2006-12-20 苏州超锐微电子有限公司 一种在主引导区实现开机锁功能的方法
CN1987806A (zh) * 2005-12-21 2007-06-27 英业达股份有限公司 Usb设备的数据传输速率测量系统及其方法

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102043751A (zh) * 2010-06-29 2011-05-04 北京飞天诚信科技有限公司 Usb设备识别主机操作系统的方法
WO2012000417A1 (zh) * 2010-06-29 2012-01-05 飞天诚信科技股份有限公司 Usb设备识别主机操作系统的方法
CN102043751B (zh) * 2010-06-29 2012-12-12 飞天诚信科技股份有限公司 Usb设备识别主机操作系统的方法
CN102622313A (zh) * 2011-01-30 2012-08-01 中兴通讯股份有限公司 Usb设备的端口切换方法、系统和区分操作系统的方法
CN102622313B (zh) * 2011-01-30 2015-08-12 中兴通讯股份有限公司 Usb设备的端口切换方法、系统和区分操作系统的方法
CN102375786A (zh) * 2011-10-18 2012-03-14 中兴通讯股份有限公司 Usb设备自动识别操作系统的方法及系统
CN102375786B (zh) * 2011-10-18 2014-09-10 中兴通讯股份有限公司 Usb设备自动识别操作系统的方法及系统
US9189358B2 (en) 2012-02-24 2015-11-17 Samsung Electronics Co., Ltd. Apparatus and method for verifying operating system of host device in portable terminal
CN105608611A (zh) * 2015-12-16 2016-05-25 国网江西省电力公司鹰潭供电分公司 内外网票据统一电子化服务系统

Also Published As

Publication number Publication date
CN101561785B (zh) 2012-01-04

Similar Documents

Publication Publication Date Title
TWI358665B (zh)
US9804859B2 (en) Re-enumeration of USB 3.0 compatible devices
CN101561785B (zh) 在usb装置上自动侦测操作系统的方法
US20080276012A1 (en) Driver Loading via a PnP Device
US20110016253A1 (en) Auto-function USB port
US8898349B1 (en) IPMI over USB data transfer between host computer and baseboard management controller (BMC)
US20130031277A1 (en) Method for identifying version type of windows operating system on a host by a usb device
CN103064738B (zh) Linux下本地应用程序窗体嵌入浏览器的方法及系统
US8073997B2 (en) Software install automation
US9152492B2 (en) Performing recovery of a headless computer
US8838838B2 (en) Universal driving method and system for peripherals
CN105338048A (zh) 一种虚拟桌面基础架构下的文件传输方法和系统
TW550493B (en) Method and apparatus for provision of a general-use serial port on a legacy-free device
US20150286549A1 (en) Methods and physical computer-readable storage media for initiating re-enumeration of usb 3.0 compatible devices
US20100064079A1 (en) USB Devices Pre-Configuration For KVM Switch
US9749189B2 (en) Generating graphical diagram of physical layout of computer platforms
EP2255291B1 (en) Systems and methods of communicatively coupling a host computing device and a peripheral device
CN103885666A (zh) 分享信息的传输处理方法和系统
US8954631B2 (en) Continuously transferring data using a USB mass storage device
US20140040881A1 (en) Modem installation
JP2002366504A (ja) 情報処理装置
US7958405B1 (en) Automatic testing system and method for judging whether universal serial bus device is configured to computer
US7613879B2 (en) Method, system and media for improved operation of a device in a foreign domain
CN103207850A (zh) 外接设备,异质设备的传输系统与其方法扩展功能
CN102007472A (zh) 操作系统启动方法以及协议转换器

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
ASS Succession or assignment of patent right

Owner name: BEIJING SUNPLUS TECHNOLOGY CO., LTD.

Free format text: FORMER OWNER: LINGYANG INNOVATIVE TECHNOLOGY HOLDING CO., LTD.

Effective date: 20140103

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: TAIWAN, CHINA TO: 100085 HAIDIAN, BEIJING

TR01 Transfer of patent right

Effective date of registration: 20140103

Address after: 100085, A, three floor, Li Science Park, upper third street, Haidian District, Beijing

Patentee after: Beijing Sunplus Technology Co., Ltd.

Address before: Hsinchu, Taiwan, China

Patentee before: Lingyang Innovative Technology Holding Co., Ltd.