CN1506822A - 基于可扩充表单的可复用嵌入式系统的硬件驱动和软件更新方法 - Google Patents

基于可扩充表单的可复用嵌入式系统的硬件驱动和软件更新方法 Download PDF

Info

Publication number
CN1506822A
CN1506822A CNA031093701A CN03109370A CN1506822A CN 1506822 A CN1506822 A CN 1506822A CN A031093701 A CNA031093701 A CN A031093701A CN 03109370 A CN03109370 A CN 03109370A CN 1506822 A CN1506822 A CN 1506822A
Authority
CN
China
Prior art keywords
hardware
upgrading
software
reserved area
embedded system
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.)
Granted
Application number
CNA031093701A
Other languages
English (en)
Other versions
CN100399281C (zh
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.)
Lenovo Beijing Ltd
Original Assignee
Lenovo Beijing 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 Lenovo Beijing Ltd filed Critical Lenovo Beijing Ltd
Priority to CNB031093701A priority Critical patent/CN100399281C/zh
Publication of CN1506822A publication Critical patent/CN1506822A/zh
Application granted granted Critical
Publication of CN100399281C publication Critical patent/CN100399281C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

本发明是一种基于可扩充表单的可复用嵌入式系统的硬件驱动和软件更新方法。它包括在嵌入式系统中划出一小块专门区域做升级保留区,在升级保留区中保留一张已初始化的可扩充的备选驱动表,在升级保留区存放可升级硬件的驱动信息、说明信息和可升级应用程序的版本,在系统内集成一个专门用于升级并能挂接升级保留区的可执行升级程序,用户使用该升级程序对所选择的硬件或软件进行更新,如果要更新的硬件是备选驱动表中没有的,那么退出系统,直接向系统升级保留区写入全新的驱动文件,同时扩充备选驱动表的步骤。本发明方法可重用性强,具有较高安全保证,拥有对未知硬件的扩展接口,使用一套软件平台可适应多个不同的硬件平台。

Description

