识别主机操作系统的方法、USB设备及USB通信系统技术方案

技术编号:38337817 阅读:13 留言:0更新日期:2023-08-02 09:18
本申请涉及计算机技术领域,特别是涉及一种识别主机操作系统的方法、USB设备及USB通信系统。在该方法中,当主机上当前运行的操作系统为非Windows系统时,USB设备能够确定主机向USB设备下发请求指令的次数,且该请求指令用于获取USB设备的目标描述符;若主机下发请求指令的次数大于预设的次数阈值,则USB设备确定主机上当前运行的操作系统为Android系统。定主机上当前运行的操作系统为Android系统。定主机上当前运行的操作系统为Android系统。

【技术实现步骤摘要】
识别主机操作系统的方法、USB设备及USB通信系统


[0001]本申请实施例涉及计算机
,尤其是涉及一种识别主机操作系统的方法、USB设备及USB通信系统。

技术介绍

[0002]通用串行总线(USB,Universal Serial Bus)技术是一种让计算机主机和外围设备进行通讯的串行总线标准,支持热插拔和即插即用功能。目前几乎所有的计算机外围设备,例如键盘、鼠标、游戏手柄、扫描仪、数码相机、打印机、硬盘、光驱和网卡等均可以通过USB接口与主机连接并使用,USB已经成为使用最为广泛的一种接口技术。
[0003]目前,许多USB设备的功能开发需要知道主机操作系统的类型,如Windows、Mac等类型。在USB协议中,主机可以向USB设备获取USB设备的类型,但USB设备通常不能向主机获取主机操作系统的类型,这大大限制了USB设备的功能开发。

技术实现思路

[0004]为了使USB设备能够获取主机操作系统的类型,本申请实施例提供一种识别主机操作系统的方法、USB设备及USB通信系统。
[0005]在本申请的第一方面,提供了一种识别主机操作系统的方法,应用于USB设备,所述方法包括:接收所述主机下发的请求指令,所述请求指令用于获取所述USB设备的目标描述符,响应于所述请求指令,向所述主机发送所述目标描述符;当所述主机上当前运行的操作系统为非Windows系统时,确定所述主机下发所述请求指令的次数,若所述次数不小于预设次数阈值,则确定所述主机上当前运行的操作系统为Android系统;其中,所述预设次数阈值不小于2次。
[0006]在本申请的实施例中,当主机上当前运行的操作系统为非Windows系统时,USB设备能够确定主机向USB设备下发请求指令的次数,且该请求指令用于获取USB设备的目标描述符;若主机下发请求指令的次数不小于预设的次数阈值,则USB设备确定主机上当前运行的操作系统为Android系统。
[0007]在一些实施例中,若所述次数小于预设次数阈值,则确定所述主机上当前运行的操作系统为Mac系统。
[0008]在一些实施例中,所述方法还包括:在确定所述主机上当前运行的操作系统的类型后,对所述操作系统的类型进行标识。
[0009]在一些实施例中,所述目标描述符包括:设备描述符、接口描述符和/或字符串描述符。
[0010]在一些实施例中,所述确定所述主机下发所述请求指令的次数的步骤之前,所述方法还包括:若接收到所述主机下发的MODS请求,则确定所述主机上当前运行的操作系统为Windows系统;若未接收到所述主机下发的MODS请求,则确定所述主机上当前运行的操作系统为非Windows系统。
[0011]在本申请的第二方面还提供了一种USB设备,所述USB设备包括:至少一个处理器;和与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行第一方面所述的方法。
[0012]在本申请的第三方面,还提供了一种USB通信系统,所述USB通信系统包括主机和USB设备,所述USB设备与所述主机通信连接;所述主机用于:将请求指令下发给USB设备,所述请求指令用于获取所述USB设备的目标描述符;所述USB设备用于:接收所述主机下发的请求指令,响应于所述请求指令,向所述主机发送所述目标描述符;当所述主机上当前运行的操作系统为非Windows系统时,确定所述主机下发所述请求指令的次数,若所述次数不小于预设次数阈值,则确定所述主机上当前运行的操作系统为Android系统;其中,所述预设次数阈值不小于2次。
[0013]在一些实施例中,所述USB设备还用于:若所述次数小于预设次数阈值,则确定所述主机上当前运行的操作系统为Mac系统。
[0014]在一些实施例中,所述目标描述符包括:设备描述符、接口描述符和/或字符串描述符。
[0015]在一些实施例中,所述主机还用于:向所述USB设备下发MODS请求。所述USB设备还用于:若接收到所述主机下发的MODS请求,则确定所述主机上当前运行的操作系统为Windows系统;若未接收到所述主机下发的MODS请求,则确定所述主机上当前运行的操作系统为非Windows系统。
[0016]应当理解,
技术实现思路
部分中所描述的内容并非旨在限定本公开的关键或重要特征,亦非用于限制本公开的范围。本公开的其他特征通过以下的描述将变得容易理解。
附图说明
[0017]为了更清楚地说明本专利技术实施例的技术方案,下面将对本专利技术实施例中所需要使用的附图作简单地介绍。显而易见地,下面所描述的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0018]图1是本申请的一些实施例提供的USB通信系统的结构示意图;
[0019]图2是本申请的一些实施例提供的USB通信系统侧的识别主机操作系统的方法流程示意图;
[0020]图3是本申请的一些实施例提供的USB设备侧的识别主机操作系统的方法流程示意图;
[0021]图4是本申请的一些实施例提供的USB设备的硬件结构示意图。
具体实施方式
[0022]下文将参考附图中示出的若干示例性实施例来描述本公开的原理和精神。应当理解,描述这些具体的实施例仅是为了使本领域的技术人员能够更好地理解并实现本公开,而并非以任何方式限制本公开的范围。在以下描述和权利要求中,除非另有定义,否则本文中使用的所有技术和科学术语具有与所属领域的普通技术人员通常所理解的含义。
[0023]如本文所使用的,术语“包括”及其类似用语应当理解为开放性包含,即“包括但不限于”。术语“基于”应当理解为“至少部分地基于”。术语“一个实施例”或“该实施例”应当理解为“至少一个实施例”。术语“第一”、“第二”等等可以指代不同的或相同的对象,并且仅用于区分所指代的对象,而不暗示所指代的对象的特定空间顺序、时间顺序、重要性顺序,等等。
[0024]图1是本申请的一些实施例提供的USB通信系统的结构示意图。如图1所示,USB通信系统100包括:主机110及USB设备120。主机110与USB设备120可以进行数据传输。主机110上可以运行一个或者多个操作系统,操作系统的类型比如,Windows系统、Android系统或者Mac系统。需要说明的是,上述系统的各个版本均属于本申请的保护范围,本申请不作具体限定。
[0025]主机110可以是笔记本电脑、台式电脑主机或手机等电子设备。USB设备120以多种形式存在,包括但不限USB网卡、USB数据卡、鼠标、键盘、麦克风等具有USB接口的电子设备。主机110和USB设备120之间可以进行数据传输。
[0026]在USB设备120和主机110的连接建立阶段,主机110为了解USB设备120是什么设备,该设备如何进行通信等信息,会下发请求指令以获取US本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种识别主机操作系统的方法,应用于USB设备,所述USB设备与主机通信连接,所述方法包括:接收所述主机下发的请求指令,所述请求指令用于获取所述USB设备的目标描述符,响应于所述请求指令,向所述主机发送所述目标描述符;当所述主机上当前运行的操作系统为非Windows系统时,确定所述主机下发所述请求指令的次数,若所述次数不小于预设次数阈值,则确定所述主机上当前运行的操作系统为Android系统;其中,所述预设次数阈值不小于2次。2.根据权利要求1所述的方法,其特征在于,所述方法还包括,若所述次数小于预设次数阈值,则确定所述主机上当前运行的操作系统为Mac系统。3.根据权利要求2所述的方法,其特征在于,所述方法还包括:在确定所述主机上当前运行的操作系统的类型后,对所述操作系统的类型进行标识。4.根据权利要求1

3任一项所述的方法,其特征在于,所述目标描述符包括:设备描述符、接口描述符和/或字符串描述符。5.根据权利要求1

3任一项所述的方法,其特征在于,所述确定所述主机下发所述请求指令的次数的步骤之前,所述方法还包括:若接收到所述主机下发的MODS请求,则确定所述主机上当前运行的操作系统为Windows系统;若未接收到所述主机下发的MODS请求,则确定所述主机上当前运行的操作系统为非Windows系统。6.一种USB设备,其特征在于,所述USB设备包括:至少一个处理器;和与所述至少一个处理器通信连接的存储器;其中,所述存...

【专利技术属性】
技术研发人员:黄奎霖陈铎隆
申请(专利权)人:深圳市中科蓝讯科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1