CN111597140B - 一种多核设备功能配置方法及其装置 - Google Patents
一种多核设备功能配置方法及其装置 Download PDFInfo
- Publication number
- CN111597140B CN111597140B CN202010347095.XA CN202010347095A CN111597140B CN 111597140 B CN111597140 B CN 111597140B CN 202010347095 A CN202010347095 A CN 202010347095A CN 111597140 B CN111597140 B CN 111597140B
- Authority
- CN
- China
- Prior art keywords
- information
- sub
- parameters
- program
- modified
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 70
- 230000008569 process Effects 0.000 claims abstract description 28
- 230000006870 function Effects 0.000 claims description 67
- 230000004048 modification Effects 0.000 claims description 5
- 238000012986 modification Methods 0.000 claims description 5
- 230000000977 initiatory effect Effects 0.000 claims 1
- 238000012423 maintenance Methods 0.000 abstract description 6
- 238000004891 communication Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 12
- 238000004590 computer program Methods 0.000 description 7
- 238000007726 management method Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 5
- 230000002159 abnormal effect Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 239000007787 solid Substances 0.000 description 3
- 230000001419 dependent effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 102000018059 CS domains Human genes 0.000 description 1
- 108050007176 CS domains Proteins 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 210000005036 nerve Anatomy 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000000344 soap Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/177—Initialisation or configuration control
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本申请实施例提供了一种多核设备功能配置方法及其装置,一种多核设备功能配置方法包括:配置设备启动过程的多个阶段程序;每阶段程序包括多个子功能项和多个参数,多个子功能项和多个参数用于启动所在阶段程序;根据用户需求,对多个阶段程序中的各个阶段程序的部分子功能项和/或部分参数进行抽取和修改,获得配置文件和通用文件;配置文件包括修改后的各子功能项和/或修改后的各参数,通用文件包括经抽取后的多个阶段程序。所以实施本申请实施例,通过将设备启动过程中的部分子功能项和部分参数提取出来,编辑为配置文件,针对不同客户的需求,更改配置文件中的参数,满足不同客户的需求,降低运营维护成本,提升用户使用体验。
Description
技术领域
本申请涉及通信技术领域,尤其涉及一种多核设备功能配置方法及其装置。
背景技术
嵌入式产品发展到现阶段,电子元器件高度集成,系统功能和软件功能也是十分丰富。在控制这些功能列表支持和不支持,传统的方式有如下的两种,一种把支持功能做的特性宏控,把该功能包含在宏控内,需要时打开该宏控,不需要时关闭宏控。第二种方式为设置静态参数,代码逻辑中用变量,通过获取不同的值,实现功能的控制。
这两种方式是系统平台提供的常见代码控制的方式,在实际落地到产品的时候,暴露出来如下的一些问题,情景:客户A和客户B针对同一个功能,可能需求是不一样的,参数细节不一致,还存在两个客户需求的功能列表是不一样的,对于这些情景,需要定义两个版本和代码区别处理两个客户。当客户很多时,不同的客户需求不一样,其参数细节不一致,因此开发人员需要定义多个版本,就需要大量的版本维护工作,在整个软硬件、生产、项目管理中增加人力成本,而且,在繁多的定制中,出现失误纰漏的概率也大幅增加,变相的增加公司的运营成本。
发明内容
本申请实施例公开了一种多核设备功能配置方法及其装置,克服现有技术的缺陷,能够降低运营维护成本,提升用户使用体验。
第一方面,本申请实施例公开了一种多核设备功能配置方法,包括:配置设备启动过程的多个阶段程序;所述多个阶段程序包括辅助引导加载程序、引导加载程序、操作系统内核程序、应用程序和调制解调程序,其中,每阶段程序包括多个子功能项和多个参数,所述多个子功能项和多个参数用于启动所在阶段程序;根据用户需求,对所述多个阶段程序中的各个阶段程序的部分子功能项和/或部分参数进行抽取和修改,获得配置文件和通用文件;所述配置文件包括修改后的各子功能项和/或修改后的各参数,所述通用文件包括抽取后的多个阶段程序。
可以看到,首先配置设备启动过程的多个阶段程序,其中每个阶段程序包括多个子功能项和多个参数,多个子功能项和多个参数用于启动各阶段程序,然后根据用户的需求,对各阶段程序中的部分子功能项和部分参数进行抽取、修改,最终形成配置文件,而多个阶段程序经抽取后得到的文件为通用文件。实施本申请实施例,将原本的多个阶段程序分为了配置文件和通用文件,而配置文件是根据用户的需求,从原本的多个阶段程序中抽取出来,修改后得到的,针对不同的用户,需求不同,因此配置文件也不同;在后期对设备维护的过程中,只需要修改配置文件中的功能项和参数,无需对原本的多个阶段程序进行修改,就可以改变设备的功能,满足用户的需求,降低了运营维护成本,提升用户使用体验。
基于第一方面,在可能的实施方式中,所述配置文件包括头部信息、对所述调制解调程序的部分子功能项和/或部分参数进行修改形成的调制解调信息、对所述操作系统内核程序的部分子功能项和/或部分参数,以及所述应用程序的部分子功能项和/或部分参数进行修改形成的内核信息、对所述引导加载程序的部分子功能项和/或部分参数进行修改形成的微内核信息和对所述辅助引导加载程序的部分子功能项和/或部分参数进行修改形成的辅助引导加载信息;所述头部信息至少包括所述调制解调信息的起始地址、所述内核信息的起始地址、所述微内核信息的起始地址、所述辅助引导加载信息的起始地址以及所述修改后的各子功能项所对应的偏移地址,和/或修改后的各参数所对应的偏移地址。
可以看到,本申请中的配置文件包括头部信息、调制解调信息、内核信息、微内核信息和辅助引导加载信息,其中,调制解调信息中包括的是与设备启动过程的调制解调程序相对应的信息,该信息是对调制解调程序中的部分子功能项和/或部分参数进行修改后得到的,同理,内核信息中包括的是与设备启动过程的内核程序和应用程序相对应的、经修改的部分子功能项和/或部分参数,微内核信息中包括的是与设备启动过程的引导加载程序相对应的、经修改的部分子功能项和/或部分参数,辅助引导加载信息中包括的是与设备启动过程的辅助引导加载程序相对应的、经修改的部分子功能项和/或部分参数,而头部信息中包括的是各信息的起始地址和偏移地址。根据各信息的起始地址和偏移地址,能够获得各个功能项和参数。
基于第一方面,在可能的实施方式中,在所述获得配置文件和通用文件之后,所述方法还包括:基于所述通用文件进行所述设备的启动,且在所述启动的过程中调入所述配置文件中的修改后的各子功能项和/或修改后的各参数。
可以看到,在获得配置文件和通用文件后,基于通用文件对设备进行启动,在设备启动的过程中,通用文件会调入配置文件中的修改后的各子功能项和/或修改后的各参数,从而启动设备的各个功能,完成设备的启动过程。
基于第一方面,在可能的实施方式中,所述获取所述配置文件中的修改后的各子功能项和/或修改后的各参数,包括:根据所述调制解调信息的起始地址、所述内核信息的起始地址、所述微内核信息的起始地址、所述辅助引导加载信息的起始地址以及所述修改后的各子功能项所对应的偏移地址,和/或修改后的各参数所对应的偏移地址,获取修改后的各子功能项和/或修改后的各参数。
可以理解,根据配置文件的头部信息中,各个信息的起始地址和偏移地址,可以确定出修改后的各子功能项和/或修改后的各参数的具体地址,获得修改后的各子功能项和/或修改后的各参数。
基于第一方面,在可能的实施方式中,在所述根据用户需求,对所述多个阶段程序中的各个阶段程序的部分子功能项和/或部分参数进行抽取和修改之前,所述方法还包括:接收用户发送的所述设备的需求信息;所述设备的需求信息包括所述设备的至少一个功能信息。
可以理解,在根据用户需求,对多个阶段程序中的各个阶段程序的部分子功能项和/或部分参数进行抽取和修改之前,还需要接收用户发送的关于设备的需求信息,根据用户的需求信息对各功能项和参数进行修改,其中,关于设备的需求信息包括设备的至少一个功能信息需求。
第二方面,本申请实施例还提供了一种多核设备功能配置装置,包括:配置单元,用于配置设备启动过程的多个阶段程序;所述多个阶段程序包括辅助引导加载程序、引导加载程序、操作系统内核程序、应用程序和调制解调程序,其中,每阶段程序包括多个子功能项和多个参数,所述多个子功能项和多个参数用于启动所在阶段程序;修改单元,用于根据用户需求,对所述多个阶段程序中的各个阶段程序的部分子功能项和/或部分参数进行抽取和修改,获得配置文件和通用文件;所述配置文件包括修改后的各子功能项和/或修改后的各参数,所述通用文件包括抽取后的多个阶段程序。
基于第二方面,在可能的实施方式中,所述配置文件包括头部信息、对所述调制解调程序的部分子功能项和/或部分参数进行修改形成的调制解调信息、对所述操作系统内核程序的部分子功能项和/或部分参数,以及所述应用程序的部分子功能项和/或部分参数进行修改形成的内核信息、对所述引导加载程序的部分子功能项和/或部分参数进行修改形成的微内核信息和对所述辅助引导加载程序的部分子功能项和/或部分参数进行修改形成的辅助引导加载信息;所述头部信息包括所述调制解调信息的起始地址、所述内核信息的起始地址、所述微内核信息的起始地址、所述辅助引导加载信息的起始地址以及所述修改后的各子功能项所对应的偏移地址,和/或修改后的各参数所对应的偏移地址。
基于第二方面,在可能的实施方式中,所述装置还包括:启动单元,用于基于所述通用文件进行所述设备的启动,且在所述启动的过程中调入所述配置文件中的修改后的各子功能项和/或修改后的各参数。
基于第二方面,在可能的实施方式中,所述启动单元还用于:根据所述调制解调信息的起始地址、所述内核信息的起始地址、所述微内核信息的起始地址、所述辅助引导加载信息的起始地址以及所述修改后的各子功能项所对应的偏移地址,和/或修改后的各参数所对应的偏移地址,获取修改后的各子功能项和/或修改后的各参数。
基于第二方面,在可能的实施方式中,所述装置还包括接收单元,所述接收单元还用于接收用户发送的所述设备的需求信息;所述设备的需求信息包括所述设备的至少一个功能信息。
第三方面,本申请实施例提供了一种多核设备功能配置设备,包括处理器、存储器和收发器,收发器用于接收或发送程序、信息和数据,存储器用于存储程序、信息和数据,处理器用于调用存储器存储的程序、信息和数据,执行上述第一方面或第一方面的任意具体实现方式所描述的方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,包括程序和指令,当计算机运行程序和指令时,可用于实现第一方面描述的方法。
第五方面,本申请实施例提供一种计算机程序产品,该计算机程序产品包括程序指令,当该计算机程序产品被多核设备功能配置装置执行时,该装置执行前述第一方面所述方法。该计算机程序产品可以为一个软件安装包,在需要使用前述第一方面的任一种可能的设计提供的方法的情况下,可以下载该计算机程序产品,并在多核设备功能配置装置上执行该计算机程序产品,以实现第一方面所述方法。
可以看到,本申请实施例提供了一种多核设备功能配置方法,包括首先配置设备启动过程的多个阶段程序,每阶段程序包括多个子功能项和多个参数,多个子功能项和多个参数用于启动所在阶段程序;然后,根据用户的需求,将多个阶段程序中的各个阶段程序的部分子功能项和/或部分参数进行抽取和修改,获得配置文件和通用文件;最后根据通用文件,获取配置文件中的修改后的各子功能项和/或修改后的各参数,启动所述设备。所以实施本申请实施例,根据用户的需求,抽取设备各个阶段程序中的部分子功能项和/或部分参数,并进行修改,获得配置文件,后期可以通过更改子功能项或者参数,实现对设备功能的控制,满足不同客户的需求,提升用户使用体验。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种多核设备功能配置方法示意图;
图2是本申请实施例提供的嵌入式设备启动过程的示意图;
图3是本申请实施例提供的配置文件的结构示意图;
图4是本申请实施例提供的一种数据备份机制示意图;
图5是本申请实施例提供的一种多核设备功能配置装置示意图;
图6是本申请实施例提供的一种多核设备功能配置设备示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本实用新型一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,在本申请实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
需要说明的是,当在本说明书和所附权利要求书中使用时,术语“包括”以及它们的任何变形,意图在于覆盖不排他的包含。例如包含了一系列单元/器件的系统、产品或者装置没有限定于已列出的单元/器件,而是可选地还包括没有列出的单元/器件,或者还可选地包括这些产品或者装置固有的其他单元/器件。
还应当理解,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”或“在…的情况下”。
嵌入式系统包括硬件和软件两部分,硬件包括微处理器、存储器及外设器件和I/O端口等,软件部分包括操作系统软件和应用程序等,应用程序控制着系统的运作和行为,而操作系统控制着应用程序与硬件的交互作用,嵌入式系统如同物联网的“大脑”和“中枢神经”,物联网内的所有个体都需要嵌入式系统来传输和处理信息。物联网的嵌入式系统,简单的单核系统处理较简单,现在常见的系统为多核处理器,比如应用处理器+调制解调处理器,复杂的还包含其他的一些数字信号处理器等。
参考图1,图1为本申请实施例提供的一种多核设备功能配置方法,该方法包括但不限于以下:
S101、配置设备启动过程的多个阶段程序。
嵌入式设备启动过程即启动嵌入式设备的多个阶段程序,参考图2,图2为本申请实施例提供的一种嵌入式设备启动过程的示意图,包括:辅助引导加载程序、引导加载程序、操作系统内核程序、应用程序和调制解调程序。
需要说明的是,对于个人计算机来说,其开机后的初始化处理器配置、初始化硬件等操作是由BIOS(Basic Input/Output System)完成的,但对于嵌入式设备来说,出于经济性、价格方面的考虑,一般不配置BIOS,也就是说在嵌入式设备中,通常并没有像BIOS那样的固件程序,而整个设备的加载启动任务就由辅助引导加载程序和引导加载程序来完成,简单地说,通过辅助引导加载程序和引导加载程序,可以初始化硬件设备、建立内存空间的映射图,从而将设备的软硬件环境设定在一个合适的状态;完成基本软硬件环境初始化后,调用操作系统内核程序、并进行解压缩操作,内核解压好之后,系统将解压后的内核放在内存之中,并调用一系列的初始化函数初始化各种设备,完成操作系统Linux核心环境的建立,即启动内存管理、任务调度、加载驱动程序;最后启动应用处理器和调制解调处理器,执行应用程序或等待用户命令。
配置嵌入式设备启动过程的多个阶段程序,其中,每个阶段程序中包括多个子功能项和多个参数,多个子功能项和多个参数用于启动所在阶段程序,配置的多个阶段程序中除了包含各阶段程序外,还包含嵌入式系统启动所有的依赖文件,平台固件(引导系统,电源管理,权限控制,通信系统等)、可应用的文件系统等。
S102、根据用户需求,对多个阶段程序中的各个阶段程序的部分子功能项和/或部分参数进行抽取和修改,获得配置文件和通用文件。
根据用户需求,对多个阶段程序中的各个阶段程序的部分子功能项和/或部分参数进行抽取和修改,获得配置文件和通用文件,配置文件包括修改后的各子功能项和/或修改后的各参数,通用文件包括抽取后的多个阶段程序。
根据用户需求,对调制解调程序的部分子功能项和/或部分参数进行编辑、扩展,得到调制解调信息;对操作系统内核程序的部分子功能项和/或部分参数,以及应用程序的部分子功能项和/或部分参数进行编辑、扩展,得到内核信息;对引导加载程序的部分子功能项和/或部分参数进行编辑、扩展,得到微内核信息;对辅助引导加载程序的部分子功能项和/或部分参数进行编辑、扩展,得到辅助引导加载信息;其中编辑、扩展包括定义数据类型、定义参数等。
参考图3,图3为本申请实施例提供的配置文件的结构示意图,配置文件包括:头部信息、调制解调信息、内核信息、微内核信息和辅助引导加载信息,其中,头部信息至少包括调制解调信息的起始地址、内核信息的起始地址、微内核信息的起始地址、辅助引导加载信息的起始地址以及修改后的各子功能项所对应的偏移地址,和/或修改后的各参数所对应的偏移地址等。也就是说,根据配置文件中各信息的起始地址和修改后的各子功能项所对应的偏移地址,和/或修改后的各参数所对应的偏移地址,能够获取修改后的各子功能项和/或修改后的各参数。
关于配置文件中的调制解调信息、内核信息、微内核信息和辅助引导加载信息中包含的功能项以及参数,可参考表1。表1中的item表示功能项,description表示功能项的解释说明,default value表示功能项的默认值,type表示功能项的类型,size表示功能项的字节大小。
表1
调制解调信息中包括修改后的与启动调制解调程序相关的各子功能项和/或参数,例如与2G、3G、4G和窄带网络NB等相关的通信技术,具体如,功能项tcp timeout表征国网TCP连接超时时间,功能项cs_enable表征CS域是否关闭,功能项rndis_auto表征RNDIS是否开机自动拨号,功能项tcp_packet_enable表征TCP分包读取控制使能信号等;内核信息中包括修改后的与启动操作系统内核程序和应用程序相关的各子功能项和/或参数,例如对内核驱动,内核调度,用户层应用数据等功能项相关的数据、信息,具体如,功能项baud_rate表征波特率,功能项uart_log表征串口log功能配置,功能项uart_app表征应用使用指定串口配置,功能项usb_func是USB功能定义;微内核信息中包括修改后的与引导加载程序相关的各子功能项和/或参数,用于指示引导过程中的功能开启关闭,具体如,功能项uart_log表征串口log功能配置;辅助引导加载信息中包括修改后的与启动辅助引导加载信息相关的各子功能项和/或参数,例如:功能项restore_type表示系统备份恢复类型位。
在一种实施例中,通过对功能项进行设置,或者改变功能项的参数,可以改变设备的功能。
在一种实施例中,研发人员通过设置配置文件中的不同功能项和/或参数,满足不同国家或不同类型的客户的需求,在客户使用设备或产品的过程中,维护人员也可以通过更改功能项和/或参数,来满足客户的需求。
考虑到数据安全,本申请还创建了备份文件,备份文件用于对配置文件进行更新或备份。参考图4所示,图4为本申请实施例提供的一种数据备份机制示意图。在将配置文件烧录至设备存储器的固定位置后,通过在分区中划分两个区域块区域块A(Block A)和区域块B(Block B)来实现,Block A用来存放配置文件,Block B用来存放备份文件。情况一,在对Block A中的配置文件中的数据升级过程中,发生异常中断(可能是数据自身异常中断,也可能是存储器突然损坏导致数据中断),此时Block A中的数据已损坏,Block B中的数据完好,通过将Block B中的数据拷贝到Block A中(若是存储器突然损坏,一般存储器的内存设置会大于数据所需内存,在将Block B中的数据拷贝至Block A的过程中,会自动跳过损坏区域,内容上会衔接),而使Block A中的配置文件数据恢复;情况二,在数据升级过程中,升级Block A后,升级Block B前,此时发生异常中断,经校验,Block A和Block B均正常,将Block A和Block B的版本号作比较,若不同,则表示Block A中的数据比Block B中的数据新,此时将Block A中的配置文件的数据拷贝到Block B中的备份文件中进行备份;情况三,在对Block B中的数据升级过程中,发生异常中断,此时Block B中的备份文件数据损坏,Block A中的数据完好,通过将Block A中的配置文件数据拷贝到Block B中,使Block B中的备份文件数据恢复。通过创建备份文件,来对配置文件进行更新或备份,保证了配置文件在烧录至设备后数据的正确性。
需要说明的是,在根据用户需求,对多个阶段程序中的各个阶段程序的部分子功能项和/或部分参数进行抽取和修改之前,还需要接收用户发送的设备的需求信息;设备的需求信息中包括设备的至少一个功能信息。
S103、基于通用文件进行设备的启动,且在启动的过程中调入配置文件中的修改后的各子功能项和/或修改后的各参数
通用文件中包含整个嵌入式系统启动所有依赖文件,平台固件(引导系统,电源管理,权限控制,通信系统等)、可应用的文件系统等,启动通用文件,在通用文件的运行过程中,会调入配置文件中的修改后的各子功能项和/或修改后的各参数,从而启动相应的功能,完成设备的启动过程。举例来说,配置文件中包括功能项A、B、C,且功能项A、B、C对应着设备的D功能,启动通用文件,在启动过程中,启动D功能的时候,会调入配置文件中的功能项A、B、C(根据起始地址和偏移地址,获得功能项A、B、C),D功能启动结束后,会继续运行通用文件中的其他文件或系统,直至设备启动完成。
在一种实施例中,将获得的配置文件转化为设备支持的文件格式,然后将配置文件烧录至设备的固定存储器位置,在设备启动时,配置文件会加载到设备的共享内存中,多个处理器均可以通过共享内存获取到各个子功能项和参数。
可以看到,本申请中,根据用户需求,将设备启动过程中的各个阶段程序的部分子功能项和部分参数抽取出来,然后对该部分子功能项和部分参数进行编辑和扩展,获得配置文件和通用文件,其中配置文件中包含与设备启动过程的各个阶段程序相对应的信息,具体为:调制解调信息包括与调制解调程序中的子功能项和参数相关的内容,内核信息包括与操作系统内核程序、应用程序中的子功能项和参数相关的内容,微内核信息包括与引导加载程序中的子功能项和参数相关的内容,辅助引导加载信息包括与辅助引导加载程序中的子功能项和参数相关的内容;根据通用文件和配置文件,启动设备。所以实施本申请实施例,通过将设备启动过程中的部分子功能项和部分参数抽取出来,进行修改,获得配置文件,通过对配置文件中的子功能项和参数进行设置或更改,可以实现设备不同的功能,满足不同用户的需求,能够降低运营维护成本,提升用户使用体验。
参考图5,图5为本申请实施例提供的一种多核设备功能配置装置50的示意图,该装置50包括:
配置单元501,用于配置设备启动过程的多个阶段程序;多个阶段程序包括辅助引导加载程序、引导加载程序、操作系统内核程序、应用程序和调制解调程序,其中,每阶段程序包括多个子功能项和多个参数,多个子功能项和多个参数用于启动所在阶段程序;
修改单元502,用于根据用户需求,对多个阶段程序中的各个阶段程序的部分子功能项和/或部分参数进行抽取和修改,获得配置文件和通用文件;配置文件包括修改后的各子功能项和/或修改后的各参数,通用文件包括抽取后的多个阶段程序。
在一种实施方式中,配置文件包括头部信息、对调制解调程序的部分子功能项和/或部分参数进行修改形成的调制解调信息、对操作系统内核程序的部分子功能项和/或部分参数,以及应用程序的部分子功能项和/或部分参数进行修改形成的内核信息、对引导加载程序的部分子功能项和/或部分参数进行修改形成的微内核信息和对辅助引导加载程序的部分子功能项和/或部分参数进行修改形成的辅助引导加载信息;头部信息包括调制解调信息的起始地址、内核信息的起始地址、微内核信息的起始地址、辅助引导加载信息的起始地址以及修改后的各子功能项所对应的偏移地址,和/或修改后的各参数所对应的偏移地址。
在一种实施方式中,该装置50还包括启动单元503,用于根据通用文件,获取配置文件中的修改后的各子功能项和/或修改后的各参数,启动设备
在一种实施方式中,启动单元503还用于:根据调制解调信息的起始地址、内核信息的起始地址、微内核信息的起始地址、辅助引导加载信息的起始地址以及修改后的各子功能项所对应的偏移地址,和/或修改后的各参数所对应的偏移地址,获取修改后的各子功能项和/或修改后的各参数。
在一种实施方式中,该装置50还包括备份单元504,备份单元504用于创建备份文件;备份文件用于对配置文件进行更新或备份。
在一种实施方式中,该装置50还包括接收单元505,接收单元505还用于接收用户发送的设备的需求信息;设备的需求信息包括设备的至少一个功能信息。
上述装置50的各功能模块用于实现图1实施例所描述的方法,具体内容可参考图1实施例的相关内容中的描述,为了说明书的简洁,这里不再赘述。
参见图6,图6是本申请实施例提供的一种多核设备功能配置设备800的示意图,该设备800至少包括:处理器810、通信接口820和存储器830,处理器810、通信接口820和存储器830通过总线840进行耦合。其中,
处理器810通过调用存储器830中的程序代码,用于运行图5中的配置单元501、修改单元502、启动单元503、备份单元504、接收单元505。在实际应用中,处理器810可以包括一个或者多个通用处理器,其中,通用处理器可以是能够处理电子指令的任何类型的设备,包括中央处理器(Central Processing Unit,CPU)、微处理器、微控制器、主处理器、控制器以及ASIC(Application Specific Integrated Circuit,专用集成电路)等等。处理器810读取存储器830中存储的程序代码,与通信接口820配合执行本申请上述实施例中多核设备启动装置50执行的方法的部分或者全部步骤。
通信接口820可以为有线接口(例如以太网接口),用于与其他计算节点或装置进行通信。当通信接口820为有线接口时,通信接口820可以采用TCP/IP之上的协议族,例如,RAAS协议、远程函数调用(Remote Function Call,RFC)协议、简单对象访问协议(SimpleObject Access Protocol,SOAP)协议、简单网络管理协议(Simple Network ManagementProtocol,SNMP)协议、公共对象请求代理体系结构(Common Object Request BrokerArchitecture,CORBA)协议以及分布式协议等等。
存储器830可以存储有程序代码以及程序数据。其中,程序代码包括配置单元501的代码、修改单元502的代码、启动单元503的代码、备份单元504的代码、接收单元505的代码。程序数据包括:头部信息、调制解调信息、内核信息、微内核信息和辅助引导加载信息等等。在实际应用中,存储器830可以包括易失性存储器(Volatile Memory),例如随机存取存储器(Random Access Memory,RAM);存储器也可以包括非易失性存储器(Non-VolatileMemory),例如只读存储器(Read-Only Memory,ROM)、快闪存储器(Flash Memory)、硬盘(Hard Disk Drive,HDD)或固态硬盘(Solid-State Drive,SSD)存储器还可以包括上述种类的存储器的组合。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,所述计算机程序被硬件(例如处理器等)执行,以实现本申请实施例中多核设备功能配置设备执行的任意一种方法的部分或者全部步骤。
本申请实施例还提供一种计算机程序产品,当所述计算机程序产品被计算机读取并执行时,使得多核设备功能配置装置执行本申请实施例中多核设备功能配置方法的部分或全部步骤。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、存储盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态存储盘SolidState Disk,SSD)等。在所述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,也可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本申请实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (6)
1.一种多核设备功能配置方法,其特征在于,包括:
配置设备启动过程的多个阶段程序;所述多个阶段程序包括辅助引导加载程序、引导加载程序、操作系统内核程序、应用程序和调制解调程序,其中,每阶段程序包括多个子功能项和多个参数,所述多个子功能项和多个参数用于启动所在阶段程序;
根据用户需求,对所述多个阶段程序中的各个阶段程序的部分子功能项和/或部分参数进行抽取和修改,获得配置文件和通用文件;所述配置文件包括修改后的各子功能项和/或修改后的各参数,具体的,所述配置文件包括头部信息、对所述调制解调程序的部分子功能项和/或部分参数进行修改形成的调制解调信息、对所述操作系统内核程序的部分子功能项和/或部分参数,以及所述应用程序的部分子功能项和/或部分参数进行修改形成的内核信息、对所述引导加载程序的部分子功能项和/或部分参数进行修改形成的微内核信息和对所述辅助引导加载程序的部分子功能项和/或部分参数进行修改形成的辅助引导加载信息;所述头部信息至少包括所述调制解调信息的起始地址、所述内核信息的起始地址、所述微内核信息的起始地址、所述辅助引导加载信息的起始地址以及所述修改后的各子功能项所对应的偏移地址,和/或修改后的各参数所对应的偏移地址;所述通用文件包括经抽取后的多个阶段程序;
基于所述通用文件进行所述设备的启动,且在所述启动的过程中调入所述配置文件中的修改后的各子功能项和/或修改后的各参数。
2.根据权利要求1所述的方法,其特征在于,获取配置文件中的修改后的各子功能项和/或修改后的各参数,包括:
根据所述调制解调信息的起始地址、所述内核信息的起始地址、所述微内核信息的起始地址、所述辅助引导加载信息的起始地址以及所述修改后的各子功能项所对应的偏移地址,和/或修改后的各参数所对应的偏移地址,获取修改后的各子功能项和/或修改后的各参数。
3.根据权利要求1-2任一项所述的方法,其特征在于,在所述根据用户需求,对所述多个阶段程序中的各个阶段程序的部分子功能项和/或部分参数进行抽取和修改之前,所述方法还包括:
接收用户发送的所述设备的需求信息;所述设备的需求信息包括所述设备的至少一个功能信息。
4.一种多核设备功能配置装置,其特征在于,包括:
配置单元,用于配置设备启动过程的多个阶段程序;所述多个阶段程序包括辅助引导加载程序、引导加载程序、操作系统内核程序、应用程序和调制解调程序,其中,每阶段程序包括多个子功能项和多个参数,所述多个子功能项和多个参数用于启动所在阶段程序;
修改单元,用于根据用户需求,对所述多个阶段程序中的各个阶段程序的部分子功能项和/或部分参数进行抽取和修改,获得配置文件和通用文件;所述配置文件包括修改后的各子功能项和/或修改后的各参数,具体的,所述配置文件包括头部信息、对所述调制解调程序的部分子功能项和/或部分参数进行修改形成的调制解调信息、对所述操作系统内核程序的部分子功能项和/或部分参数,以及所述应用程序的部分子功能项和/或部分参数进行修改形成的内核信息、对所述引导加载程序的部分子功能项和/或部分参数进行修改形成的微内核信息和对所述辅助引导加载程序的部分子功能项和/或部分参数进行修改形成的辅助引导加载信息;所述头部信息包括所述调制解调信息的起始地址、所述内核信息的起始地址、所述微内核信息的起始地址、所述辅助引导加载信息的起始地址以及所述修改后的各子功能项所对应的偏移地址,和/或修改后的各参数所对应的偏移地址;所述通用文件包括经抽取后的多个阶段程序;
启动单元,用于基于所述通用文件进行所述设备的启动,且在所述启动的过程中调入所述配置文件中的修改后的各子功能项和/或修改后的各参数。
5.根据权利要求4所述的装置,其特征在于,所述启动单元还用于:根据所述调制解调信息的起始地址、所述内核信息的起始地址、所述微内核信息的起始地址、所述辅助引导加载信息的起始地址以及所述修改后的各子功能项所对应的偏移地址,和/或修改后的各参数所对应的偏移地址,获取修改后的各子功能项和/或修改后的各参数。
6.根据权利要求4或5所述的装置,其特征在于,所述装置还包括接收单元,所述接收单元还用于接收用户发送的所述设备的需求信息;所述设备的需求信息包括所述设备的至少一个功能信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010347095.XA CN111597140B (zh) | 2020-04-27 | 2020-04-27 | 一种多核设备功能配置方法及其装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010347095.XA CN111597140B (zh) | 2020-04-27 | 2020-04-27 | 一种多核设备功能配置方法及其装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111597140A CN111597140A (zh) | 2020-08-28 |
CN111597140B true CN111597140B (zh) | 2024-06-07 |
Family
ID=72185155
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010347095.XA Active CN111597140B (zh) | 2020-04-27 | 2020-04-27 | 一种多核设备功能配置方法及其装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111597140B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113010180A (zh) * | 2021-03-12 | 2021-06-22 | 山东英信计算机技术有限公司 | 一种固件生成方法、系统、设备以及介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010026202A2 (en) * | 2008-09-05 | 2010-03-11 | Roche Diagnostics Operations Inc. | Insulin pump programming software for selectively modifying configuration data |
CN109213531A (zh) * | 2018-09-01 | 2019-01-15 | 哈尔滨工程大学 | 一种基于emif16的多核dsp上电自启动的简化实现方法 |
CN110286953A (zh) * | 2019-07-03 | 2019-09-27 | 迈普通信技术股份有限公司 | 嵌入式系统的启动方法、装置、嵌入式设备及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7412595B2 (en) * | 2004-12-30 | 2008-08-12 | Intel Corporation | Customization of electronic devices via pre-boot space |
-
2020
- 2020-04-27 CN CN202010347095.XA patent/CN111597140B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010026202A2 (en) * | 2008-09-05 | 2010-03-11 | Roche Diagnostics Operations Inc. | Insulin pump programming software for selectively modifying configuration data |
CN109213531A (zh) * | 2018-09-01 | 2019-01-15 | 哈尔滨工程大学 | 一种基于emif16的多核dsp上电自启动的简化实现方法 |
CN110286953A (zh) * | 2019-07-03 | 2019-09-27 | 迈普通信技术股份有限公司 | 嵌入式系统的启动方法、装置、嵌入式设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111597140A (zh) | 2020-08-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6272991B2 (ja) | プリブートファームウェア更新のための選択的パワーマネジメント | |
EP2675110B1 (en) | Method, system and terminal for system update between mobile communication terminals | |
US8856723B2 (en) | Apparatus and method for network driver injection into target image | |
JP5681465B2 (ja) | 情報処理システム、情報処理装置、準備方法、プログラムおよび記録媒体 | |
CA2380762A1 (en) | Internet-enabled device provisioning, upgrade and recovery mechanism | |
CN101719073A (zh) | 一种基于智能客户端的按需下载实现方法 | |
CN105824722A (zh) | 计算机云端备份还原系统 | |
US8893114B1 (en) | Systems and methods for executing a software package from within random access memory | |
CN114024853B (zh) | 一种裸金属节点的硬件信息收集方法、系统及相关组件 | |
US20200341743A1 (en) | Selecting and sending subset of components to computing device prior to operating system install | |
CN111597140B (zh) | 一种多核设备功能配置方法及其装置 | |
JP2009211640A (ja) | 無線lanを使用したネットワークブート方法およびネットワークブート用端末 | |
CN111433747A (zh) | 用于加载操作系统的虚拟存储器 | |
CN113031999A (zh) | 服务器部件固件升级的控制方法、装置、设备及存储介质 | |
CN111104129B (zh) | 内存操作系统制作方法、装置、电子设备和存储介质 | |
CN113821220A (zh) | 一种linux操作系统的安装方法和装置 | |
CN115495161B (zh) | Bios选项修改的生效方法和装置、存储介质 | |
CN110928624A (zh) | 用于用户终端的云桌面调用方法、装置及终端 | |
CN115809116A (zh) | 一种在内核功能不全的linux系统下运行容器镜像的方法及系统 | |
CN108418720A (zh) | 一种路由设备配置信息的恢复方法、装置以及路由设备 | |
US7350214B2 (en) | Printer driver initialization | |
CN113419760A (zh) | 打开/保存工程文件的方法、装置、计算机设备和介质 | |
CN113721959A (zh) | 一种信息处理方法、装置及电子设备 | |
CN112527327A (zh) | 一种uos操作系统恢复出厂的方法、系统、终端及存储介质 | |
KR100487717B1 (ko) | 내장형 시스템을 위한 운영체제 로딩 시스템 및 방법 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |