CN104657173B - 一种升级单板软件不中断业务的处理方法 - Google Patents

一种升级单板软件不中断业务的处理方法 Download PDF

Info

Publication number
CN104657173B
CN104657173B CN201510055782.3A CN201510055782A CN104657173B CN 104657173 B CN104657173 B CN 104657173B CN 201510055782 A CN201510055782 A CN 201510055782A CN 104657173 B CN104657173 B CN 104657173B
Authority
CN
China
Prior art keywords
hardware
thermal starting
write
read
processing method
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
Application number
CN201510055782.3A
Other languages
English (en)
Other versions
CN104657173A (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.)
Wuhan Fiberhome Technical Services Co Ltd
Original Assignee
Fiberhome Telecommunication Technologies 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 Fiberhome Telecommunication Technologies Co Ltd filed Critical Fiberhome Telecommunication Technologies Co Ltd
Priority to CN201510055782.3A priority Critical patent/CN104657173B/zh
Publication of CN104657173A publication Critical patent/CN104657173A/zh
Application granted granted Critical
Publication of CN104657173B publication Critical patent/CN104657173B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Storage Device Security (AREA)

Abstract

一种升级单板软件不中断业务的处理方法,涉及通信领域中单板升级,在硬件和驱动软件之间添加硬件操作抽象层,硬件操作抽象层用于操作所有硬件;处理方法的步骤:S1.硬件操作抽象层收到芯片的硬件寄存器读写操作时,进行读写判断,若是写操作,进入S2;若是读操作,进入S4;S2.进入写操作流程,判断单板当前是否处于热启动状态中,若是,进入S3;若否,进入S4;S3.进入写保护,所有对硬件寄存器的写操作被屏蔽;S4.直接对硬件寄存器进行操作,所有对硬件的操作都被执行。本发明使得热启动情况下单板软件升级不中断业务,大大优化了软件处理的复杂度,提高了系统的稳定性。

Description

一种升级单板软件不中断业务的处理方法
技术领域
本发明涉及通信领域中单板升级,具体来讲是一种升级单板软件不中断业务的处理方法。
背景技术
在通信领域,对处于使用状态单板的业务稳定性要求非常高,其承载的业务发生中断是不能容忍的。但由于维护的需要,单板软件有时候会遇到需要升级的情况,如何在升级单板软件的过程中不影响其承载的业务,成为各通信设备供应商研究的重点。
对于重要的单板,可以使用主备备份的方式工作,作为主备使用的单板必须成对使用,且要求使用同种类型的单板进行主备配置,当需要升级单板软件时,先对备用单板进行升级,升级成功之后,再让工作通道从主用切换到备用,完成平滑升级。但这种方式不能覆盖所有单板,而且切换主备工作通道会引入不稳定因素。
现在通信领域的芯片开发厂家,在提供芯片的SDK(Software Development Kit,软件开发工具包)时,多数都会考虑到单板软件升级的情况,在对芯片进行初始化的时候提供两种芯片初始化的选择,分别是冷启动和热启动。对芯片做冷启动初始化,表示需要对芯片做充分复位,所有初始化的动作都需要进行。反之,对芯片做热启动初始化,表示对芯片的初始化不能影响芯片上正在承载的业务,避免一切影响当前业务的操作,只进行恢复芯片软件运行环境的相关操作。但并非所有芯片厂家都能够非常好的支持热启动功能,如果遇上没有提供此功能的芯片,单板软件人员只能自己修改芯片驱动,添加这部分的支持,修改量往往是非常大的,同时也会给后期维护增加难度,增加系统的不稳定性。
发明内容
针对现有技术中存在的缺陷,本发明的目的在于提供一种升级单板软件不中断业务的处理方法,使得热启动情况下单板软件升级不中断业务,大大优化了软件处理的复杂度,提高了系统的稳定性。
为达到以上目的,本发明采取的技术方案是:一种升级单板软件不中断业务的处理方法,在硬件和驱动软件之间添加硬件操作抽象层,硬件操作抽象层用于操作所有硬件;处理方法的步骤如下:S1.硬件操作抽象层收到芯片的硬件寄存器读写操作时,进行读写判断,若是写操作,进入S2;若是读操作,进入S4;S2.进入写操作流程,判断单板当前是否处于热启动状态中,若是,进入S3;若否,进入S4;S3.进入写保护,所有对硬件寄存器的写操作被屏蔽;S4.直接对硬件寄存器进行操作,所有对硬件的操作都被执行。
在上述技术方案的基础上,预先在硬件操作抽象层设置热启动标识,在热启动开始时,热启动标识置0,表示单板处于热启动状态中;在热启动进行完毕后,热启动标识置1,表示单板热启动完成。
在上述技术方案的基础上,步骤S2中,根据热启动标识判断单板是否处于热启动状态中,当热启动标识为0时,表示单板处于热启动状态中。
在上述技术方案的基础上,所述硬件操作抽象层包括启动判断模块、读写判断模块和写保护模块,启动判断模块用来区分是热启动状态中还是热启动完成,读写判断模块用来区分读写操作,写保护模块用来防止热启动中对硬件配置的修改。
在上述技术方案的基础上,所述处理方法在用户需要热启动的前提下进行。
在上述技术方案的基础上,步骤S1中进行读写判断,通过硬件操作抽象层调用的是读寄存器函数还是写寄存器函数,来判断当前的操作是读操作还是写操作。
本发明的有益效果在于:通过在硬件和驱动软件之间添加了硬件操作抽象层的方式,将所有的硬件操作交给硬件操作抽象层来处理,使得单板升级不中断业务的处理变得简单而易于控制,即使遇上不支持冷启动和热启动的芯片驱动软件,通过此方法也可以非常方便的得到支持,大大优化了软件处理的复杂度,提高了系统的稳定性。
附图说明
图1为本发明硬件操作抽象层示意图;
图2为本发明升级单板软件不中断业务的处理方法流程图。
具体实施方式
以下结合附图及实施例对本发明作进一步详细说明。
本发明升级单板软件不中断业务的处理方法,在硬件和驱动软件之间(即以前的读写函数中)添加硬件操作抽象层,用于操作所有硬件,并使用注册的方式将读写寄存器函数告知硬件操作抽象层,以便硬件抽象层需要的时候调用。如图1所示,硬件操作抽象层包括启动判断模块、读写判断模块和写保护模块,启动判断模块用来区分是热启动状态中还是热启动完成,读写判断模块用来区分读写操作,写保护模块用来防止热启动中对硬件配置的修改。
如图2所示,本发明升级单板软件不中断业务的处理方法,在用户需要热启动的前提下进行,具体步骤如下:
S1.当硬件操作抽象层收到芯片的硬件寄存器读写操作时,并不会立即执行相应的操作,而是进行读写判断,通过硬件操作抽象层调用的是读寄存器函数还是写寄存器函数,来判断当前的操作是读操作还是写操作,若是写操作(调用的是写寄存器函数),进入S2;若是读操作(调用的是读寄存器函数),进入S4。
S2.进入写操作流程,判断当前单板是否处于热启动状态中,若是,进入S3;若否,进入S4。
S3.进入写保护,所有对硬件寄存器的写操作被屏蔽。
S4.直接对硬件寄存器进行操作,所有对硬件的操作都被执行。
上述步骤中,在热启动前提下,还需要根据热启动在什么时候结束,而考虑写保护结束的时间。因此预先在硬件操作抽象层设置热启动标识,在热启动开始时,硬件操作抽象层会将热启动标识置0,表示单板处于热启动状态中;在热启动进行完毕后,硬件操作抽象层会将热启动标识置1,表示单板热启动完成。因此,在步骤S2中,只需要判断热启动标识,当热启动标识为0时,表示单板处于热启动状态中。
本发明通过在硬件和驱动软件之间添加了硬件操作抽象层来隔离具体的硬件操作,本实施例中硬件为芯片驱动,驱动软件为芯片驱动读写函数。添加了硬件操作抽象层后,所有的硬件读写操作,首先是调用硬件操作抽象层的读写函数,这时所有对硬件的写操作不会被真正的执行,这样就不会改变硬件当前配置;同时由于读硬件寄存器并不会影响硬件配置,对硬件寄存器的读操作是可以被真正执行的。通过了硬件操作抽象层读写函数的逻辑判断以后,才会真正进行对硬件的具体操作。当单板软件完成了热启动的所有相关操作之后,可以再次通过设置函数通知硬件操作抽象层退出热启动状态,后续的硬件操作将恢复对实际的硬件进行操作。
本发明不局限于上述实施方式,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围之内。本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。

Claims (6)

1.一种升级单板软件不中断业务的处理方法,其特征在于,在硬件和驱动软件之间添加硬件操作抽象层,硬件操作抽象层用于操作所有硬件;处理方法的步骤如下:
S1.硬件操作抽象层收到芯片的硬件寄存器读写操作时,进行读写判断,若是写操作,进入S2;若是读操作,进入S4;
S2.进入写操作流程,判断单板当前是否处于热启动状态中,若是,进入S3;若否,进入S4;
S3.进入写保护,所有对硬件寄存器的写操作被屏蔽;
S4.直接对硬件寄存器进行操作,所有对硬件的操作都被执行。
2.如权利要求1所述升级单板软件不中断业务的处理方法,其特征在于:预先在硬件操作抽象层设置热启动标识,在热启动开始时,热启动标识置0,表示单板处于热启动状态中;在热启动进行完毕后,热启动标识置1,表示单板热启动完成。
3.如权利要求2所述升级单板软件不中断业务的处理方法,其特征在于:步骤S2中,根据热启动标识判断单板是否处于热启动状态中,当热启动标识为0时,表示单板处于热启动状态中。
4.如权利要求1所述升级单板软件不中断业务的处理方法,其特征在于:所述硬件操作抽象层包括启动判断模块、读写判断模块和写保护模块,启动判断模块用来区分是热启动状态中还是热启动完成,读写判断模块用来区分读写操作,写保护模块用来防止热启动中对硬件配置的修改。
5.如权利要求1所述升级单板软件不中断业务的处理方法,其特征在于:所述处理方法在用户需要热启动的前提下进行。
6.如权利要求1所述升级单板软件不中断业务的处理方法,其特征在于:步骤S1中进行读写判断,通过硬件操作抽象层调用的是读寄存器函数还是写寄存器函数,来判断当前的操作是读操作还是写操作。
CN201510055782.3A 2015-02-03 2015-02-03 一种升级单板软件不中断业务的处理方法 Active CN104657173B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510055782.3A CN104657173B (zh) 2015-02-03 2015-02-03 一种升级单板软件不中断业务的处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510055782.3A CN104657173B (zh) 2015-02-03 2015-02-03 一种升级单板软件不中断业务的处理方法

Publications (2)

Publication Number Publication Date
CN104657173A CN104657173A (zh) 2015-05-27
CN104657173B true CN104657173B (zh) 2017-12-22

Family

ID=53248352

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510055782.3A Active CN104657173B (zh) 2015-02-03 2015-02-03 一种升级单板软件不中断业务的处理方法

Country Status (1)

Country Link
CN (1) CN104657173B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112636934B (zh) * 2020-12-29 2022-06-24 北京东土军悦科技有限公司 交换机的复位方法、装置、计算机设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101008900A (zh) * 2007-01-31 2007-08-01 华为技术有限公司 一种区分系统冷启动和热启动的方法及装置
CN101078993A (zh) * 2007-03-13 2007-11-28 中兴通讯股份有限公司 一种终端产品不中断业务在线升级版本的方法
CN103064695A (zh) * 2011-10-21 2013-04-24 上海湾流仪器技术有限公司 现场可编程门阵列的动态加载系统及其加载方法
CN103092662A (zh) * 2013-02-04 2013-05-08 烽火通信科技股份有限公司 一种基于嵌入式操作系统的终端设备的软件模块升级方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102693159B (zh) * 2012-05-09 2015-07-01 上海晨思电子科技有限公司 基于用户模式多任务下控制硬件设备的方法及其装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101008900A (zh) * 2007-01-31 2007-08-01 华为技术有限公司 一种区分系统冷启动和热启动的方法及装置
CN101078993A (zh) * 2007-03-13 2007-11-28 中兴通讯股份有限公司 一种终端产品不中断业务在线升级版本的方法
CN103064695A (zh) * 2011-10-21 2013-04-24 上海湾流仪器技术有限公司 现场可编程门阵列的动态加载系统及其加载方法
CN103092662A (zh) * 2013-02-04 2013-05-08 烽火通信科技股份有限公司 一种基于嵌入式操作系统的终端设备的软件模块升级方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"嵌入式系统硬件抽象层研究及其在开发过程中的应用";王志刚;《中国优秀博硕士学位论文全文数据库(硕士) 信息科技辑》;20070615(第06期);第17页,第37页,第46-50页、图6B *

Also Published As

Publication number Publication date
CN104657173A (zh) 2015-05-27

Similar Documents

Publication Publication Date Title
CN107122321A (zh) 硬件修复方法、硬件修复系统以及计算机可读取存储装置
US10037064B2 (en) Enhanced re-hosting capability for legacy hardware and software
CN104102506B (zh) 一种基于ARM平台的Android启动加速方法
CN102141940B (zh) 一种固件刷机恢复设备、固件刷机恢复方法及系统
CN101699402B (zh) 一种多模式启动的嵌入式系统
CN102662708A (zh) 一种Linux操作系统及其显卡驱动装置
CN101634960A (zh) 一种修改bios参数及重新生成校验和的方法
CN102693144A (zh) 一种Android移动终端的电容屏固件升级的方法
CN104572161A (zh) 一种基于龙芯便携式计算机的uefi固件实现方法
CN103150188A (zh) 非x86指令集计算机的x86兼容显卡快速初始化方法
CN103853147B (zh) 一种嵌入式系统的在线调试系统
CN105224483B (zh) 数据传输方法、电子设备及通用串行总线设备
CN106909399A (zh) 一种基于服务器计算机的uefi固件实现方法
CN105183521A (zh) 一种安装计算操作系统的方法及usb接口存储设备
CN105468390A (zh) Boot在线升级装置及方法
CN104657173B (zh) 一种升级单板软件不中断业务的处理方法
CN101841430A (zh) 一种命令行的修正方法及装置
CN106201564B (zh) 在线升级基于内核虚拟机模块的设备和方法
CN104657232A (zh) Bios自动恢复系统及方法
CN110018965A (zh) 一种bios单步调试控制方法、装置及系统
CN104866388A (zh) 数据处理方法及装置
CN102567251B (zh) Bios的控制方法和装置
CN103902275A (zh) 一种实现应用的语言版本切换的方法和系统
CN201898554U (zh) 具有自备份和恢复数据的手机
CN102023887B (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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20180213

Address after: 430073 No. 4 Guanshan Second Road, East Lake Development Zone, Wuhan City, Hubei Province

Patentee after: WUHAN FIBERHOME TECHNICAL SERVICES CO., LTD.

Address before: China Science and Technology Park Dongxin road East Lake Development Zone 430074 Hubei Province, Wuhan City, No. 5

Patentee before: Fenghuo Communication Science &. Technology Co., Ltd.