基于可扩充表单的可复用嵌入式系统的硬件驱动和软件更新方法
技术领域
本发明属于程序控制技术领域,具体地说是一种基于可扩充表单的可复用嵌入式系统的硬件驱动和软件更新方法。
背景技术
嵌入式系统因为考虑到稳定性、可靠性,一般都是封闭的系统,一旦需要更新硬件或应用软件就需要重新建立整个软件系统。陈卫华等在公开的嵌入式操作系统半自动升级方案中采用了每次硬件改动就从外部写入硬件驱动和升级标记,然后由系统完成升级的方法,但是很多时候可能只是有限几种硬件的更换,每次用外部程序写入更新信息完全没有必要,而且作为嵌入式操作系统应当尽量减少以外挂方式向系统写入数据,以保证系统的安全性。
发明内容
为克服上述不足,本发明的目的是提供一种基于可扩充表单的可复用嵌入式系统的硬件驱动和软件更新方法,当发生硬件或软件更新时,它可以尽可能少地从外界获取升级信息,尽量在封闭的环境中完成相应的硬件驱动更新和软件更新。
为完成上述目的,本发明采用的技术方案为:基于可扩充表单的可复用嵌入式系统的硬件驱动和软件更新方法,其步骤包括:
(a)在嵌入式系统中划出一专门区域做升级保留区,在升级保留区中保留一张已初始化的可扩充的备选驱动表;
(b)在升级保留区存放可升级硬件的驱动信息和说明信息、可升级应用程序的版本;
(c)在系统内集成一个专门用于升级的能挂接升级保留区的可执行升级程序;
(d)当需要更新硬件或软件时,用户使用该升级程序对用户所选择的硬件或软件进行更新,如果要更新的硬件是备选驱动表中没有的,则退出系统,直接向系统升级保留区写入全新的驱动文件,同时扩充备选驱动表。
需要更新的硬件驱动和软件必须在其加载前进行升级。
升级程序按以下步骤进行升级:
(a)进行身份校验;
(b)若校验通过,则挂接升级保留区并读取备选驱动表,否则重启动系统;
(c)询问是否升级并显示结果供选择,若升级则按用户选择的结果安装升级包,并按需要进行必要配置文件修改,若不升级则继续下一步骤;
(d)卸载升级保留区;
(e)完成升级,重启动系统。
本发明使用一套软件平台,经过简单选择配置即可适应多个不同的硬件平台,它增强了系统的可重用性,在备选驱动表建立比较充分的情况下,所有操作只是在系统内部完成,无需任何外部数据支持,具有较高的安全保证,同时,备选驱动表的可扩展性使得系统拥有对未知硬件的扩展接口。
附图说明
图1是本发明备选驱动表的分区结构图;
图2是本发明的升级程序的流程图;
图3是实施例操作流程图。
具体实施方式
下面结合附图和具体实施方式对本发明作进一步详细的说明。
以X86嵌入式系统实现个人电脑家电化,硬件平台基本元素是普通个人电脑的硬件,但同种类硬件拥有几个不同的型号或者类型,这样排列组合的结果有数十种,如果针对每和组合都设计一套软件平台,显然开发和维护成本过高。
参阅图1,本发明在该嵌入式系统中设有一个分区做升级保留区,该升级保留区在默认情况下不挂接。升级保留区中保留一张已初始化的可扩充的备选驱动表,并存放了可升级硬件的驱动信息和说明信息、可升级应用程序的版本。
在系统内集成一个专门用于升级的能挂接升级保留区的可执行升级程序,当需要更新硬件或软件时,用户使用该升级程序对用户所选择的硬件或软件进行更新,如果要更新的硬件是备选驱动表中没有的,则退出系统,直接向系统升级保留区写入全新的驱动文件,同时扩充备选驱动表。
驱动升级程序为一字符界面程序,在内核启动后即可以用转换键加U键呼出。所有需要更新的驱动必须在其加载前进行升级。以更新显卡驱动为例,我们通过启动时发送键码在系统启动时预置了两种方式:一种是直接启动到操作系统,此种显卡驱动已加载,不能进行更新,正常运行时都是这种情况,高级用户可以启动到字符界面然后手动启动操作系统,对显卡驱动的更新需要在这种情况下才能进行。同样的,对任何其他硬件驱动模块也需要在加载前更新。另一种是呼出驱动升级程序,该程序在高级用户模式下自动挂接上升级保留区,然后它按照备选驱动表的结构分别读取出当前可获得的备选驱动列表并列表显示给用户。
一个可能的界面为:当前显卡和要用的显卡,想换个驱动的方法是:首先定义驱动的名称、路径等,安装当前显卡驱动包,运行附加升级程序,某些硬件需要对相应的配置文件进行一些关键字的修改,升级驱动程序以当前显卡为参数,修改显卡驱动配置说明,包括添加段和修改当前使用驱动为要用显卡等,具体硬件各不相同,需要分别给出附加升级程序,完成功能和手工修改配置文件相同。
系统重启后默认进入正常应用中,驱动更新完成。需要注意的是,所有的驱动包应该在实验平台验证无误后再使用。
如图2所示,升级程序作为隐藏的应用集成在系统中可以由转换键加B键呼出,其操作流程是:先进行身份校验,若校验通过,则挂接升级保留区并读取备选驱动表,询问是否升级,然后按用户选择安装升级包,并按需要进行必要配置文件修改,卸载升级保留区,最后完成升级,重启动系统。若身份校验通不过,则直接启动系统。
下面是一个实例:
1.在X86嵌入式系统中设立一个升级保留分区hda18,其结构如下:
/hda18 BackupDriverList.tab
/Driver /LX_VGA Tnt2_nv.rpm tnt2_nv.txtGf2_nv.rpm   gf2_nv.txt……
/LX_SOUND ……
/LX_MOUSE ……
/LX_MONIT ……
/LX_NET ……
/LX_KEYBOARD ……
…… ……
/Exe Applieation1.exe……
其中:BackupDriverList.tab是《备选驱动表》
Tnt2_nv.rpm是驱动程序包,tnt2_nv.txt是驱动版本说明。
Application1.exe是一个应用程序。《备选驱动表》BackupDriverList.tab的单元结构如下:Typedef struct HWInfoUnit{
int HWType;                 //硬件类型  如LX_VGA或APPLICATION
char HWName[80];            //硬件名称  如tnt2_nv或applicationl
char HWDriverLocat[256];
                             //升级包或程序的位置如/Driver/LX_VGA/tnt2_nv.rpm
                             或/Exe/Application1.exe};
2.升级程序Update.exe作为隐藏的应用集成在系统中,其操作流程如图3:
(a)进行身份校验;
(b)若校验通过,则挂接升级保留区并读取备选驱动表,否则重启动系统;
(c)询问是否升级并显示结果供选择,若升级则按用户选择的结果安装升级包,并按需
要进行必要配置文件修改,若不升级则继续下一步骤;
(d)卸载升级保留区;
(e)完成升级,重启动系统。

Claims (3)

1、基于可扩充表单的可复用嵌入式系统的硬件驱动和软件更新方法,其特征在于:它包括以下步骤:
(a)在嵌入式系统中划出一专门区域做升级保留区,在升级保留区中保留一张已初始化的可扩充的备选驱动表;
(b)在升级保留区存放可升级硬件的驱动信息和说明信息、可升级应用程序的版本;
(c)在系统内集成一个专门用于升级的能挂接升级保留区的可执行升级程序;
(d)当需要更新硬件或软件时,用户使用该升级程序对用户所选择的硬件或软件进行更新,如果要更新的硬件是备选驱动表中没有的,则退出系统,直接向系统升级保留区写入全新的驱动文件,同时扩充备选驱动表。
2、根据权利要求1所述的基于可扩充表单的可复用嵌入式系统的硬件驱动和软件更新方法,其特征在于:需要更新的硬件驱动和软件必须在其加载前进行升级。
3、根据权利要求1所述的基于可扩充表单的可复用嵌入式系统的硬件驱动和软件更新方法,其特征在于:升级程序按以下步骤进行升级:
(a)进行身份校验;
(b)若校验通过,则挂接升级保留区并读取备选驱动表,否则重启动系统;
(c)询问是否升级并显示结果供选择,若升级则按用户选择的结果安装升级包,并按需
要进行必要配置文件修改,若不升级则继续下一步骤;
(d)卸载升级保留区;
(e)完成升级,重启动系统。
CNB031093701A 2002-12-09 2003-04-08 基于可扩充表单的可复用嵌入式系统的硬件驱动和软件更新方法 Expired - Lifetime CN100399281C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB031093701A CN100399281C (zh) 2002-12-09 2003-04-08 基于可扩充表单的可复用嵌入式系统的硬件驱动和软件更新方法

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN02155510 2002-12-09
CN02155510.9 2002-12-09
CNB031093701A CN100399281C (zh) 2002-12-09 2003-04-08 基于可扩充表单的可复用嵌入式系统的硬件驱动和软件更新方法

Publications (2)

Publication Number Publication Date
CN1506822A true CN1506822A (zh) 2004-06-23
CN100399281C CN100399281C (zh) 2008-07-02

Family

ID=34276107

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB031093701A Expired - Lifetime CN100399281C (zh) 2002-12-09 2003-04-08 基于可扩充表单的可复用嵌入式系统的硬件驱动和软件更新方法

Country Status (1)

Country Link
CN (1) CN100399281C (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1315043C (zh) * 2004-06-24 2007-05-09 华为技术有限公司 一种嵌入式程序的兼容性升级方法
CN100403263C (zh) * 2006-08-16 2008-07-16 华为技术有限公司 按配置下载设备软件的方法
CN100474183C (zh) * 2004-11-19 2009-04-01 Vega格里沙贝两合公司 识别设备软件和设备驱动程序间功能不一致的系统和方法
CN102402445A (zh) * 2011-11-21 2012-04-04 北京星网锐捷网络技术有限公司 一种程序升级的方法、装置及嵌入式设备
US8595713B2 (en) 2004-07-08 2013-11-26 Andrew Llc Radio base station and a method of operating a radio base station
CN104407895A (zh) * 2014-12-01 2015-03-11 浪潮集团有限公司 一种通过扩展传统桥片使x86新平台支持win2000的方法及装置
CN105506918A (zh) * 2015-11-30 2016-04-20 海信(山东)冰箱有限公司 一种洗衣机及其控制方法

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105487907A (zh) * 2015-12-07 2016-04-13 青岛海信电器股份有限公司 一种差分包的制作方法和装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5566335A (en) * 1993-03-16 1996-10-15 Hewlett-Packard Company Method and apparatus for firmware upgrades in embedded systems
US5812857A (en) * 1996-08-28 1998-09-22 Extended Systems, Inc. Field configurable embedded computer system
SE514840C2 (sv) * 1999-07-08 2001-04-30 Axis Ab Metod och apparat för uppgradering av fasta program i ett inbyggt system
CN1154042C (zh) * 2000-09-26 2004-06-16 世纪民生科技股份有限公司 用于嵌入式微控制单元的更新程序码方法
CN1362667A (zh) * 2001-01-04 2002-08-07 财团法人资讯工业策进会 可快速更新软件的嵌入式系统及其更新软件的方法
US6834384B2 (en) * 2001-03-14 2004-12-21 General Instrument Corporation Methods and apparatus for upgrading firmware in an embedded system

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1315043C (zh) * 2004-06-24 2007-05-09 华为技术有限公司 一种嵌入式程序的兼容性升级方法
US8595713B2 (en) 2004-07-08 2013-11-26 Andrew Llc Radio base station and a method of operating a radio base station
CN100474183C (zh) * 2004-11-19 2009-04-01 Vega格里沙贝两合公司 识别设备软件和设备驱动程序间功能不一致的系统和方法
CN100403263C (zh) * 2006-08-16 2008-07-16 华为技术有限公司 按配置下载设备软件的方法
CN102402445A (zh) * 2011-11-21 2012-04-04 北京星网锐捷网络技术有限公司 一种程序升级的方法、装置及嵌入式设备
CN104407895A (zh) * 2014-12-01 2015-03-11 浪潮集团有限公司 一种通过扩展传统桥片使x86新平台支持win2000的方法及装置
CN105506918A (zh) * 2015-11-30 2016-04-20 海信(山东)冰箱有限公司 一种洗衣机及其控制方法

Also Published As

Publication number Publication date
CN100399281C (zh) 2008-07-02

Similar Documents

Publication Publication Date Title
CN1273891C (zh) 最小单位地更新多个文件的方法
US6594723B1 (en) Method and apparatus for updating data in nonvolatile memory
US7017004B1 (en) System and method for updating contents of a flash ROM
US6711675B1 (en) Protected boot flow
US6990577B2 (en) Updating a BIOS image by replacing a portion of the BIOS image with a portion of another BIOS image
US6845464B2 (en) Performing operating system recovery from external back-up media in a headless computer entity
US20030005037A1 (en) Crash recovery system
US7047403B2 (en) Method and system for operating system recovery and method of using build-to-configuration mode to model computer system
CN1304946C (zh) 启动和启动代码更新方法
US7721284B2 (en) Deployment of multiple embedded operating system components
US20040205745A1 (en) Method and system for identifying compatibility between firmware images
US7000231B1 (en) Method of manufacturing operating system master template, method of manufacturing a computer entity and product resulting therefrom, and method of producing a production version of an operating system
JPH11502045A (ja) Biosをホスト・コンピュータに提供する方法と配置
CN1277214C (zh) 一种嵌入式系统升级的方法
CN100343807C (zh) 一种Boot软件升级方法和一种Boot软件恢复方法
CN1200341C (zh) 嵌入式系统中固件程序在线升级的实现方法
CN1617101A (zh) 操作系统资源保护
JP2002525701A (ja) Bios−rom内の不揮発性記憶装置の使用を標準化する方法および装置
US6427236B1 (en) Method for installing a patch based on patch criticality and software execution format
US20040003265A1 (en) Secure method for BIOS flash data update
CN1506822A (zh) 基于可扩充表单的可复用嵌入式系统的硬件驱动和软件更新方法
CN1455336A (zh) 使用cf卡自动更新嵌入式设备操作系统的方法
CN101739270B (zh) 电子装置及其系统更新方法
CN1606730A (zh) 用在网络环境中的设备
JPH0793276A (ja) コンピュータの立ち上げ方式

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CX01 Expiry of patent term
CX01 Expiry of patent term

Granted publication date: 20080702