CN103823664B - 一种二进制合一Boot程序及内核程序的设计方法 - Google Patents
一种二进制合一Boot程序及内核程序的设计方法 Download PDFInfo
- Publication number
- CN103823664B CN103823664B CN201210468412.9A CN201210468412A CN103823664B CN 103823664 B CN103823664 B CN 103823664B CN 201210468412 A CN201210468412 A CN 201210468412A CN 103823664 B CN103823664 B CN 103823664B
- Authority
- CN
- China
- Prior art keywords
- binary system
- kernel program
- upgrading
- boot programs
- unification
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- 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/22—Microcontrol or microprogram arrangements
- G06F9/28—Enhancement of operational speed, e.g. by using several microcontrol devices operating in parallel
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
- G06F8/63—Image based installation; Cloning; Build to order
Abstract
本发明公开了一种二进制合一Boot程序及内核程序的设计方法,包括:对不同控制芯片的配置文件进行统一配置,根据硬件信息标识控制芯片,并修改不同控制芯片的代码流程,以完成Boot程序的二进制合一;统一不同控制芯片的内核配置,并进行不同控制芯片的编译共存配置和运行共存配置,以实现内核程序的二进制合一。本发明的方法可实现同一个软件版本能在两种或多种不同的控制芯片上使用。
Description
技术领域
本发明涉及光纤通信技术领域,尤其涉及以太无源光网络(EPON),千兆无源光网络(GPON),无线第三代移动通信技术(3G)等综合接入技术中的一种二进制合一Boot程序及内核程序的设计方法。
背景技术
目前,随着各种通信业务的不断增长,光网络终端主控设备(ONU)在光纤通信中被广泛应用。相应的,ONU控制芯片的种类也逐渐增多,即使同一厂家不同系列的控制芯片也存在很大差异。在软件设置时,都是每一款控制芯片对应一个软件版本,如果这样的设置方式用到同一款产品上,就会对外场升级和用户使用带来很大麻烦。比如:对于同一款产品,先后使用两种甚至多种不同ARM核的控制芯片,虽然对外是同一款产品,但却需要提供两套甚至多套软件版本,导致外场升级效率低,升级方法过于繁琐,用户使用也不方便,管理也比较困难。
发明内容
有鉴于此,本发明的主要目的在于提供一种二进制合一Boot程序及内核程序的设计方法,可实现同一个软件版本能在两种或多种不同的控制芯片上使用。
为达到上述目的,本发明的技术方案是这样实现的:
本发明提供了一种二进制合一Boot程序及内核程序的设计方法,该方法包括:
对不同控制芯片的配置文件进行统一配置,根据硬件信息标识控制芯片,并修改不同控制芯片的代码流程,以完成Boot程序的二进制合一;
统一不同控制芯片的内核配置,并进行不同控制芯片的编译共存配置和运行共存配置,以实现内核程序的二进制合一。
其中,所述对不同控制芯片的配置文件进行统一配置,为:
将不同控制芯片相冲突的宏分别定义为全局变量,在控制芯片初始化的过程中对所有宏对应的冲突项均进行设计,并对使用冲突项的位置依次进行修改。
其中,所述硬件信息包括:通用输入/输出GPIO接口信息或处理器类型信息。
其中,所述编译共存配置为:使用同一套配置,将一个或者多个控制芯片的板级支持包BSP代码整合到其中一个控制芯片的BSP中。
进一步地,该方法还包括二进制合一Boot程序的启动方法,包括:
系统上电,Boot程序开始启动,获取控制芯片类型;
判断控制芯片类型,如果是ARM9核控制芯片,则初始化ARM9核控制芯片控制器的寄存器,初始化系统外围硬件;如果是ARM11核控制芯片,则初始化ARM11核控制芯片控制器的寄存器,初始化系统外围硬件;
检测文件系统类型,并初始化文件系统;
判断flash上的版本文件是否完整有效,如果是完整有效版本,则启动系统主版本;否则,返回Boot命令行,提示无有效版本。
进一步地,该方法还包括:二进制合一Boot程序的升级方法,分为:Boot命令行下的升级,以及带内升级,即版本启动后,通过网管进行的远程升级。
其中,所述Boot程序在Boot命令行下的升级方法包括:
搭建Boot命令行下升级Boot程序的设备环境;上电启动ONU,并配置网络参数;执行更新命令,升级二进制合一Boot程序;升级成功后,重启ONU设备,运行系统新版本。
其中,所述Boot程序带内升级方法包括:
搭建版本启动后升级Boot程序的设备环境;ONU上电启动,配置网络参数;执行Boot程序升级命令,升级二进制合一Boot程序;升级成功后,重启ONU设备,运行系统新版本。
进一步地,该方法还包括二进制合一内核程序的启动方法,包括:
系统上电,内核程序开始启动,获取控制芯片类型;
判断控制芯片类型,如果是ARM9核控制芯片,则初始化ARM9核控制芯片控制器的寄存器,初始化系统外围硬件,加载ARM9单板相关外设的驱动程序;如果是ARM11核控制芯片,则初始化ARM11核控制芯片控制器的寄存器,初始化系统外围硬件,加载ARM11单板相关外设的驱动程序;
兼容ARMV6和ARMV4两种体系结构编码,使运行共存;
检测文件系统类型,初始化文件系统;
判断flash上的用户态版本文件是否完整有效,如果是,则启动用户态版本;否则,返回内核shell命令行,提示无有效用户态版本。
进一步地,该方法还包括:二进制合一内核程序的升级方法,分为:Boot命令行下的升级,以及带内升级。
其中,所述内核程序在Boot命令行下的升级方法包括:
搭建Boot命令行下升级内核程序的设备环境;上电启动ONU,并配置网络参数;执行版本升级命令,升级二进制合一内核程序;升级成功后,重启ONU设备,运行系统新版本。
其中,所述内核程序带内升级方法包括:
搭建版本启动后升级内核程序的设备环境;ONU上电启动,配置网络参数;执行版本升级命令,升级二进制合一内核程序;升级成功后,重启ONU设备,运行系统新版本。
本发明提供的二进制合一Boot程序及内核程序的设计方法,对不同控制芯片的配置文件进行统一配置,根据处理器的类型标识控制芯片,并修改不同控制芯片的代码流程,以完成Boot程序的二进制合一;统一不同控制芯片的内核配置,并进行编译共存配置和运行共存配置,以实现内核程序的二进制合一。本发明可实现同一软件版本能在两种不同的控制芯片上使用,不需要额外增加硬件成本,可移植性好。
此外,本发明的Boot程序及内核程序在升级过程中,一个版本可以升级到两种不同的控制芯片上,便于外场升级和版本管理,版本升级效率和稳定性都大大提高,且使用方便,降低了系统的维护成本。
附图说明
图1为本发明二进制合一Boot程序及内核程序的设计方法流程图;
图2为本发明设置的控制芯片Boot程序实施例的组成结构示意图;
图3为本发明Boot程序的启动方法实现流程图;
图4本发明Boot程序在Boot命令行下的升级方法流程示意图;
图5为本发明Boot程序带内升级方法的流程示意图;
图6为本发明内核程序的启动方法实现流程图;
图7为本发明内核程序在Boot命令行下的升级方法流程示意图;
图8为本发明内核程序带内升级方法的流程示意图。
具体实施方式
本发明的基本思想是:对两个或者多个不同控制芯片的配置文件进行统一配置,根据硬件信息标识控制芯片,并修改不同控制芯片的代码流程,以完成Boot程序的二进制合一;统一不同控制芯片的内核配置,并进行不同控制芯片的编译共存配置和运行共存配置,以实现内核程序的二进制合一。
进一步地,本发明还包括:二进制合一Boot程序的启动方法,以及二进制合一内核程序的启动方法。
进一步地,本发明还包括:二进制合一Boot程序的升级方法,以及二进制合一内核程序的升级方法。
下面结合附图及具体实施例对本发明作进一步详细说明。
本发明所述的ONU主控板,即ONU的控制芯片,一方面完成ONU系统的控制和数据交换功能,另一方面负责对各种线卡的管理,包括线卡的上下线处理、线卡的版本管理等。无源光网络(PON)子卡通过光分路器完成与EPON/GPON光线路终端(OLT)系统的对接,同时完成与主控板的数据交互。基于网络层协议的语音(VOIP)子卡完成对模拟电话业务(POTS)用户提供多路VOIP接入;E1子卡主要完成E1业务到以太网的转换与恢复;电源板主要提供系统的电源。
图1为本发明二进制合一Boot程序及内核程序的设计方法流程图,如图1所示,该流程的实现步骤如下:
步骤101:对不同控制芯片的配置文件进行统一配置;
具体为:对于不同的控制芯片,通常常见的冲突项包括:内存基址、内存大小、flash基址、flash大小及其他外设基址等。这里,将不同控制芯片相冲突的宏分别定义为全局变量,在控制芯片初始化的过程中对所有宏对应的冲突项均进行设置,并对使用冲突项的位置依次进行修改。
以flash配置冲突为例,相关的冲突宏为CFG_FLASH_BASE和CFG_FLASH_SIZE,则将这两个宏定义为全局变量_g_CFG_FLASH_BASE和_g_CFG_FLASH_SIZE,如果有其他宏使用了CFG_FLASH_BASE与CFG_FLASH_SIZE,就将使用的宏修改为对应的变量_g_CFG_FLASH_BASE或_g_CFG_FLASH_SIZE。
步骤102:根据硬件信息标识控制芯片;
具体为:不同的控制芯片都有特定的识别方式,这种识别方式可以通过控制芯片独特的硬件信息进行标识,可使用的硬件信息有通用输入/输出(GPIO)接口信息或者处理器类型信息。以ARM系列处理器为例,协处理器CP15的寄存器0中有处理器的相关信息,通过该寄存器可以判断当前处理器是ARM9还是ARM11。这里,可通过设计接口detect控制芯片来探测当前处理器的类型。
步骤103:修改不同控制芯片的代码流程;
具体为:对不同控制芯片的代码流程进行修改,在消除代码统一后的编译错误之后,从控制芯片上电后初始化代码开始,使用if-else结构控制不同控制芯片的代码流程,直到控制芯片初始化结束,进入统一流程。
上述步骤101-103的操作完成了Boot程序的二进制合一,该方法主要使用类似if-else指令控制程序根据控制芯片的不同类型进行各自的流程,直到控制芯片的初始化结束。
图2为本发明设置的控制芯片Boot程序实施例的组成结构示意图,如图2所示,包括:版本头部和版本主体;其中,
所述版本头部占用256个字节,包括:版本号、版本功能,即对应的控制芯片类型、版本类型,表明所述程序为Boot程序、版本的创建时间、版本头的长度、整个版本的大小、版本头的校验和、Boot掩码信息和保留信息;所述版本主体即Boot版本镜像,即Boot程序的有效代码。
步骤104:统一不同控制芯片的内核配置;
这部分主要统一两个或多个不同控制芯片的内核配置项,使用同一套配置,能够编译出在不同控制芯片上都能运行正常的映像。
步骤105:不同控制芯片的编译共存配置;
这里,所述编译共存配置是指:使用同一套配置,将一个或者多个控制芯片的板级支持包(Board Support Package,BSP)代码整合到其中一个控制芯片的BSP中。以ARM11和ARM9控制芯片的整合为例,将ARM11控制芯片的BSP整合到ARM9控制芯片中,编译完成。
由于不同控制芯片冲突的宏较多,且取值也不同,因此将所有有冲突的宏定义采取改名的方式进行整合;控制芯片相关的代码,以不同的控制芯片目录进行区分;驱动代码也进行区分,其中,各个控制芯片可以共用通用的驱动;而对于某些控制芯片特有的驱动,则仅为该控制芯片使用。
所有控制芯片的所有模块都加载,在模块加载与卸载的时候,首先判断处理器类型,如果不是本控制芯片,直接返回;因此在后续执行的过程中,控制芯片初始化代码与驱动代码都不会混合。
步骤106:不同控制芯片的运行共存配置;
这里,所述运行共存是二进制合一调试的关键,主要在于不同版本处理器指令的统一。由于同一个架构的处理器,通常高版本处理器能够兼容低版本处理器的指令,因此,可提取包含高版本处理器指令的代码,将这部分代码使用高版本处理器指令去编译。
以ARM11和ARM9的统一为例,需对ARMV6与ARMV4都进行配置,ARMV6的代码使用ARMV6指令去编译。
这样处理之后,内核能够同时支持不同版本的处理器。内核程序二进制合一设置之后,再和用户态代码一起编译出系统的二进制合一版本。
上述步骤104-106的操作完成了内核程序的二进制合一,由于不同控制芯片的处理器类型存在差异,涉及一些扩展指令,以及不同宏控制的代码,因此内核程序二进制合一相对复杂,但是基本思想与Boot程序类似。
当然,由于上述过程均在系统启动之前完成的,所以上述步骤101-103可与步骤104-106的操作可以相互调换。
本发明还提供了一种Boot程序的启动方法,如图3所示,实现步骤如下:
步骤301:系统上电,Boot程序开始启动,获取控制芯片类型;
步骤302:判断控制芯片类型,如果是ARM9核控制芯片,则执行步骤303;如果是ARM11核控制芯片,则执行步骤304;
步骤303:初始化ARM9核控制芯片控制器的寄存器,初始化系统外围硬件,之后执行步骤305;
所述外围硬件包括:内存,flash,网口,串口等设备。
步骤304:初始化ARM11核控制芯片控制器的寄存器,初始化系统外围硬件;
所述外围硬件包括:内存,flash,网口,串口等设备。
步骤305:检测文件系统类型,即:检测flash上的文件系统类型,并初始化文件系统;
步骤306:判断flash上的版本文件是否完整有效,主要是检查主程序的掩码,大小,校验和等,如果是完整有效版本,则执行步骤307;否则,跳转到步骤308;
步骤307:启动系统主版本;
步骤308:返回Boot命令行,提示无有效版本。
进一步地,本发明还包括Boot程序的升级方法,分为:Boot命令行下的升级,以及带内升级,即版本启动后,通过网管进行的远程升级。
图4为本发明Boot程序在Boot命令行下的升级方法流程示意图,如图4所示,实现流程如下:
步骤401:搭建Boot命令行下升级Boot程序的设备环境;
具体为:把ONU通过网线和串口线连接到PC机,在PC机侧打开简单文件传输协议(TFTP)客户端,准备好需要升级的Boot程序。
步骤402:上电启动ONU,并配置网络参数;
具体为:上电启动ONU,在Boot启动的过程中按回车键,进入Boot命令行,输入c命令,配置ONU侧和TFTP服务器侧的IP地址在同一网段。
步骤403:执行更新命令,即执行Boot程序升级命令,升级二进制合一Boot程序;
步骤404:升级成功后,重启ONU设备,运行系统新版本。
图5为本发明Boot程序带内升级方法的流程示意图,如图5所示,实现流程如下:
步骤501:搭建版本启动后升级Boot程序的设备环境;
具体为:把ONU通过网线连接到PC机,在PC机侧打开WFTP客户端,准备好需要升级的Boot程序。
步骤502:ONU上电启动,配置网络参数;
具体为:ONU上电启动,版本启动后,通过PC机远程登录到主控板,即控制芯片,控制芯片远程配置ONU的IP地址和vlan参数。
步骤503:执行Boot程序升级命令,升级二进制合一Boot程序;
步骤504:升级成功后,重启ONU设备,运行系统新版本。
本发明还提供了一种内核程序的启动方法,如图6所示,实现步骤如下:
步骤601:系统上电,内核程序开始启动,获取控制芯片类型;
步骤602:判断控制芯片类型,如果是ARM9核控制芯片,则执行步骤603;如果是ARM11核控制芯片,则执行步骤604;
步骤603:初始化ARM9核控制芯片控制器的寄存器,初始化系统外围硬件,加载ARM9单板相关外设的驱动程序,之后执行步骤605;
所述外围硬件包括:内存,flash,网口,串口等设备。
步骤604:初始化ARM11核控制芯片控制器的寄存器,初始化系统外围硬件,加载ARM11单板相关外设的驱动程序;
所述外围硬件包括:内存,flash,网口,串口等设备。
步骤605:兼容ARMV6和ARMV4两种体系结构编码,使运行共存;
步骤606:检测文件系统类型,即:检测flash上的文件系统类型,初始化文件系统;
步骤607:判断flash上的用户态版本文件是否完整有效,主要是检查主程序的掩码,大小,校验和等,如果是完整有效版本,则执行步骤608;否则,跳转到步骤609;
步骤608:启动用户态版本;
步骤609:返回内核shell命令行,提示无有效用户态版本。
进一步地,本发明还包括内核程序的升级方法,分为:Boot命令行下的升级,以及带内升级,即版本启动后,通过网管进行远程升级。
图7为本发明内核程序在Boot命令行下的升级方法流程示意图,如图7所示,实现流程如下:
步骤701:搭建Boot命令行下升级内核程序的设备环境;
具体为:把ONU通过网线和串口线连接到PC机,在PC机侧打开TFTP客户端,准备好需要升级的二进制合一内核程序。
步骤702:上电启动ONU,并配置网络参数;
具体为:上电启动ONU,在Boot启动的过程中按回车键,进入Boot命令行,输入c命令,配置ONU侧和TFTP服务器侧的IP地址在同一网段。
步骤703:执行版本升级命令,升级二进制合一内核程序,即升级二进制合一版本程序;
步骤704:升级成功后,重启ONU设备,运行系统新版本。
图8为本发明内核程序带内升级方法的流程示意图,如图8所示,实现流程如下:
步骤801:搭建版本启动后升级内核程序的设备环境;
具体为:把ONU通过网线连接到PC机,在PC机侧打开WFTP客户端,准备好需要升级的二进制合一内核程序。
步骤802:ONU上电启动,配置网络参数;
具体为:ONU上电启动,版本启动后,通过PC机远程登录到控制芯片,控制芯片远程配置ONU的IP地址和vlan参数。
步骤803:执行版本升级命令,升级二进制合一内核程序,即升级二进制合一版本程序;
步骤804:升级成功后,重启ONU设备,运行系统新版本。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
Claims (10)
1.一种二进制合一Boot程序及内核程序的设计方法,其特征在于,该方法包括:
将不同控制芯片相冲突的宏分别定义为全局变量,在控制芯片初始化的过程中对所有宏对应的冲突项均进行设置,并对使用冲突项的位置依次进行修改,根据硬件信息标识控制芯片,并修改不同控制芯片的代码流程,以完成Boot程序的二进制合一;
统一不同控制芯片的内核配置,使用同一套配置,将不同控制芯片的板级支持包BSP代码整合到一个控制芯片的BSP中,进行不同控制芯片的不同版本处理器指令的统一,以实现内核程序的二进制合一。
2.根据权利要求1所述的二进制合一Boot程序及内核程序的设计方法,其特征在于,所述硬件信息包括:通用输入/输出GPIO接口信息或处理器类型信息。
3.根据权利要求1至2任一项所述的二进制合一Boot程序及内核程序的设计方法,其特征在于,该方法还包括二进制合一Boot程序的启动方法,包括:
系统上电,Boot程序开始启动,获取控制芯片类型;
判断控制芯片类型,如果是ARM9核控制芯片,则初始化ARM9核控制芯片控制器的寄存器,初始化系统外围硬件;如果是ARM11核控制芯片,则初始化ARM11核控制芯片控制器的寄存器,初始化系统外围硬件;
检测文件系统类型,并初始化文件系统;
判断flash上的版本文件是否完整有效,如果是完整有效版本,则启动系统主版本;否则,返回Boot命令行,提示无有效版本。
4.根据权利要求1至2任一项所述的二进制合一Boot程序及内核程序的设计方法,其特征在于,该方法还包括:二进制合一Boot程序的升级方法,分为:Boot命令行下的升级,以及带内升级,即版本启动后,通过网管进行的远程升级。
5.根据权利要求4所述的二进制合一Boot程序及内核程序的设计方法,其特征在于,所述Boot程序在Boot命令行下的升级方法包括:
搭建Boot命令行下升级Boot程序的设备环境;上电启动ONU,并配置网络参数;执行更新命令,升级二进制合一Boot程序;升级成功后,重启ONU设备,运行系统新版本。
6.根据权利要求4所述的二进制合一Boot程序及内核程序的设计方法,其特征在于,所述Boot程序带内升级方法包括:
搭建版本启动后升级Boot程序的设备环境;ONU上电启动,配置网络参数;执行Boot程序升级命令,升级二进制合一Boot程序;升级成功后,重启ONU设备,运行系统新版本。
7.根据权利要求1至2任一项所述的二进制合一Boot程序及内核程序的设计方法,其特征在于,该方法还包括二进制合一内核程序的启动方法,包括:
系统上电,内核程序开始启动,获取控制芯片类型;
判断控制芯片类型,如果是ARM9核控制芯片,则初始化ARM9核控制芯片控制器的寄存器,初始化系统外围硬件,加载ARM9单板相关外设的驱动程序;如果是ARM11核控制芯片,则初始化ARM11核控制芯片控制器的寄存器,初始化系统外围硬件,加载ARM11单板相关外设的驱动程序;
兼容ARMV6和ARMV4两种体系结构编码,使运行共存;
检测文件系统类型,初始化文件系统;
判断flash上的用户态版本文件是否完整有效,如果是,则启动用户态版本;否则,返回内核shell命令行,提示无有效用户态版本。
8.根据权利要求1至2任一项所述的二进制合一Boot程序及内核程序的设计方法,其特征在于,该方法还包括:二进制合一内核程序的升级方法,分为:Boot命令行下的升级,以及带内升级。
9.根据权利要求8所述的二进制合一Boot程序及内核程序的设计方法,其特征在于,所述内核程序在Boot命令行下的升级方法包括:
搭建Boot命令行下升级内核程序的设备环境;上电启动ONU,并配置网络参数;执行版本升级命令,升级二进制合一内核程序;升级成功后,重启ONU设备,运行系统新版本。
10.根据权利要求8所述的二进制合一Boot程序及内核程序的设计方法,其特征在于,所述内核程序带内升级方法包括:
搭建版本启动后升级内核程序的设备环境;ONU上电启动,配置网络参数;执行版本升级命令,升级二进制合一内核程序;升级成功后,重启ONU设备,运行系统新版本。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210468412.9A CN103823664B (zh) | 2012-11-19 | 2012-11-19 | 一种二进制合一Boot程序及内核程序的设计方法 |
US14/787,752 US10318268B2 (en) | 2012-11-19 | 2013-08-29 | Setting method for binary integration of boot program and kernel program |
PCT/CN2013/082564 WO2014075491A1 (zh) | 2012-11-19 | 2013-08-29 | 一种二进制合一Boot程序及内核程序的设置方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210468412.9A CN103823664B (zh) | 2012-11-19 | 2012-11-19 | 一种二进制合一Boot程序及内核程序的设计方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103823664A CN103823664A (zh) | 2014-05-28 |
CN103823664B true CN103823664B (zh) | 2017-12-15 |
Family
ID=50730565
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210468412.9A Active CN103823664B (zh) | 2012-11-19 | 2012-11-19 | 一种二进制合一Boot程序及内核程序的设计方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10318268B2 (zh) |
CN (1) | CN103823664B (zh) |
WO (1) | WO2014075491A1 (zh) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105320534B (zh) * | 2014-08-01 | 2020-06-09 | 中兴通讯股份有限公司 | 单板的boot远程升级方法、装置及系统 |
CA2982867A1 (en) * | 2015-04-07 | 2016-10-13 | RunSafe Security, Inc. | System and method of obfuscation through binary and memory diversity |
US10664262B2 (en) * | 2017-08-29 | 2020-05-26 | Crowdstrike, Inc. | Binary suppression and modification for software upgrades |
CN109428755A (zh) * | 2017-08-31 | 2019-03-05 | 深圳市中兴微电子技术有限公司 | 一种pon硬件单板业务形态配置方法及系统 |
CN107632847A (zh) * | 2017-09-27 | 2018-01-26 | 珠海研果科技有限公司 | 一种基于wifi的系统刷机与升级的方法和装置 |
CN107729179B (zh) * | 2017-09-29 | 2020-07-28 | 烽火通信科技股份有限公司 | 基于相同处理器不同硬件的统一软件镜像实现系统及方法 |
IT201800006081A1 (it) * | 2018-06-06 | 2019-12-06 | Procedimento per caricare codice software, sistema corrispondente e veicolo equipaggiato con tale sistema | |
CN109254799B (zh) * | 2018-08-29 | 2023-03-10 | 新华三技术有限公司 | 引导程序的启动方法、装置及通信设备 |
US10838732B2 (en) * | 2018-12-21 | 2020-11-17 | Micron Technology, Inc. | Apparatuses and methods for ordering bits in a memory device |
CN111367540B (zh) * | 2018-12-25 | 2023-08-29 | 兆易创新科技集团股份有限公司 | 一种eMMC固件升级方法和装置 |
CN110377134A (zh) * | 2019-07-19 | 2019-10-25 | 苏州浪潮智能科技有限公司 | 多核系统的内核电源参数配置方法、装置及内核电源芯片 |
CN110888766B (zh) * | 2019-11-18 | 2023-08-01 | 珠海泰芯半导体有限公司 | 一种芯片的启动方法 |
CN112181455B (zh) * | 2020-09-24 | 2024-04-26 | 深圳数联天下智能科技有限公司 | 微控制器的在线升级方法、微控制器及存储介质 |
US20220147636A1 (en) * | 2020-11-12 | 2022-05-12 | Crowdstrike, Inc. | Zero-touch security sensor updates |
US11740987B2 (en) * | 2021-06-18 | 2023-08-29 | Micron Technology, Inc. | Automatic chip initialization retry |
CN115291958B (zh) * | 2022-10-10 | 2022-12-27 | 广州市保伦电子有限公司 | 一种主控与外围芯片的更换方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101021794A (zh) * | 2006-05-25 | 2007-08-22 | 杭州晟元芯片技术有限公司 | 一种芯片上电后的程序引导方法 |
CN101452437A (zh) * | 2007-12-03 | 2009-06-10 | 英业达股份有限公司 | 多处理器系统及切换cpu方法 |
CN101485576A (zh) * | 2008-12-30 | 2009-07-22 | 深圳市蓝韵实业有限公司 | 一种对设备内fpga芯片统一配置和管理的系统 |
CN102279763A (zh) * | 2011-08-30 | 2011-12-14 | 福州瑞芯微电子有限公司 | 一种bootrom的优化方法 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6640334B1 (en) * | 1999-09-27 | 2003-10-28 | Nortel Networks Limited | Method and apparatus of remotely updating firmware of a communication device |
US7134007B2 (en) * | 2003-06-30 | 2006-11-07 | Intel Corporation | Method for sharing firmware across heterogeneous processor architectures |
US7711927B2 (en) * | 2007-03-14 | 2010-05-04 | Qualcomm Incorporated | System, method and software to preload instructions from an instruction set other than one currently executing |
US7836293B1 (en) * | 2007-05-07 | 2010-11-16 | Force 10 Networks, Inc | Accelerated deserialized boot implementation for a multiprocessor system |
CN101309475A (zh) | 2007-05-18 | 2008-11-19 | 中兴通讯股份有限公司 | 一种通讯终端调试和发布软件版本合一的方法 |
CN101145960B (zh) | 2007-10-15 | 2010-04-21 | 中兴通讯股份有限公司 | 一种单板硬件改板后实现软件版本兼容的方法 |
US20090132816A1 (en) * | 2007-11-15 | 2009-05-21 | Lockheed Martin Corporation | PC on USB drive or cell phone |
KR101702390B1 (ko) | 2009-04-09 | 2017-02-06 | 삼성전자주식회사 | 컴퓨터 시스템의 부팅 방법 |
TWI412999B (zh) * | 2010-03-31 | 2013-10-21 | Wistron Corp | 平行化快速啟動方法及具有多處理單元之電子裝置 |
CN102541572B (zh) * | 2010-12-08 | 2015-09-16 | 中兴通讯股份有限公司 | 一种实现操作系统内核引导的方法、系统及装置 |
CN102164193A (zh) | 2011-01-21 | 2011-08-24 | 惠州Tcl移动通信有限公司 | 电子设备及其制作方法、识别并驱动显示屏的方法 |
US9275426B2 (en) * | 2012-06-04 | 2016-03-01 | Adobe Systems Incorporated | Method and apparatus for unifying graphics processing unit computation languages |
US8935686B2 (en) * | 2012-08-28 | 2015-01-13 | Microsoft Corporation | Error-code and exception-based function dispatch tables |
US9405515B1 (en) * | 2015-02-04 | 2016-08-02 | Rockwell Collins, Inc. | Computing systems utilizing controlled dynamic libraries and isolated execution spaces |
WO2016138240A1 (en) * | 2015-02-27 | 2016-09-01 | Zoll Medical Corporation | Downloading and booting method and system for a wearable medical device |
US10789201B2 (en) * | 2017-03-03 | 2020-09-29 | Intel Corporation | High performance interconnect |
-
2012
- 2012-11-19 CN CN201210468412.9A patent/CN103823664B/zh active Active
-
2013
- 2013-08-29 WO PCT/CN2013/082564 patent/WO2014075491A1/zh active Application Filing
- 2013-08-29 US US14/787,752 patent/US10318268B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101021794A (zh) * | 2006-05-25 | 2007-08-22 | 杭州晟元芯片技术有限公司 | 一种芯片上电后的程序引导方法 |
CN101452437A (zh) * | 2007-12-03 | 2009-06-10 | 英业达股份有限公司 | 多处理器系统及切换cpu方法 |
CN101485576A (zh) * | 2008-12-30 | 2009-07-22 | 深圳市蓝韵实业有限公司 | 一种对设备内fpga芯片统一配置和管理的系统 |
CN102279763A (zh) * | 2011-08-30 | 2011-12-14 | 福州瑞芯微电子有限公司 | 一种bootrom的优化方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103823664A (zh) | 2014-05-28 |
US20160077823A1 (en) | 2016-03-17 |
US10318268B2 (en) | 2019-06-11 |
WO2014075491A1 (zh) | 2014-05-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103823664B (zh) | 一种二进制合一Boot程序及内核程序的设计方法 | |
CN103324498B (zh) | 用于引导裸机计算设备的方法和设备 | |
CN103853586B (zh) | 一种在uefi层实现无线网卡驱动的方法 | |
CN105912362B (zh) | 一种加载插件的方法、装置及电子设备 | |
JP2008509483A (ja) | 予期せず/変化するハードウェア環境へのソフトウェアとファームウェアの適応 | |
WO2021098392A1 (zh) | 应用部署方法、装置、电子设备及存储介质 | |
CN104679513A (zh) | 一种智能终端中的设备驱动架构开发方法 | |
CN109739508B (zh) | 源代码编译方法、装置、系统及存储介质 | |
CN101183310A (zh) | 一种建立设备驱动的方法、设备驱动装置及单板 | |
CN113407362A (zh) | 基于车载Android系统SOA架构SOMEIP通信中间层实现方法及系统 | |
CN107526593A (zh) | 基于动态链接库的bmc功能定制方法 | |
CN110347445A (zh) | Sdk调用方法、装置、服务器及存储介质 | |
CN109710320A (zh) | 一种两级驱动的启动引导BootLoader方法 | |
CN110531985A (zh) | Sdk初始化方法及系统、电子设备、存储介质 | |
CN106873970A (zh) | 一种操作系统的安装方法和装置 | |
US8032877B2 (en) | Compiler neutral linking solution for C++ code | |
CN115033230B (zh) | 嵌入式硬件平台的驱动程序生成方法、装置、设备及介质 | |
CN109445845A (zh) | 接口调用方法、装置、计算机设备和存储介质 | |
CN106598647A (zh) | 一种智能装置开发平台 | |
CN104461638B (zh) | 一种基于Bootloader的XFP光模块升级方法 | |
CN106293687A (zh) | 一种打包流程的控制方法,及装置 | |
CN112631915B (zh) | 一种pcie设备软件仿真的方法、系统、设备及介质 | |
WO2024055757A1 (zh) | 驱动程序的硬件资源自动配置方法、装置、系统及介质 | |
US20100268925A1 (en) | System and method for populating a dedicated system service repository for an information handling system | |
CN111176663B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |