CN115617419A - 物联网操作系统驱动智能加载方法、装置、设备和介质 - Google Patents

物联网操作系统驱动智能加载方法、装置、设备和介质 Download PDF

Info

Publication number
CN115617419A
CN115617419A CN202211334458.1A CN202211334458A CN115617419A CN 115617419 A CN115617419 A CN 115617419A CN 202211334458 A CN202211334458 A CN 202211334458A CN 115617419 A CN115617419 A CN 115617419A
Authority
CN
China
Prior art keywords
hardware
resource
product
loading
driver
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
Application number
CN202211334458.1A
Other languages
English (en)
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.)
Shenzhen Oribo Technology Co Ltd
Original Assignee
Shenzhen Oribo Technology 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 Shenzhen Oribo Technology Co Ltd filed Critical Shenzhen Oribo Technology Co Ltd
Priority to CN202211334458.1A priority Critical patent/CN115617419A/zh
Publication of CN115617419A publication Critical patent/CN115617419A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本申请涉及一种物联网操作系统驱动智能加载方法、装置、设备和介质,涉及设备驱动技术领域。该方法包括:当产品设备内置的固件启动时,读取目标硬件的硬件数据;目标硬件为产品设备中待驱动的产品硬件;根据硬件数据确定目标硬件的硬件标识符;从预配置的资源系统包中确定与硬件标识符匹配的驱动资源;资源系统包记录有不同产品硬件对应的硬件标识符和用于驱动加载的驱动资源;根据驱动资源对应加载产品设备的驱动。采用本方法能够减少配置资源的浪费。

Description

物联网操作系统驱动智能加载方法、装置、设备和介质
技术领域
本申请涉及设备驱动技术领域,特别是涉及一种物联网操作系统驱动智能加载方法、装置、设备和介质。
背景技术
一般来说,同一个驱动可以适配在不同的产品硬件上,由于不同产品硬件的硬件数据可能会存在差异。所以,传统方法在驱动加载的过程中,需要针对不同产品硬件配置不同的资源系统包,以使驱动能够通过不同的资源系统包识别出对应的产品硬件以进行加载。但是,这样会导致配置的资源系统包太多,造成资源浪费。
发明内容
基于此,有必要针对上述技术问题,提供一种能够减少资源浪费的物联网操作系统驱动智能加载方法、装置、设备和介质。
第一方面,本申请提供了一种物联网操作系统驱动智能加载方法,包括:
当产品设备内置的固件启动时,读取目标硬件的硬件数据;目标硬件为产品设备中待驱动的产品硬件;
根据硬件数据确定目标硬件的硬件标识符;
从预配置的资源系统包中确定与硬件标识符匹配的驱动资源;资源系统包记录有不同产品硬件对应的硬件标识符和用于驱动加载的驱动资源;
根据驱动资源对应加载产品设备的驱动。
在其中一个实施例中,根据硬件数据确定目标硬件的硬件标识符,的步骤具体包括:根据用于预先定义硬件标识符所使用的标识生成规则,对硬件数据进行转换编码,以得到目标硬件的硬件标识符。
在其中一个实施例中,硬件数据包括目标硬件的基准电压和管脚电平。
在其中一个实施例中,硬件标识符是由固件确定的;方法还包括:通过固件将硬件标识符传递给产品设备的内核;从预配置的资源系统包中确定与硬件标识符匹配的驱动资源,的步骤包括:通过内核从产品设备内部的存储空间中获取资源系统包,并从资源系统包中查找与硬件标识符匹配的驱动资源。
在其中一个实施例中,根据驱动资源对应加载产品设备的驱动,的步骤具体包括:通过内核驱动使用驱动资源中的驱动管脚和驱动电平,加载产品设备的驱动。
在其中一个实施例中,方法还包括:在从资源系统包中获取不到与硬件标识符匹配的驱动资源的情况下,从资源系统包中获取备选的驱动资源,作为目标驱动资源;根据目标驱动资源对应加载产品设备的驱动。
在其中一个实施例中,方法还包括:在正常加载产品设备的驱动的情况下,驱动与产品设备所连接的外设设备,以供上层应用使用。
第二方面,本申请提供了一种物联网操作系统驱动智能加载装置,包括:
数据读取模块,用于当产品设备内置的固件启动时,读取目标硬件的硬件数据;目标硬件为产品设备中待驱动的产品硬件;
数据识别模块,用于根据硬件数据确定目标硬件的硬件标识符;
资源匹配模块,用于从预配置的资源系统包中确定与硬件标识符匹配的驱动资源;资源系统包记录有不同产品硬件对应的硬件标识符和用于驱动加载的驱动资源;
驱动加载模块,用于根据驱动资源对应加载产品设备的驱动。
在其中一个实施例中,数据识别模块还用于根据用于预先定义硬件标识符所使用的标识生成规则,对硬件数据进行转换编码,以得到目标硬件的硬件标识符。
在其中一个实施例中,硬件数据包括目标硬件的基准电压和管脚电平。
在其中一个实施例中,硬件标识符是由固件确定的,物联网操作系统驱动智能加载装置还包括标识传递模块,标识传递模块用于通过固件将硬件标识符传递给产品设备的内核。资源匹配模块还用于通过内核从产品设备内部的存储空间中获取资源系统包,并从资源系统包中查找与硬件标识符匹配的驱动资源。
在其中一个实施例中,驱动加载模块还用于通过内核驱动使用驱动资源中的驱动管脚和驱动电平,加载产品设备的驱动。
在其中一个实施例中,驱动加载模块还用于在从资源系统包中获取不到与硬件标识符匹配的驱动资源的情况下,从资源系统包中获取备选的驱动资源,作为目标驱动资源;根据目标驱动资源对应加载产品设备的驱动。
在其中一个实施例中,物联网操作系统驱动智能加载装置还包括设备驱动模块,设备驱动模块用于在正常加载产品设备的驱动的情况下,驱动与产品设备所连接的外设设备,以供上层应用使用。
第三方面,本申请提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述的方法的步骤。
第四方面,本申请提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的方法的步骤。
第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述的方法中的步骤。
上述物联网操作系统驱动智能加载方法、装置、计算机设备、存储介质和计算机程序产品,当产品设备内置的固件启动时,读取目标硬件的硬件数据;目标硬件为产品设备中待驱动的产品硬件;根据硬件数据确定目标硬件的硬件标识符;从预配置的资源系统包中确定与硬件标识符匹配的驱动资源;资源系统包记录有不同产品硬件对应的硬件标识符和用于驱动加载的驱动资源;根据驱动资源对应加载产品设备的驱动。通过给不同的目标硬件定义唯一的硬件标识符,并将不同的硬件标识符配置在资源系统包中,能够在驱动加载过程中,通过同一个资源系统包中的不同硬件标识符来匹配不同的驱动资源以完成驱动加载,能够减少资源系统包,从而减少资源浪费。
附图说明
图1为一个实施例中物联网操作系统驱动智能加载的方法的应用环境示意图;
图2为一个实施例中物联网操作系统驱动智能加载的方法的流程示意图;
图3为另一个实施例中物联网操作系统驱动智能加载的方法的流程示意图;
图4为另一个实施例中物联网操作系统驱动智能加载的方法的流程示意图;
图5为一个实施例中物联网操作系统驱动智能加载的装置的结构示意图;
图6为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的物联网操作系统驱动智能加载的方法,可以应用于如图1所示的应用环境中。
其中,固件104内置与产品设备102中,产品设备102通过网络可以与外设设备106进行通信,或者产品设备102可以通过一些通信协议与外设设备106进行通信。其中,产品设备102与外设设备106是两个结构或功能不同的计算机设备,产品设备102与外部设备可以是安装特定程序软件的个人计算机、智能插座、笔记本电脑、智能手机、平板电脑、智能家居中控屏幕或可移动的控制面板等中的至少一种。
需要说明的是,在本申请中,可以通过运行在产品设备102上的物联网操作系统对产品设备102的驱动进行智能化加载。物联网操作系统可以运行在产品设备102上,对产品设备102进行控制和管理。其中,物联网操作系统是指以操作系统内核为基础,包括如文件系统、图形库等较为完整的中间件组件,具备低功耗、安全、通信协议支持和云端连接能力的软件平台。需要说明的是,在硬件方面,物联网操作系统与传统的嵌入式设备相比,物联网感知层的设备更小、功耗更低,还需要安全性及组网能力,物联网通信层需要支持各种通信协议核协议之间的转换,应用层则需要具备云计算能力。在软件方面,支撑物联网设备的软件比传统的嵌入式设备软件更加复杂。
数据存储系统,可以存储产品设备102需要处理的数据。其中,数据存储系统可以集成在产品设备102上,也可以放在云上或其他网络服务器上。
一些实施例中,当产品设备102内置的固件104启动时,产品设备102读取目标硬件的硬件数据;其中,目标硬件为产品设备102中待驱动的产品硬件。产品设备102根据硬件数据确定目标硬件的硬件标识符。产品设备102可以从预配置的资源系统包中确定与硬件标识符匹配的驱动资源;其中,资源系统包记录有不同产品硬件对应的硬件标识符和用于驱动加载的驱动资源。产品设备102可以根据驱动资源对应加载产品设备102的驱动。可以理解,在成功加载产品设备102的驱动后,产品设备102则可以驱动外设设备106工作。
在一些实施例中,如图2所示,提供一种物联网操作系统驱动智能加载的方法,以该方法应用于产品设备为例进行说明,包括但不限于包括以下步骤:
步骤202,当产品设备内置的固件启动时,读取目标硬件的硬件数据。
其中,固件(Firmware)指的是写入可擦写可编程只读存储器或电可擦可编程只读存储器中的程序。此外,固件设置在产品设备的内部中,用来保存产品设备的“驱动程序”。通过固件,操作系统才能按照标准的设备驱动实现特定机器的运行动作,比如光驱、刻录机等都有内部固件。
硬件(Hardware),是计算机硬件的简称,是指计算机系统中由电子,机械和光电元件等组成的各种物理装置的总称。这些物理装置按系统结构的要求构成一个有机整体为计算机软件运行提供物质基础。简而言之,硬件的功能是输入并存储程序和数据,以及执行程序把数据加工成可以利用的形式。
目标硬件,为产品设备中待驱动的产品硬件。可以理解,在设计不同的产品设备时,不同产品设备所对应的产品硬件不同,并且在产品设备生产完成后,其对应的产品硬件固定,结构不会被更改。
在一些实施例中,目标硬件可以是某个产品设备中待驱动的硬件主板,或者是一个独立的硬件平台,本申请对此不作具体限制。
具体地,当产品设备识别到在产品设备内置的固件启动时,产品设备则读取目标硬件的硬件数据,该硬件数据为用于加载产品设备驱动的相关数据,或者,该硬件数据为用于识别不同产品硬件的硬件标识符的相关数据。
步骤204,根据硬件数据确定目标硬件的硬件标识符。
其中,硬件标识符指的是用于标识不同产品硬件、且唯一的标识符。可以理解,通过目标硬件的硬件标识符,可唯一确定其标识的产品硬件是目标硬件。
在一些实施例中,不同产品设备的产品硬件不同,不同产品硬件所对应的硬件数据也各不相同。所以,可以对不同产品硬件各自对应的硬件数据分别进行转换编码,从而得到能够唯一标识产品硬件的硬件标识符。
在一些实施例中,硬件标识符指的是硬件ID(Identity Document),其中,ID被称为序列号或账号,是某个体系中相对唯一的编码。
具体地,由产品设备已经启动好的固件对读取到的硬件数据进行识别,并根据在确定目标硬件对应的硬件标识符的过程中所使用到的转换编码的规则,对目标硬件的硬件数据进行转换编码,得到用于标识该目标硬件的硬件标识符。
可以理解,各产品硬件各自对应的硬件标识符是存储在资源系统包中的,而产品设备的固件不能直接从系统包读取目标硬件的硬件标识符。在这种情况下,产品设备的固件只能先识别到读取的目标硬件的硬件数据,并对硬件数据进行编码转换后才能得到目标硬件的硬件标识符。
步骤206,从预配置的资源系统包中确定与硬件标识符匹配的驱动资源。
其中,资源系统包记录有不同产品硬件对应的硬件标识符和用于驱动加载的驱动资源。在一些实施例中,资源系统包指的是产品设备在设备烧录或设备升级过程中使用到的软件整包,比如操作系统的资源系统包可以为win10,移动操作系统的资源系统包可以为ios等。
可以理解,不同的产品硬件对应的硬件标识符不同,且不同硬件标识符所匹配的驱动资源也不相同。
具体地,产品设备从预配置的资源系统包中查找到与目标硬件的硬件标识符一致的硬件标识符,并从资源系统包中确定与该硬件标识符相匹配的驱动资源。
在一些实施例中,资源系统包的数量可以为一个,也可以为多个。一般来说,同一个产品系列的各个产品设备的各产品设备所对应的硬件标识符可以只存储在同一个资源系统包中。需要说明的是,本申请通过将各产品设备所对应的硬件标识符尽可能存储在同一个资源系统包的前提是,同一个系统包中针对差异性的产品硬件可以进行兼容处理,在无法兼容的情况下,才考虑新增资源系统包去存储产品设备所对应的硬件标识符。本申请通过尽可能设置较少的资源系统包来兼容不同产品设备间的差异性,并通过存储在资源系统包中的硬件标识符做差异性选择,通过匹配不同的硬件标识符所对应的驱动资源以完成驱动加载,能够减少资源系统包,并减少资源浪费。
在一些实施例中,在产品设备读取到的资源系统包仅为一个的情况下,产品设备可直接从资源系统包中查找与目标硬件相匹配的硬件标识符,并在成功查找到相匹配的硬件标识符的情况下,从资源包中确定与该硬件标识符相匹配的驱动资源。
在一些实施例中,在产品设备读取到的资源系统包为多个的情况下,产品设备可随机从多个资源系统包中选取其中一个资源系统包,并从选取到的资源系统包中查找与目标硬件相匹配的硬件标识符,在查找不到的情况下再依次选取其余资源系统包进行硬件标识符的匹配。
在一些实施例中,在产品设备读取到的资源系统包为多个的情况下,产品设备还可以根据其具体的产品系列,优先选取与所述产品设备的产品系列相关的资源系统包,并从选取到的资源系统包中查找与目标硬件相匹配的硬件标识符,在查找不到的情况下再依次选取其余资源系统包进行硬件标识符的匹配。
步骤208,根据驱动资源对应加载产品设备的驱动。
其中,驱动,是指驱动计算机里软件的程序。驱动程序全称设备驱动程序,是添加到操作系统中的特殊程序,其中包含有关硬件设备的信息。此信息能够使计算机与相应的设备进行通信。驱动程序是硬件厂商根据操作系统编写的配置文件,可以说没有驱动程序,计算机中的硬件就无法工作。
具体地,产品设备从预配置的资源系统包中查找到的与目标硬件相匹配的驱动资源,并通过产品设备的内核根据驱动资源对应加载产品设备的驱动。由于预配置的资源系统包中预先存储了多个不同产品硬件的硬件标识符,因此本申请可以基于少量的资源系统包识别出不同的产品硬件的硬件标识符和驱动资源,从而减少资源浪费。
其中,内核是操作系统最基本的部分。它是为众多应用程序提供对计算机硬件的安全访问的一部分软件,这种访问是有限的,并且内核决定一个程序在什么时候对某部分硬件操作多长时间。内核的分类可分为单内核和双内核以及微内核。严格地说,内核并不是计算机系统中必要的组成部分。
上述物联网操作系统驱动智能加载方法,当产品设备内置的固件启动时,读取目标硬件的硬件数据;目标硬件为产品设备中待驱动的产品硬件;根据硬件数据确定目标硬件的硬件标识符;从预配置的资源系统包中确定与硬件标识符匹配的驱动资源;资源系统包记录有不同产品硬件对应的硬件标识符和用于驱动加载的驱动资源;根据驱动资源对应加载产品设备的驱动。通过给不同的目标硬件定义唯一的硬件标识符,并将不同的硬件标识符配置在资源系统包中,能够在驱动加载过程中,通过同一个资源系统包中的不同硬件标识符来匹配不同的驱动资源以完成驱动加载,能够减少资源系统包,从而减少资源浪费。
在一些实施例中,步骤204具体包括但不限于包括:根据用于预先定义硬件标识符所使用的标识生成规则,对硬件数据进行转换编码,以得到目标硬件的硬件标识符。
其中,标识生成规则指的是将硬件数据进行转换编码后生成硬件标识符所使用的规则。
在一些实施例中,标识生成规则可以是将硬件数据转换成字符串,在产品设备读取到目标硬件的硬件数据之后,可以将硬件数据转换成字符串以形成目标硬件的硬件标识符。
可以理解,在使用相同的标识生成规则将硬件数据进行转换编码得到硬件标识符后,可以将不同的硬件标识符存储在资源系统包中。当产品设备读取到目标硬件的硬件数据后,可以通过使用相同的标识生成规则,对读取到的硬件数据进行编码转换,例如同样可以将读取到的硬件数据转换成字符串,得到目标硬件的硬件标识符。
具体地,产品设备的固件根据预先在资源系统包中定义各产品硬件的硬件标识符所使用到的标识生成规则,对读取到的目标硬件的硬件数据进行转换编码,例如将硬件数据转换成字符串后,得到目标硬件的硬件标识符。通过使用相同的标识生成规则进行硬件标识符的转换,能够保证其识别出的硬件标识符的准确率,进而根据准确的硬件标识符能够从资源系统包中获取到准确的驱动资源,从而保证能够正常进行驱动加载。
在一些实施例中,硬件数据包括目标硬件的基准电压和管脚电平。
其中,基准电压是指传感器置于0℃的温场(即冰水混合物),在通以工作电流的条件下传感器上的电压值,该值出厂时标定,由于传感器的温度系数S相同,则只要知道基准电压值,即可求知任何温度点上的传感器电压值,而不必对传感器进行分度。
管脚,又叫引脚,就是从集成电路内部电路引出与外围电路的接线,所有的引脚就构成了这块芯片的接口。引线末端的一段,通过软钎焊使这一段与印制板上的焊盘共同形成焊点。其中,引脚可划分为脚跟、脚趾、脚侧等部分。电平,指的是两功率或电压之比的对数,有时也可用来表示两电流之比的对数。常用的电平有功率电平和电压电平两类,它们各自又可分为绝对电平和相对电平两种。管脚电平,指的是管脚对应的电平。
在一些实施例中,根据用于预先定义硬件标识符所使用的标识生成规则,对目标硬件的基准电压和管脚电平进行转换编码,以得到目标硬件的硬件标识符。
在一些实施例中,本申请的物联网操作系统驱动智能加载方法具体还包括但不限于包括:通过固件将硬件标识符传递给产品设备的内核。对应的,步骤206具体包括但不限于包括:通过内核从产品设备内部的存储空间中获取资源系统包,并从资源系统包中查找与硬件标识符匹配的驱动资源。
其中,硬件标识符是由固件确定的,即,硬件标识符是由产品设备内置的固件,将产品设备读取到的目标硬件的硬件数据进行编码转换后得到的。此外,资源系统包是存储在产品设备内部的存储系统中的。
具体地,产品设备通过内置的固件将硬件标识符传递给产品设备的内核,然后通过产品设备的内核从产品设备内部的存储空间中读取其预先存储的资源系统包,并从产品设备的资源系统包中查找与目标硬件的硬件标识符相匹配的驱动资源,保证能够正常进行驱动加载。
在一些实施例中,步骤208具体包括但不限于包括:通过内核驱动使用驱动资源中的驱动管脚和驱动电平,加载产品设备的驱动。
具体地,当产品设备的内核从资源系统包中查找到与目标硬件的硬件标识符相匹配的驱动资源之后,通过相同的驱动去驱动使用相匹配的管脚和驱动电平。其中,驱动电平也可称为初始化电平,通过驱动电平可以控制外设设备的上电时序。本申请能够在驱动加载的过程,通过硬件标识符从较少的资源系统包中匹配驱动资源以完成驱动加载,能够减少资源浪费。
在一些实施例中,本申请的物联网操作系统驱动智能加载方法具体还包括但不限于包括:在从资源系统包中获取不到与硬件标识符匹配的驱动资源的情况下,从资源系统包中获取备选的驱动资源,作为目标驱动资源;根据目标驱动资源对应加载产品设备的驱动。
具体地,在产品设备的内核从资源系统包中获取不到与硬件标识符相匹配的驱动资源的情况下,可以从资源系统包中获取驱动过程中使用到的最多的备选的驱动资源,将获取到的备选的驱动资源作为目标驱动资源。产品设备的内核则通过目标驱动资源对应加载产品设备的驱动。本申请通过设置备选的驱动资源,能够保证在匹配不到对应的硬件标识符的情况下,仍然通过备选的驱动资源正常加载驱动,提高驱动加载的成功率。
在一些实施例中,在产品设备的内核从资源系统包中获取不到与硬件标识符相匹配的驱动资源的情况下,具体还可以选择产品设备中发货量或者使用量较大的产品硬件所对应的硬件标识符作为目标硬件标识符,并由产品设备的内核从资源包中获取与目标硬件标识符相匹配的驱动资源,并根据获取到的驱动资源对应加载产品设备的驱动。
在一些实施例中,若识别到硬件标识符出现异常,此时则说明其硬件标识符对应的产品硬件可能出现故障,此时可以将该产品硬件进行返修处理。
在一些实施例中,本申请的物联网操作系统驱动智能加载方法具体还包括但不限于包括:在正常加载产品设备的驱动的情况下,驱动与产品设备所连接的外设设备,以供上层应用使用。
具体地,在产品设备的内核根据不同的硬件标识符驱动使用不同的驱动管脚和驱动电平之后,若识别到产品设备的驱动加载正常,则对外设设备进行初始化后,驱动产品设备与初始化的外设设备进行连接,以供产品设备的上层应用使用,从而保证可以驱动外设设备正常工作。
在一些实施例中,目标硬件的硬件标识符为目标硬件的硬件ID,如图3所示,本申请的物联网操作系统驱动智能加载方法具体还包括但不限于包括以下步骤:
步骤302,对产品设备中的产品硬件定义唯一的硬件ID。
步骤304,启动产品设备的固件,通过产品设备的固件识别硬件ID。
步骤306,产品设备的内核根据不同的硬件ID,通过相同的驱动来驱动使用不同的驱动管脚和驱动电平。
步骤308,在产品设备的驱动加载正常的情况下,对外设设备进行初始化,供上层应用调用。
在一些实施例中,假设一个产品系列下具有三个不同的产品设备,每个产品设备的产品硬件都有唯一的硬件ID,例如A、B和C,当WiFi(无线网络通信技术)设备驱动时,则可以获取内核识别的硬件ID,假设识别到的硬件ID为A,则选择ID为A所对应的产品硬件的管脚,并使用该产品硬件的控制电平,开启WiFi设备的硬件外设电路。需要说明的是,如果内核识别到的硬件ID为B或者C,则可以同理配置不同产品硬件的启动和控制方式。
在一些实施例中,目标硬件的硬件标识符为目标硬件的硬件ID,如图4所示,本申请的物联网操作系统驱动智能加载方法具体还包括但不限于包括以下步骤:
步骤402,当产品设备内置的固件启动时,读取目标硬件的基准电压和管脚电平。
步骤404,根据用于预先定义硬件ID所使用的标识生成规则,对基准电压和管脚电平进行转换编码,以得到目标硬件的硬件ID。
步骤406,从预配置的资源系统包中确定与硬件ID匹配的驱动资源。
步骤408,通过固件将硬件ID传递给产品设备的内核。
步骤410,通过内核从产品设备内部的存储空间中获取资源系统包,并从资源系统包中查找与硬件ID匹配的驱动资源。
步骤412,判断内核是否能够成功查找与硬件ID匹配的驱动资源,若能够成功查找与硬件ID匹配的驱动资源,则执行步骤414,若不能成功查找与硬件ID匹配的驱动资源,则执行步骤416。
步骤414,通过内核驱动使用驱动资源中的驱动管脚和驱动电平,加载产品设备的驱动。
步骤416,从资源系统包中获取备选的驱动资源,作为目标驱动资源。
步骤418,根据目标驱动资源对应加载产品设备的驱动。
步骤420,在正常加载产品设备的驱动的情况下,驱动与产品设备所连接的外设设备,以供上层应用使用。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的物联网操作系统驱动智能加载方法的物联网操作系统驱动智能加载装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个物联网操作系统驱动智能加载装置实施例中的具体限定可以参见上文中对于物联网操作系统驱动智能加载方法的限定,在此不再赘述。
参考图5,为本申请实施例提供的一种物联网操作系统驱动智能加载装置的结构示意图。在一些实施例中,如图5所示,提供了一种物联网操作系统驱动智能加载装置,包括数据读取模块502、数据识别模块504、资源匹配模块506和驱动加载模块508,其中:
数据读取模块502,用于当产品设备内置的固件启动时,读取目标硬件的硬件数据;目标硬件为产品设备中待驱动的产品硬件;
数据识别模块504,用于根据硬件数据确定目标硬件的硬件标识符;
资源匹配模块506,用于从预配置的资源系统包中确定与硬件标识符匹配的驱动资源;资源系统包记录有不同产品硬件对应的硬件标识符和用于驱动加载的驱动资源;
驱动加载模块508,用于根据驱动资源对应加载产品设备的驱动。
上述物联网操作系统驱动智能加载装置,当产品设备内置的固件启动时,读取目标硬件的硬件数据;目标硬件为产品设备中待驱动的产品硬件;根据硬件数据确定目标硬件的硬件标识符;从预配置的资源系统包中确定与硬件标识符匹配的驱动资源;资源系统包记录有不同产品硬件对应的硬件标识符和用于驱动加载的驱动资源;根据驱动资源对应加载产品设备的驱动。通过给不同的目标硬件定义唯一的硬件标识符,并将不同的硬件标识符配置在资源系统包中,能够在驱动加载过程中,通过同一个资源系统包中的不同硬件标识符来匹配不同的驱动资源以完成驱动加载,能够减少资源系统包,从而减少资源浪费。
在一些实施例中,数据识别模块504还用于根据用于预先定义硬件标识符所使用的标识生成规则,对硬件数据进行转换编码,以得到目标硬件的硬件标识符。
在一些实施例中,硬件数据包括目标硬件的基准电压和管脚电平。
在一些实施例中,硬件标识符是由固件确定的,物联网操作系统驱动智能加载装置还包括标识传递模块,标识传递模块用于通过固件将硬件标识符传递给产品设备的内核。资源匹配模块506还用于通过内核从产品设备内部的存储空间中获取资源系统包,并从资源系统包中查找与硬件标识符匹配的驱动资源。
在一些实施例中,驱动加载模块508还用于通过内核驱动使用驱动资源中的驱动管脚和驱动电平,加载产品设备的驱动。
在一些实施例中,驱动加载模块508还用于在从资源系统包中获取不到与硬件标识符匹配的驱动资源的情况下,从资源系统包中获取备选的驱动资源,作为目标驱动资源;根据目标驱动资源对应加载产品设备的驱动。
在一些实施例中,物联网操作系统驱动智能加载装置还包括设备驱动模块,设备驱动模块用于在正常加载产品设备的驱动的情况下,驱动与产品设备所连接的外设设备,以供上层应用使用。
上述物联网操作系统驱动智能加载装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是控制终端,其内部结构图可以如图6所示。该计算机设备包括处理器、存储器、输入/输出接口、通信接口、显示单元和输入装置。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口、显示单元和输入装置通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种物联网操作系统驱动智能加载方法。该计算机设备的显示单元用于形成视觉可见的画面,可以是显示屏、投影装置或虚拟现实成像装置。显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述各方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。

