CN111752603A - 同一份系统兼容不同硬件的方法、电子设备、存储介质 - Google Patents
同一份系统兼容不同硬件的方法、电子设备、存储介质 Download PDFInfo
- Publication number
- CN111752603A CN111752603A CN202010374551.XA CN202010374551A CN111752603A CN 111752603 A CN111752603 A CN 111752603A CN 202010374551 A CN202010374551 A CN 202010374551A CN 111752603 A CN111752603 A CN 111752603A
- Authority
- CN
- China
- Prior art keywords
- serial number
- hardware
- different
- same system
- number configuration
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 33
- 238000004806 packaging method and process Methods 0.000 claims abstract description 6
- 238000004590 computer program Methods 0.000 claims description 4
- 238000012423 maintenance Methods 0.000 abstract description 11
- 230000006870 function Effects 0.000 abstract description 10
- 238000013461 design Methods 0.000 abstract description 8
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/76—Adapting program code to run in a different environment; Porting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供同一份系统兼容不同硬件的方法,包括以下步骤:将CPU平台的若干不同GPIO口拉至不同电平状态,电平状态与硬件的序列号配置信息对应;根据序列号配置信息编译同一份系统源码中对应的序列号配置文件;将序列号配置文件打包在同一个系统镜像文件中。本发明能够实现同一份系统源码兼容多套不同硬件设备,解决嵌入式设备中,因硬件部分功能不一致而需要将源码独立,最终导致不同硬件设备需维护多套系统源码的问题,进而大大减少系统源码维护工作量,降低系统维护成本,提高嵌入式系统的可复用性、高效性及内聚性,节省硬件成本,在硬件设计阶段完成01序列号信息设置。
Description
技术领域
本发明涉及数据处理技术领域,尤其涉及同一份系统兼容不同硬件的方法。
背景技术
随着嵌入式技术的快速发展,各种嵌入式设备(如手机、ipad、笔记本电脑等)广泛应用于现实生活中,对于同一个系统平台的嵌入式产品而言,为了快速响应不同的市场需求,嵌入式设备厂商通常采用基于现有硬件设计基础上进行部分修改的方法,从而实现硬件产品的快速迭代。而不同的硬件产品,都需要搭载与之功能对应的嵌入式系统才能正常运行,这里迫切需要解决的问题点在于同一份系统源码如何兼容不同硬件产品。常用的兼容办法有两种,第一种直接在现有源码基础上复制一份源码,根据硬件修改点进行代码修改,最终输出不同的系统镜像文件,生产设备时,针对不同的硬件产品,人工选择对应不同的系统镜像文件进行升级。第二种采用01序列号配置文件,在系统源码上针对不同硬件产生不同的配置文件,最终将不同的配置文件打包在同一个系统中,在生产设备时,事先将与序列号配置文件对应的硬件设备信息烧录至存储设备中,当系统升级时,升级程序读取存储器中的硬件配置信息并与01序列号配置文件进行匹配,从而升级对应的序列号配置的系统文件。
对于上述两种系统兼容不同硬件产品的方法而言,第一种方法虽然实现简单,但每新增一款硬件设备,就会多出一份系统源码,这些源码大部分都完全一致,仅硬件修改点部分不一致,这样导致后期的维护工作量巨大,且不易版本管控,而在生产时,需人工选择不同的系统镜像文件,这里无疑增加了工作量,且容易出现错漏。第二种方法利用01序列号配置文件,能实现同一份源码输出同一个系统镜像文件兼容不同硬件,但是生产时需事先利用工具提前将对应的01序列号信息烧录进存储设备中。该方法提及的存储设备需另外添加,该存储设备仅用于存储01序列号配置文件,这里除了产生额外的硬件费用外,还存在安全隐患,如当存储01序列号的存储设备出异常时,例如被格式化、数据损坏,将导致仪器无法升级或升级成错误的系统文件,最终导致产品功能无法正常运行。
发明内容
为了克服现有技术的不足,本发明的目的在于提供同一份系统兼容不同硬件的方法,能够实现同一份系统源码兼容多套不同硬件设备,解决嵌入式设备中,因硬件部分功能不一致而需要将源码独立,最终导致不同硬件设备需维护多套系统源码的问题,进而大大减少系统源码维护工作量,提高嵌入式系统的可复用性和高效性,能够节省硬件成本。
本发明提供同一份系统兼容不同硬件的方法,包括以下步骤:
将CPU平台的若干不同GPIO口拉至不同电平状态,所述电平状态与硬件的序列号配置信息对应;
根据所述序列号配置信息编译同一份系统源码中对应的序列号配置文件;
将所述序列号配置文件打包在同一个系统镜像文件中。
进一步地,所述将CPU平台的若干不同GPIO口拉至不同电平状态具体为通过电阻将CPU平台的若干不同GPIO口拉至不同电平状态。
进一步地,所述电平状态包括0和1,所述序列号配置信息为01序列号配置信息。
进一步地,还包括:
读取GPIO口电平组成的01序列号;
判断所述系统镜像文件中是否包含与所述01序列号对应的序列号配置文件,是则升级对应所述01序列号的序列号配置文件与系统镜像文件。
进一步地,还包括将新增的GPIO口拉至相应的电平状态。
一种电子设备,包括:处理器;
存储器;以及程序,其中所述程序被存储在所述存储器中,并且被配置成由处理器执行,所述程序包括用于执行同一份系统兼容不同硬件的方法。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行同一份系统兼容不同硬件的方法。
相比现有技术,本发明的有益效果在于:
本发明提供同一份系统兼容不同硬件的方法,包括以下步骤:将CPU平台的若干不同GPIO口拉至不同电平状态,电平状态与硬件的序列号配置信息对应;根据序列号配置信息编译同一份系统源码中对应的序列号配置文件;将序列号配置文件打包在同一个系统镜像文件中。本发明能够实现同一份系统源码兼容多套不同硬件设备,解决嵌入式设备中,因硬件部分功能不一致而需要将源码独立,最终导致不同硬件设备需维护多套系统源码的问题,进而大大减少系统源码维护工作量,降低系统维护成本,提高嵌入式系统的可复用性、高效性及内聚性,节省硬件成本,在硬件设计阶段完成01序列号信息设置。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,并可依照说明书的内容予以实施,以下以本发明的较佳实施例并配合附图详细说明如后。本发明的具体实施方式由以下实施例及其附图详细给出。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为本发明的同一份系统兼容不同硬件的方法流程图;
图2为本发明实施例的硬件系统关系框图;
图3为本发明实施例的序列号硬件设计原理图;
图4为本发明实施例的升级程序流程图。
具体实施方式
下面,结合附图以及具体实施方式,对本发明做进一步描述,需要说明的是,在不相冲突的前提下,以下描述的各实施例之间或各技术特征之间可以任意组合形成新的实施例。
同一份系统兼容不同硬件的方法,如图1所示,包括以下步骤:
将CPU平台的若干不同GPIO口拉至不同电平状态,电平状态与硬件的序列号配置信息对应;优选的,电平状态包括0和1,序列号配置信息为01序列号配置信息。本实施例中,GPIO口为CPU自带,无需增加硬件成本。使用多个GPIO口电平组合实现n2种序列组合,其中n为具体GPIO口数量,扩展性强,且扩展方法简单,即新增IO口即可完成扩展,将新增的GPIO口拉至相应的电平状态。
根据序列号配置信息编译同一份系统源码中对应的序列号配置文件;
将序列号配置文件打包在同一个系统镜像文件中。
如图2所示,硬件1、硬件2、硬件3中阴影部分的所有功能都相同,仅图2中的“功能10001”、“功能2 0010”、“功能3 0011”存在不同,其中0001、0010、0011代表相应的01序列号组合,分别对应源码里的function1.c、function2.c、function3.c,仅需一份源码,即可完成三款硬件的适配支持,最终输出一个系统镜像文件system.img。
如图3所示,图2中提及的0001、0010、0011序列号配置信息,在硬件设计时通过电阻将CPU平台的多个不同GPIO拉至不同电平状态(0或者1)来实现不同的01序列号。本实施例中,采用GPIO数量为4,VCC代表电源正极,GND代表地,通过R1、R2、R3、R4电阻连接,使得GPIO1、GPIO2、GPIO3、GPIO4电平分别为1、1、0、0,从而组成1100的01序列号配置文件。实现在硬件设计阶段完成01序列号配置信息设置。系统编码时结合硬件设计的01序列号配置信息,在代码上实现对应的01序列号配置文件,例如上述提及的0001序列号对应function1.c,之后系统统一编译这些配置文件,打包在同一个system.img系统镜像文件中。
如图4所示,还包括:
读取GPIO口电平组成的01序列号;程序读取IO口电平,实现简单,且修改量小。
判断系统镜像文件中是否包含与01序列号对应的序列号配置文件,是则升级对应01序列号的序列号配置文件与系统镜像文件。
一种电子设备,包括:处理器;
存储器;以及程序,其中程序被存储在存储器中,并且被配置成由处理器执行,程序包括用于执行同一份系统兼容不同硬件的方法。
一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行同一份系统兼容不同硬件的方法。
本发明提供同一份系统兼容不同硬件的方法,包括以下步骤:将CPU平台的若干不同GPIO口拉至不同电平状态,电平状态与硬件的序列号配置信息对应;根据序列号配置信息编译同一份系统源码中对应的序列号配置文件;将序列号配置文件打包在同一个系统镜像文件中。本发明能够实现同一份系统源码兼容多套不同硬件设备,解决嵌入式设备中,因硬件部分功能不一致而需要将源码独立,最终导致不同硬件设备需维护多套系统源码的问题,进而大大减少系统源码维护工作量,降低系统维护成本,提高嵌入式系统的可复用性、高效性及内聚性,节省硬件成本,在硬件设计阶段完成01序列号信息设置。
以上,仅为本发明的较佳实施例而已,并非对本发明作任何形式上的限制;凡本行业的普通技术人员均可按说明书附图所示和以上而顺畅地实施本发明;但是,凡熟悉本专业的技术人员在不脱离本发明技术方案范围内,利用以上所揭示的技术内容而做出的些许更动、修饰与演变的等同变化,均为本发明的等效实施例;同时,凡依据本发明的实质技术对以上实施例所作的任何等同变化的更动、修饰与演变等,均仍属于本发明的技术方案的保护范围之内。
Claims (7)
1.同一份系统兼容不同硬件的方法,其特征在于,包括以下步骤:
将CPU平台的若干不同GPIO口拉至不同电平状态,所述电平状态与硬件的序列号配置信息对应;
根据所述序列号配置信息编译同一份系统源码中对应的序列号配置文件;
将所述序列号配置文件打包在同一个系统镜像文件中。
2.如权利要求1所述的同一份系统兼容不同硬件的方法,其特征在于:所述将CPU平台的若干不同GPIO口拉至不同电平状态具体为通过电阻将CPU平台的若干不同GPIO口拉至不同电平状态。
3.如权利要求2所述的同一份系统兼容不同硬件的方法,其特征在于:所述电平状态包括0和1,所述序列号配置信息为01序列号配置信息。
4.如权利要求3所述的同一份系统兼容不同硬件的方法,其特征在于,还包括:
读取GPIO口电平组成的01序列号;
判断所述系统镜像文件中是否包含与所述01序列号对应的序列号配置文件,是则升级对应所述01序列号的序列号配置文件与系统镜像文件。
5.如权利要求1所述的同一份系统兼容不同硬件的方法,其特征在于,还包括将新增的GPIO口拉至相应的电平状态。
6.一种电子设备,其特征在于包括:处理器;
存储器;以及程序,其中所述程序被存储在所述存储器中,并且被配置成由处理器执行,所述程序包括用于执行权利要求1-5任意一项所述的方法。
7.一种计算机可读存储介质,其上存储有计算机程序,其特征在于:所述计算机程序被处理器执行如权利要求1-5任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010374551.XA CN111752603A (zh) | 2020-05-06 | 2020-05-06 | 同一份系统兼容不同硬件的方法、电子设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010374551.XA CN111752603A (zh) | 2020-05-06 | 2020-05-06 | 同一份系统兼容不同硬件的方法、电子设备、存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111752603A true CN111752603A (zh) | 2020-10-09 |
Family
ID=72673802
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010374551.XA Pending CN111752603A (zh) | 2020-05-06 | 2020-05-06 | 同一份系统兼容不同硬件的方法、电子设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111752603A (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6401156B1 (en) * | 1999-08-23 | 2002-06-04 | Advanced Micro Devices, Inc. | Flexible PC/AT-compatible microcontroller |
CN101620542A (zh) * | 2009-07-30 | 2010-01-06 | 深圳市蓝韵实业有限公司 | 一种超声成像设备软件数据的兼容更新方法 |
CN102650975A (zh) * | 2012-03-31 | 2012-08-29 | 中国人民解放军国防科学技术大学 | 用于多硬件平台飞腾服务器的i2c总线的实现方法 |
CN103235741A (zh) * | 2013-04-15 | 2013-08-07 | 厦门亿联网络技术股份有限公司 | 一种通过芯片实现硬件兼容的方法 |
CN104111886A (zh) * | 2014-06-25 | 2014-10-22 | 曙光信息产业(北京)有限公司 | 一种兼容不同gpu的管理系统及其设计方法 |
CN105354071A (zh) * | 2015-12-15 | 2016-02-24 | 武汉长光科技有限公司 | 一种嵌入式软件兼容硬件的方法 |
CN107729179A (zh) * | 2017-09-29 | 2018-02-23 | 烽火通信科技股份有限公司 | 基于相同处理器不同硬件的统一软件镜像实现系统及方法 |
CN207067969U (zh) * | 2017-08-08 | 2018-03-02 | 龙芯中科技术有限公司 | 基于硬件平台的系统配置装置及电子设备 |
US10003339B1 (en) * | 2017-06-29 | 2018-06-19 | Guangdong Gowin Semiconductor Corporation, Ltd. | General purpose interface circuit compatible with output of MIPI signals |
CN108415863A (zh) * | 2018-02-01 | 2018-08-17 | 广东欧珀移动通信有限公司 | 电子装置的硬件兼容实现方法及相关产品 |
-
2020
- 2020-05-06 CN CN202010374551.XA patent/CN111752603A/zh active Pending
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6401156B1 (en) * | 1999-08-23 | 2002-06-04 | Advanced Micro Devices, Inc. | Flexible PC/AT-compatible microcontroller |
CN101620542A (zh) * | 2009-07-30 | 2010-01-06 | 深圳市蓝韵实业有限公司 | 一种超声成像设备软件数据的兼容更新方法 |
CN102650975A (zh) * | 2012-03-31 | 2012-08-29 | 中国人民解放军国防科学技术大学 | 用于多硬件平台飞腾服务器的i2c总线的实现方法 |
CN103235741A (zh) * | 2013-04-15 | 2013-08-07 | 厦门亿联网络技术股份有限公司 | 一种通过芯片实现硬件兼容的方法 |
CN104111886A (zh) * | 2014-06-25 | 2014-10-22 | 曙光信息产业(北京)有限公司 | 一种兼容不同gpu的管理系统及其设计方法 |
CN105354071A (zh) * | 2015-12-15 | 2016-02-24 | 武汉长光科技有限公司 | 一种嵌入式软件兼容硬件的方法 |
US10003339B1 (en) * | 2017-06-29 | 2018-06-19 | Guangdong Gowin Semiconductor Corporation, Ltd. | General purpose interface circuit compatible with output of MIPI signals |
CN207067969U (zh) * | 2017-08-08 | 2018-03-02 | 龙芯中科技术有限公司 | 基于硬件平台的系统配置装置及电子设备 |
CN107729179A (zh) * | 2017-09-29 | 2018-02-23 | 烽火通信科技股份有限公司 | 基于相同处理器不同硬件的统一软件镜像实现系统及方法 |
CN108415863A (zh) * | 2018-02-01 | 2018-08-17 | 广东欧珀移动通信有限公司 | 电子装置的硬件兼容实现方法及相关产品 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106775723B (zh) | 基于Android平台的系统固件定制的方法和Android设备 | |
CN109358887B (zh) | 一种单片机程序的在线升级方法、装置及系统 | |
TWI421686B (zh) | 資料存取方法與系統、儲存媒體控制器與儲存系統 | |
ITTO990234A1 (it) | Procedimento e sistema per fornire un'immagine software personalizzataad un sistema di elaboratore. | |
CN110032377B (zh) | 通信模块软件升级方法、系统及通信模块 | |
CN102693144B (zh) | 一种Android移动终端的电容屏固件升级的方法 | |
US9836417B2 (en) | Bridge configuration in computing devices | |
CN105637521A (zh) | 一种数据处理方法及智能终端 | |
CN104021023A (zh) | 一种突破内核模块版本控制解决方法 | |
CN112181455B (zh) | 微控制器的在线升级方法、微控制器及存储介质 | |
CN111061486B (zh) | 一种安卓应用程序增量方法 | |
CN110825409B (zh) | 参数管理方法、电子设备及计算机存储介质 | |
JP2008198060A (ja) | 情報処理装置、パッチコード実装システム、電子機器及びパッチコードの実装方法 | |
KR20180023575A (ko) | 펌웨어 자동 업데이트 방법 및 이의 방법을 기록한 컴퓨터 판독 가능한 기록 매체 | |
CN111752603A (zh) | 同一份系统兼容不同硬件的方法、电子设备、存储介质 | |
CN103617063A (zh) | 一种移动终端的软件更新方法和装置 | |
US11513792B2 (en) | Tracking history of firmware program updates | |
CN108628619A (zh) | 程序更新方法和装置 | |
CN105577451A (zh) | 云电视系统的升级方法及装置 | |
CN113177292A (zh) | 一种通用的bim二次开发实现方法和装置 | |
CN105700920A (zh) | 模拟器操作系统升级系统及方法 | |
CN112148301A (zh) | 一种非编译的Android系统客制化版本集成制作的方法、系统及存储介质 | |
CN118151977B (zh) | 控制器芯片的固件升级方法及系统 | |
CN108268265A (zh) | 公共代码库的链接映射方法、软件代码烧录方法及烧录主机 | |
CN114038549A (zh) | 一种麻醉机软件在线升级系统及方法 |
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 |