Claims (10)

1.一种物联网操作系统驱动智能加载方法,其特征在于,所述方法包括:
当产品设备内置的固件启动时,读取目标硬件的硬件数据;所述目标硬件为所述产品设备中待驱动的产品硬件;
根据所述硬件数据确定所述目标硬件的硬件标识符;
从预配置的资源系统包中确定与所述硬件标识符匹配的驱动资源;所述资源系统包记录有不同产品硬件对应的硬件标识符和用于驱动加载的驱动资源;
根据所述驱动资源对应加载所述产品设备的驱动。
2.根据权利要求1所述的物联网操作系统驱动智能加载方法,其特征在于,所述根据所述硬件数据确定所述目标硬件的硬件标识符,的步骤具体包括:
根据用于预先定义硬件标识符所使用的标识生成规则,对所述硬件数据进行转换编码,以得到所述目标硬件的硬件标识符。
3.根据权利要求2所述的物联网操作系统驱动智能加载方法,其特征在于,所述硬件数据包括所述目标硬件的基准电压和管脚电平。
4.根据权利要求1所述的物联网操作系统驱动智能加载方法,其特征在于,所述硬件标识符是由所述固件确定的;所述方法还包括:
通过所述固件将所述硬件标识符传递给所述产品设备的内核;
所述从预配置的资源系统包中确定与所述硬件标识符匹配的驱动资源,的步骤包括:
通过所述内核从所述产品设备内部的存储空间中获取所述资源系统包,并从所述资源系统包中查找与所述硬件标识符匹配的驱动资源。
5.根据权利要求4所述的物联网操作系统驱动智能加载方法,其特征在于,所述根据所述驱动资源对应加载所述产品设备的驱动,的步骤具体包括:
通过所述内核驱动使用所述驱动资源中的驱动管脚和驱动电平,加载所述产品设备的驱动。
6.根据权利要求1所述的物联网操作系统驱动智能加载方法,其特征在于,所述方法还包括:
在从所述资源系统包中获取不到与所述硬件标识符匹配的驱动资源的情况下,从所述资源系统包中获取备选的驱动资源,作为目标驱动资源;
根据所述目标驱动资源对应加载所述产品设备的驱动。
7.根据权利要求1至6任一项所述的物联网操作系统驱动智能加载方法,其特征在于,所述方法还包括:
在正常加载所述产品设备的驱动的情况下,驱动与所述产品设备所连接的外设设备,以供上层应用使用。
8.一种物联网操作系统驱动智能加载装置,其特征在于,所述装置包括:
数据读取模块,用于当产品设备内置的固件启动时,读取目标硬件的硬件数据;所述目标硬件为所述产品设备中待驱动的产品硬件;
数据识别模块,用于根据所述硬件数据确定所述目标硬件的硬件标识符;
资源匹配模块,用于从预配置的资源系统包中确定与所述硬件标识符匹配的驱动资源;所述资源系统包记录有不同产品硬件对应的硬件标识符和用于驱动加载的驱动资源;
驱动加载模块,用于根据所述驱动资源对应加载所述产品设备的驱动。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
CN202211334458.1A 2022-10-28 2022-10-28 物联网操作系统驱动智能加载方法、装置、设备和介质 Pending CN115617419A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211334458.1A CN115617419A (zh) 2022-10-28 2022-10-28 物联网操作系统驱动智能加载方法、装置、设备和介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211334458.1A CN115617419A (zh) 2022-10-28 2022-10-28 物联网操作系统驱动智能加载方法、装置、设备和介质

Publications (1)

Publication Number Publication Date
CN115617419A true CN115617419A (zh) 2023-01-17

Family

ID=84877238

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211334458.1A Pending CN115617419A (zh) 2022-10-28 2022-10-28 物联网操作系统驱动智能加载方法、装置、设备和介质

Country Status (1)

Country Link
CN (1) CN115617419A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117215602A (zh) * 2023-10-30 2023-12-12 广州鼎甲计算机科技有限公司 驱动程序更新方法、装置、计算机设备和存储介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117215602A (zh) * 2023-10-30 2023-12-12 广州鼎甲计算机科技有限公司 驱动程序更新方法、装置、计算机设备和存储介质

Similar Documents

Publication Publication Date Title
US9304788B2 (en) Electronic device, configurable component and configuration information storage method thereof
US20120023320A1 (en) Bios chip recovery system and computer thereof
CN109426613B (zh) 在uefi中检索调试数据的方法及其电脑系统
US20180364999A1 (en) Method and Device for Identifying File
US11435985B2 (en) Electronic device and operation method thereof
CN103399840A (zh) 一种计算机配置文件的带外修改方法及计算机
CN101826020B (zh) 电脑启动设备的启动顺序的读取方法
CN109426527B (zh) 在uefi固件及作业系统间分享蓝牙数据的电脑系统及其方法
CN115617419A (zh) 物联网操作系统驱动智能加载方法、装置、设备和介质
CN110119623A (zh) 一种利用tpcm实现固件主动度量的可信主板实现方法
CN113504918A (zh) 设备树配置优化方法、装置、计算机设备和存储介质
CN109002331A (zh) 触摸屏的启动方法、装置、计算机设备和存储介质
CN115454512A (zh) 一种芯片驱动加载配置方法、装置、设备和存储介质
US20230315213A1 (en) Program download method for intelligent terminal and intelligent terminal
US11500647B2 (en) Systems and methods for achieving faster boot times using BIOS attribute mitigation
US11340882B2 (en) Systems and methods for enforcing update policies while applying updates from bootable image file
CN106095643A (zh) 系统参数存取的设定方法及其服务器
CN115509618A (zh) 驱动控制方法、装置、设备、存储介质和程序产品
CN105159714A (zh) 一种pmic初始化方法和电子设备
CN109408124A (zh) 存储设备及其制作方法、操作系统双模式引导方法及装置
CN115827347A (zh) 一种嵌入式设备的控制方法及嵌入式设备
US11556350B2 (en) Electronic device and method for setting at least one specified pin read during booting stage when configurating a display panel dynamically
CN111158733A (zh) 一种bmc升级方法、装置、设备及计算机可读存储介质
CN111552617A (zh) NAND Flash的温度获取方法、装置、计算机设备及存储介质
CN114115977B (zh) Bmc镜像构建方法、系统、终端及存储介质

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