CN100517248C - 软件版本升级管理装置和软件版本升级管理方法 - Google Patents

软件版本升级管理装置和软件版本升级管理方法 Download PDF

Info

Publication number
CN100517248C
CN100517248C CNB2007101697821A CN200710169782A CN100517248C CN 100517248 C CN100517248 C CN 100517248C CN B2007101697821 A CNB2007101697821 A CN B2007101697821A CN 200710169782 A CN200710169782 A CN 200710169782A CN 100517248 C CN100517248 C CN 100517248C
Authority
CN
China
Prior art keywords
version
module
software
memory module
control module
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.)
Expired - Fee Related
Application number
CNB2007101697821A
Other languages
English (en)
Other versions
CN101169749A (zh
Inventor
郑斌儒
刘嵘
Original Assignee
ZTE Corp
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 ZTE Corp filed Critical ZTE Corp
Priority to CNB2007101697821A priority Critical patent/CN100517248C/zh
Publication of CN101169749A publication Critical patent/CN101169749A/zh
Application granted granted Critical
Publication of CN100517248C publication Critical patent/CN100517248C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

本发明公开了软件版本升级管理装置及方法,该装置包括:第一和第二版本存储模块,存储系统的软件版本,两者互为备份;存储选择模块,选择第一及第二版本存储模块中的一个参与后续的操作;存储控制模块,控制存储选择模块对第一及第二版本存储模块的选择;读写控制模块,与存储选择模块和存储控制模块连接,实现数据的读写操作;版本加载模块,受读写控制模块的控制并通过读写控制模块从第一或第二版本存储模块下载所需软件版本;版本信息寄存模块,与存储控制模块和读写控制模块连接,存储系统的表示当前软件版本存储位置的设备号和表示版本状态的状态值,用互相为备份的版本存储模块替换单一存储模块,实现系统软件版本备份和回退的技术进步。

Description

软件版本升级管理装置和软件版本升级管理方法
技术领域
本发明涉及系统软件版本升级管理技术,尤其涉及通信领域的主控系统的软件版本升级管理装置和方法。
背景技术
为了应对技术不断更新和用户会不断提出新需求的需要,产品在系统设计阶段就必须考虑系统能实现软件版本随时更新的要求。在目前,需要加载软件版本的器件主要集中在处理器(包括通用处理器、数字信号处理器和单片机)和FPGA(Field Programmable GateArray)这几类可软件编程的器件类型上。由于在系统的启动过程中就需要下载软件版本,因此这些器件的软件版本一般都放在FLASH(闪存,一种可靠性较高的存储器)上,系统上电后,需要加载软件版本的器件只需通过操作FLASH的数据接口就可以读取到需要的数据。对于软件版本的升级其本质就是更新FLASH的内容,将新的数据写入FLASH中,当系统重启后,就可以得到新的软件版本,实现整个系统升级。目前更新FLASH内容的方法主要有:一是通过编程器,技术人员到用户现场将新的软件版本烧录到FLASH中,这种方法的优点在于一次操作不成功可以多次操作,但缺点也比较明显,就是增加了系统升级成本和操作不方便;另一种方法是软件系统可以支持软件版本在线升级,即技术人员可以在远端通过系统提供的用户接口对系统进行升级操作,将新的软件版本拷贝到FLASH中,成功后通过软启动命令使系统重启加载新的软件版本实现系统升级,该方法的优点是技术人员可以不到用户现场只需远程登录到用户设备上就能实现软件版本升级,同时由于软件版本升级不需要专用的烧录器,也大大的节约了系统升级成本,但这种方法也有其明显不足之处:可靠性较低,如正在对FLASH进行更新的时候,系统突然断电或其他异常导致系统重新启动,这时旧的软件版本已经被破坏,新的软件版本还没有更新成功,系统因没有完整的软件版本而不能重新启动,不能再进行远端操作,需要技术人员赶到现场解决这个严重故障。
上述两种软件版本升级的方法除了已经列举的缺点外,由于现在的版本存储器FLASH设计采用的是一个单模块设计,不能备份原有的软件版本,因此不能提供软件版本回退功能,即新的软件版本出现问题后,不能方便的回退到长期使用的验证过的原有的软件版本上。
发明内容
鉴于上述技术问题,本发明所要解决的技术问题在于提供一种可靠的软件版本升级管理装置和软件版本升级管理装置方法,其能够克服现有技术中存在的软件版本升级过程中可靠性低,版本管理不灵活,以及升级维护成本高的问题。
根据本发明的第一方面的软件版本升级管理装置,用于对系统的软件版本进行升级管理,包括:第一版本存储模块和第二版本存储模块,用于存储系统的软件版本,第一版本存储模块与第二版本存储模块互为备份;存储选择模块,用于选择第一版本存储模块及第二版本存储模块中的一个参与后续的操作;存储控制模块,用于控制存储选择模块对第一版本存储模块及第二版本存储模块的选择;读写控制模块,与存储选择模块和存储控制模块连接,用于实现数据的读写操作;版本加载模块,受读写控制模块的控制并通过读写控制模块从第一版本存储模块或第二版本存储模块下载所需软件版本;以及版本信息寄存模块,与存储控制模块和读写控制模块连接,用于存储系统的表示当前软件版本存储位置的设备号和表示版本状态的状态值。
在上述软件版本升级管理装置中,版本加载模块是具有控制系统的处理器设备。
在本发明第一方面的软件版本升级管理装置中,还包括版本控制模块,用于进行系统的控制,版本控制模块通过读写控制模块选择处于备份状态的第一版本存储模块或第二版本存储模块,并写入新的软件版本;版本控制模块通过读写控制模块修改版本信息寄存模块中的设备号和状态值。
在上述的软件版本升级管理装置中,第一版本存储模块和第二版本存储模块包括永久记忆性存储器,接受版本控制模块的读写操作和版本加载模块的读操作。
在上述的软件版本升级管理装置中,存储控制模块根据查询版本信息寄存模块返回的内容或者读写控制模块接收到的版本控制模块的选择控制请求,控制存储选择模块选择第一版本存储模块或第二版本存储模块。
在上述的软件版本升级管理装置中,读写控制模块完成版本控制模块、版本加载模块、以及第一版本存储模块或第二版本存储模块之间的数据读写操作转换和数据转发操作,具有以下功能:实现版本控制模块对版本信息寄存模块的更新操作;控制版本加载模块的版本下载操作;通过存储控制模块控制存储选择模块完成版本控制模块对第一版本存储模块或第二版本存储模块的读写操作;当新的软件版本第一次不能正常启动时,控制系统重新启动并将系统的软件版本自动回退到原有软件版本。
在上述的软件版本升级管理装置中,第一版本存储模块和第二版本存储模块是相互独立的存储器、或是一个存储器的相互独立的两个存储空间,当第一版本存储模块和第二版本存储模块是相互独立的存储器时,存储选择模块通过总线选择第一版本存储模块或第二版本存储模块;当第一版本存储模块和第二版本存储模块是一个存储器的相互独立的两个存储空间时,存储选择模块通过地址选择第一版本存储模块或第二版本存储模块。
在上述的软件版本升级管理装置中,版本信息寄存模块是永久记忆性存储器,包括当前版本寄存器。
根据本发明第二方面的软件版本升级管理方法,用于对系统的软件版本进行升级管理,通过包含有互为备份的第一版本存储模块和第二版本存储模块的软件版本升级管理装置来实现,包括以下步骤:步骤一,软件版本升级管理装置的版本控制模块接收新的软件版本,并将新的软件版本写入处于备份状态的第一版本存储模块或第二版本存储模块中;当写入成功时,更新软件版本升级管理装置的版本信息寄存模块中的当前版本寄存器的设备号,使设备号指向存有新的软件版本的第一版本存储模块或第二版本存储模块的设备号;步骤二,系统复位重启或断电重启后,软件版本升级管理装置的存储控制模块根据版本信息寄存模块中的当前版本寄存器的设备号,控制软件版本升级管理装置的存储选择模块选择存有新的软件版本的第一版本存储模块或第二版本存储模块,同时软件版本升级管理装置的读写控制模块控制版本加载模块,让其处于加载等待状态,直到存储控制模块完成对存储选择模块的控制;步骤三,读写控制模块无效其对版本加载模块的控制,版本加载模块开始通过读写控制模块从存有新的版本的第一版本存储模块或第二版本存储模块下载软件版本,下载成功后,系统继续启动;步骤四,当系统成功启动后,完成一次版本升级;当系统没有成功启动时,读写控制模块修改版本信息寄存模块中的当前版本寄存器的设备号和状态值,使设备号为存有原有软件版本的第一版本存储模块或第二存储模块的设备号,然后控制整个系统重新启动。
在上述的软件版本升级管理方法中,在步骤一之前还包括以下过程:当版本控制模块接收到软件版本升级的命令时,首先通过读写控制模块查询版本信息寄存模块的当前版本寄存器,获得存储当前运行的软件版本的第一版本存储模块或者第二版本存储模块的设备号,确认处于备份状态的是第一版本存储模块还是第二版本存储模块。
采用本发明所述方法和装置,与现有技术相比,取得了用互相为备份的版本存储模块替换单一存储模块,实现系统软件版本备份和回退的技术进步,达到了软件版本灵活管理的效果,节省了系统升级成本,提高了系统可靠性和市场竞争力等等。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1是软件版本升级管理装置的模块图。
图2是软件版本升级管理方法的第一实施例的流程图。
图3是软件版本升级管理方法的第二实施例的流程图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
图1是软件版本升级管理装置100的模块图。如图1所示,版本管理装置100包括:版本存储模块101、102、存储选择模块103、存储控制模块104、版本控制模块105、读写控制模块106、版本加载模块107、版本信息寄存模块108。
为了方便描述,假设系统原来运行的软件版本存储在版本存储模块101中,新的软件版本需要写入处于备用状态的版本存储模块102中。
版本存储模块101,由可靠性高的永久记忆性存储器组成,存储系统所需的软件版本。与版本存储模块102是相互为备份的版本存储设备,它们可以是相互为独立的存储设备,也可以是一个大的存储器的相互独立的存储空间。
版本存储模块102,结构和功能与版本存储模块101一样,在本实施例中,该版本存储模块102处于备用状态,当软件版本升级的时候,存储新的软件版本。
存储选择模块103,是一种存储设备选择器,根据版本存储模块101、102的类型既可以是存储空间的地址选择也可以是两个独立存储设备的总线选择。存储选择模块103接收来自存储控制模块104的控制信号,并根据该控制信号从版本存储模块101和版本存储模块102中选择出一个模块接受读写控制模块106的读写操作。
存储控制模块104,控制存储选择模块103的对版本存储模块101、102的选择。存储控制模块104在系统重启的时候,首先去查询版本信息寄存模块108中的当前软件版本寄存器,根据反馈回来的设备号,控制存储选择模块103对版本存储模块101、102的选择;完成对存储选择模块103的控制后,存储控制模块104向读写控制模块106输出一个状态信号,标志存储选择模块103的版本存储模块的选择操作完成,读写控制模块106可以进行后续工作。在系统正常运行的过程中,存储控制模块104能接收读写控制模块106的版本存储模块选择请求,接收到请求后,首先无效输出给读写控制模块106的状态信号,指示存储选择模块103此时的选择是无效,读写控制模块106需要等待,然后根据请求信号传过来的设备号,控制存储选择模块103进行选择,完成这个操作后,改变输出给读写控制模块106的状态信号的值,通知读写控制模块106可以继续其后续操作。
版本控制模块105,由负责系统控制的中央处理器构成,负责完成从用户接口接收新的软件版本并将软件版本通过读写控制模块106写入备份的版本存储模块102中去的操作,当版本加载模块107是一个处理器设备并承担系统控制操作的时候,版本控制模块105可以省略,用版本加载模块107替代其工作。当有软件版本需要升级的时候,版本控制模块105首先通过读写控制模块106查询版本信息寄存模块108的当前版本寄存器,可以间接获得处于备用状态的版本存储模块102的设备号,根据这个设备号去通知读写控制模块106,要求它去请求存储控制模块104去控制存储选择模块103,使处于备用状态的版本存储模块102与读写控制模块106连接,并能接受其读写控制;当完成与版本存储模块102的连接后,版本控制模块105将新的软件版本通过读写控制模块106写入版本存储模块102,成功后,将版本存储模块102的设备号通过读写控制模块写入版本信息寄存模块108中的当前版本寄存器。当系统重启后,就完成一次软件版本更新。如果新的软件版本设计不满足用户需求或者其他原因,版本控制模块105可以通过读写控制模块106修改版本信息寄存模块108中的当前版本寄存器,写入版本存储模块101的设备号,从而实现版本回退功能。
读写控制模块106,实现数据读写操作转换和数据转发操作。版本控制模块105、版本加载模块107、版本存储模块101和版本存储模块102之间的数据读写时序和数据格式可能不同,系统是依靠读写控制模块106来实现这些模块的读写操作转换和数据转发。读写控制模块106实现版本控制模块105对版本信息寄存模块108的更新操作。系统断电或复位重启后,读写控制模块106首先通过控制信号禁止版本加载模块107的加载操作,直到检测到标志着存储选择模块103已经完成版本存储模块选择的由存储控制模块104发送过来的状态信号后,读写控制模块106才撤销对版本加载模块107的控制信号;然后版本加载模块107开始加载版本,并启动整个软件系统,系统启动完成后,版本控制模块105通知读写控制模块106系统已经正常启动,同时更新当前版本寄存器的版本状态标志位。当版本加载模块107成功下载版本后,读写控制模块106启动一个内部计数器,当计数器的计数值超过预定值后,仍然没有收到版本控制模块105的标志系统已经正常启动的通知,读写控制模块106主动发起一个对版本信息寄存模块108中当前版本寄存器的查询操作,检测其版本状态标志位,当标志位为0的时候,修改当前版本寄存器中的设备号,写入存有上一版本(原有版本)的版本存储模块101的设备号,并同时将当前版本寄存器的状态值设置为1;然后读写控制模块106发出系统复位命令,自动重新启动整个系统,系统软件版本回退到经过验证的原有版本,重启后,用户可以选择重新升级软件版本或者其他操作。
版本加载模块107,由需要加载软件版本的处理器或FPGA等软件可编程器件构成。读写控制模块106控制版本加载模块107何时可以加载软件版本;版本加载模块107可以通过读写控制模块106从版本存储模块101或者版本存储模块102获得需要的软件版本。
版本信息寄存模块108,由一个小容量的永久记忆性存储器构成,包含一个当前版本寄存器。该寄存器定义了两个字段,一个字段为设备号,用于指示系统下次重新启动的时候是从版本存储模块101还是从版本存储模块102下载软件版本;另外一个字段为状态值,用于标志设备号所指示的版本存储模块中的软件版本是否至少一次被成功启动过,0:表示没有成功启动过,1:表示至少成功启动一次。存储控制模块104在重新启动的时候需要查询当前版本寄存器的设备号,确定存储选择模块103去选择版本存储模块101还是版本存储模块102;版本控制模块105通过读写控制模块106修改当前版本寄存器的设备号和状态值实现版本更新和回退功能;读写控制模块106可以主动修改当前版本寄存器的设备号和状态值实现系统自动软件版本回退功能。
图2是软件版本升级管理方法的第一实施例的流程图。如图2苏轼,软件版本升级管理方法包括以下步骤:
步骤S210,版本控制模块接收新的软件版本,并将新的软件版本写入处于备份的版本存储模块中。在成功的将新的软件版本写入版本存储模块后,更新版本信息寄存模块中的当前版本寄存器,使当前版本寄存器中的设备号指向存有最新软件版本的版本存储模块的设备号;
步骤S220,系统复位重启或断电重启,存储控制模块根据查询到版本信息寄存模块中的版本存储模块的设备号,控制存储选择模块选择存有升级后的软件版本的版本存储模块。同时读写控制模块控制版本加载模块,让其处于加载等待状态,直到存储控制模块完成对存储选择模块的控制。
步骤S230,读写控制模块无效其对版本加载模块的控制,版本加载模块开始通过读写控制模块从版本存储模块下载软件版本,下载成功后,系统继续启动。当系统成功启动后,完成一次版本升级。
步骤S240,如果步骤S230执行后升级不成功,读写控制模块修改版本信息寄存模块中的当前版本寄存器的设备号和状态值,使设备号为存有上一软件版本的版本存储模块的设备号,然后控制整个系统重新启动。
图3是软件版本升级管理方法的第二实施例的流程图。如图3所示,对于本发明的软件版本升级的步骤如下:
步骤302,准备,当用户需要升级软件版本或者软件版本回退的时候,整个系统需要是正在正常运行的系统,并且技术人员可以通过用户接口登录到系统,对系统进行操作。当技术人员登录到系统后,可以执行版本升级或者版本回退命令。
步骤S304,版本控制模块105收到软件版本更新或者软件版本回退命令后,通过读写控制模块106查询版本信息寄存模块108的当前版本寄存器,获得当前运行的软件版本是从哪个版本存储模块下载的,在本发明中该操作获得的是版本存储模块101的设备号,通过该设备号版本控制模块105知道版本存储模块102是处于备用状态或者系统的软件版本需要回退到版本存储模块102存放的软件版本上。
步骤S306,版本控制模块105在获得版本存储模块102是后续需要操作的对象后,需要判断接收到的操作命令是软件版本更新命令还是版本回退命令,如果是软件版本更新命令,则执行步骤S308;如果是软件版本回退,则执行步骤S328。
步骤S308,根据步骤S304获得的设备号,版本控制模块105通知读写控制模块106它需要对版本存储模块102进行写操作,并等待读写控制模块106反馈版本存储模块102准备状态;读写控制模块106获得版本控制模块105的版本存储模块选择通知后,将版本存储模块102的设备号发送给存储控制模块104,并请求其控制存储选择模块103选择版本存储模块102作为后续操作的对象,当存储选择模块103完成选择版本存储模块102作为后续操作对象后,存储控制模块104通过状态信号通知读写控制模块106版本存储模块102已经准备好,可以进行后续操作。版本控制模块105从读写控制模块106获得版本存储模块102已经准备好后,执行步骤S310。
步骤S310,更新软件版本,版本控制模块105将新的软件版本通过读写控制模块106写入版本存储模块102。同时版本控制模块105还需要通过读写控制模块106修改版本信息寄存模块108的当前版本寄存器,将其设备号修改为版本存储模块102的设备号;将状态值设置为0,以供新的软件版本不能成功启动后,系统能自动回退到原有软件版本。
步骤S312,重新启动,系统复位重新启动或者断电重新启动,重新加载软件版本。读写控制模块106控制版本加载模块107,禁止版本加载模块107加载软件版本,等待存储选择模块103选择操作完成后再进行版本下载操作。
步骤S314,选择软件版本,存储控制模块104在系统重启后,查询版本信息寄存模块108的当前版本寄存器的设备号,通过这个设备号获得版本加载模块107应该从版本存储模块102下载版本的信息,于是控制版本选择模块103选择版本存储模块102作为后续操作的对象。完成这些操作后存储控制模块104发送状态信号给读写控制模块106,指示版本选择模块103已经完成选择操作,版本存储模块102已经准备好进行后续操作。
步骤S316,加载软件版本,读写控制模块106获得版本存储模块102已经准备好后,撤销对版本加载模块107的控制,允许版本加载模块107通过读写控制模块106从版本存储模块102下载软件版本。
步骤S318,启动成功,在版本加载模块107成功从版本存储模块102下载版本后,启动内部计数器,等待版本控制模块105发来的系统启动成功的通知。在版本控制模块105发出系统启动成功的通知后,执行步骤S320;如果在内部计数器的计数值超过设置值后,读写控制模块106仍然没有收到版本控制模块105的系统启动成功的通知,执行步骤S322。
步骤S320,版本控制模块105在系统启动成功后,通过读写控制模块106修改版本信息寄存模块108的当前版本寄存器的状态值,将其设置为1,表示该软件版本至少被成功启动一次。至此,系统完成整个启动过程。
步骤S322,查询当前版本寄存器,读写控制模块106主动查询版本信息寄存模块108的当前版本寄存器中的状态值。
步骤S324,读写控制模块106根据步骤S322返回的状态值,判断版本加载模块107加载的版本是否被成功启动过,如果状态值是0,说明该软件版本还没有成功加载过,软件版本升级失败,版本需要回退到以前的版本,执行步骤S326;如果状态值是1,说明该软件版本是经过该系统启动验证过,不能启动可能有其他问题,需要技术人员现场解决,因此不进行版本回退,直接结束系统启动。
步骤S326,修改当前寄存器,读写控制模块106在新的软件版本不能在系统正常启动后,修改版本信息寄存模块108的当前寄存器中的设备号和状态值,将设备号修改为版本存储模块101的设备号,将状态值修改为1,然后重新启动系统,让版本加载模块107从版本存储模块101下载版本,执行步骤S312。
步骤S328,更新当前版本寄存器,版本控制模块105用从用户命令传过来的设备号替换版本信息寄存模块108的当前版本寄存器中的设备号,并且将状态值设置为0,执行步骤S312。
步骤S330,结束,系统结束启动操作。
采用本发明所述方法和装置,与现有技术相比,取得了用互相为备份的版本存储模块替换单一存储模块,实现系统软件版本备份和回退的技术进步,达到了软件版本灵活管理的效果,节省了系统升级成本,提高了系统可靠性和市场竞争力等等。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种软件版本升级管理装置,用于对系统的软件版本进行升级管理,其特征在于,包括:
第一版本存储模块和第二版本存储模块,用于存储所述系统的软件版本,所述第一版本存储模块与所述第二版本存储模块互为备份;
存储选择模块,用于选择所述第一版本存储模块及所述第二版本存储模块中的一个参与后续的操作;
存储控制模块,用于控制所述存储选择模块对所述第一版本存储模块及所述第二版本存储模块的选择;
读写控制模块,与所述存储选择模块和所述存储控制模块连接,用于实现数据的读写操作;
版本加载模块,受所述读写控制模块的控制并通过所述读写控制模块从所述第一版本存储模块或所述第二版本存储模块下载所需软件版本;以及
版本信息寄存模块,与所述存储控制模块和所述读写控制模块连接,用于存储所述系统的表示当前软件版本存储位置的设备号和表示版本状态的状态值。
2.根据权利要求1所述的软件版本升级管理装置,其特征在于:
所述版本加载模块是控制所述系统的处理器设备。
3.根据权利要求1所述的软件版本升级管理装置,其特征在于,还包括:
版本控制模块,用于对所述系统进行控制,
所述版本控制模块通过所述读写控制模块选择处于备份状态的所述第一版本存储模块或所述第二版本存储模块,并写入新的软件版本;
所述版本控制模块通过所述读写控制模块修改所述版本信息寄存模块中的所述设备号和所述状态值。
4.根据权利要求3所述的软件版本升级管理装置,其特征在于:
所述第一版本存储模块和所述第二版本存储模块包括永久记忆性存储器,接受所述版本控制模块的读写操作和所述版本加载模块的读操作。
5.根据权利要求3所述的软件版本升级管理装置,其特征在于:
所述存储控制模块根据查询所述版本信息寄存模块返回的内容或者所述读写控制模块接收到的所述版本控制模块的选择控制请求,控制所述存储选择模块选择第一版本存储模块或第二版本存储模块。
6.根据权利要求3所述的软件版本升级管理装置,其特征在于:
所述读写控制模块完成所述版本控制模块、所述版本加载模块、以及所述第一版本存储模块或所述第二版本存储模块之间的数据读写操作转换和数据转发操作,具有以下功能:
实现所述版本控制模块对所述版本信息寄存模块的更新操作;
控制所述版本加载模块的版本下载操作;
通过所述存储控制模块控制所述存储选择模块完成所述版本控制模块对所述第一版本存储模块或所述第二版本存储模块的读写操作;
当所述新的软件版本第一次不能正常启动时,控制所述系统重新启动并将所述系统的软件版本自动回退到原有软件版本。
7.根据权利要求3所述的软件版本升级管理装置,其特征在于:
所述版本信息寄存模块是永久记忆性存储器,包括当前版本寄存器。
8.根据权利要求3所述的软件版本升级管理装置,其特征在于:
所述第一版本存储模块和所述第二版本存储模块是相互独立的存储器、或是一个存储器的相互独立的两个存储空间,
当所述第一版本存储模块和所述第二版本存储模块是所述相互独立的存储器时,所述存储选择模块通过总线选择所述第一版本存储模块或所述第二版本存储模块;当所述第一版本存储模块和所述第二版本存储模块是所述一个存储器的相互独立的两个存储空间时,所述存储选择模块通过地址选择所述第一版本存储模块或所述第二版本存储模块。
9.一种软件版本升级管理方法,用于对系统的软件版本进行升级管理,通过包含有互为备份的第一版本存储模块和第二版本存储模块的软件版本升级管理装置来实现,其特征在于,所述软件版本升级管理方法包括以下步骤:
步骤一,所述软件版本升级管理装置的版本控制模块接收新的软件版本,并将所述新的软件版本写入处于备份状态的所述第一版本存储模块或所述第二版本存储模块中;当写入成功时,更新所述软件版本升级管理装置的版本信息寄存模块中的当前版本寄存器的设备号,使所述设备号指向存有所述新的软件版本的所述第一版本存储模块或所述第二版本存储模块的设备号;
步骤二,所述系统复位重启或断电重启后,所述软件版本升级管理装置的存储控制模块根据所述版本信息寄存模块中的当前版本寄存器的所述设备号,控制所述软件版本升级管理装置的存储选择模块选择存有所述新的软件版本的所述第一版本存储模块或所述第二版本存储模块,同时所述软件版本升级管理装置的读写控制模块控制版本加载模块,让其处于加载等待状态,直到所述存储控制模块完成对存储选择模块的控制;
步骤三,所述读写控制模块无效其对所述版本加载模块的控制,所述版本加载模块开始通过所述读写控制模块从存有所述新的版本的所述第一版本存储模块或所述第二版本存储模块下载软件版本,下载成功后,所述系统继续启动;
步骤四,当所述系统成功启动后,完成一次版本升级;当所述系统没有成功启动时,所述读写控制模块修改所述版本信息寄存模块中的所述当前版本寄存器的设备号和状态值,使所述设备号为存有原有软件版本的所述第一版本存储模块或所述第二存储模块的设备号,然后控制整个所述系统重新启动。
10.根据权利要求9所述的软件版本升级管理方法,其特征在于:
在所述步骤一之前还包括以下过程:
当所述版本控制模块接收到软件版本升级的命令时,首先通过所述读写控制模块查询所述版本信息寄存模块的当前版本寄存器,获得存储当前运行的软件版本的所述第一版本存储模块或者第二版本存储模块的设备号,确认处于所述备份状态的是所述第一版本存储模块还是所述第二版本存储模块。
CNB2007101697821A 2007-11-20 2007-11-20 软件版本升级管理装置和软件版本升级管理方法 Expired - Fee Related CN100517248C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2007101697821A CN100517248C (zh) 2007-11-20 2007-11-20 软件版本升级管理装置和软件版本升级管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2007101697821A CN100517248C (zh) 2007-11-20 2007-11-20 软件版本升级管理装置和软件版本升级管理方法

Publications (2)

Publication Number Publication Date
CN101169749A CN101169749A (zh) 2008-04-30
CN100517248C true CN100517248C (zh) 2009-07-22

Family

ID=39390382

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2007101697821A Expired - Fee Related CN100517248C (zh) 2007-11-20 2007-11-20 软件版本升级管理装置和软件版本升级管理方法

Country Status (1)

Country Link
CN (1) CN100517248C (zh)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8745611B2 (en) * 2008-06-05 2014-06-03 Accenture Global Services Limited Software upgrade analysis system
CN101655802B (zh) * 2009-09-09 2013-02-27 中兴通讯股份有限公司 一种文件的批量下载系统及其方法
CN102622255A (zh) * 2012-03-27 2012-08-01 杭州电子科技大学 路灯控制系统中软件版本升级方法
CN103488492A (zh) * 2012-06-14 2014-01-01 中兴通讯股份有限公司 阅读器设备及其固件升级方法及装置
CN102999365B (zh) * 2012-12-05 2016-08-03 深圳市理邦精密仪器股份有限公司 一种胎儿监护仪软件网络安全升级方法及系统
CN104461595B (zh) * 2013-09-23 2017-11-28 联想(北京)有限公司 应用软件升级回滚方法、装置及电子设备
CN103646077B (zh) * 2013-12-11 2016-03-30 北京控制工程研究所 一种本地工作区与远程数据服务器结合的高效软件数据管理方法
CN103713859B (zh) * 2013-12-30 2015-02-25 税友软件集团股份有限公司 一种移动存储装置及移动存储数据访问方法
CN104503790B (zh) * 2014-12-19 2017-09-29 广东欧珀移动通信有限公司 一种应用版本的管理方法及系统、智能终端
CN106325892A (zh) * 2015-06-15 2017-01-11 中兴通讯股份有限公司 差分回退升级方法及装置
CN106598597A (zh) * 2016-12-14 2017-04-26 普华基础软件股份有限公司 一种电控单元应用软件刷新方法
CN106843951A (zh) * 2017-01-12 2017-06-13 北京珠穆朗玛移动通信有限公司 软件程序的安装处理方法及其移动终端
KR102610730B1 (ko) * 2018-09-05 2023-12-07 현대자동차주식회사 차량의 업데이트 제공 장치 및 컴퓨터 기록 매체
CN111026417A (zh) * 2019-10-24 2020-04-17 深兰科技(上海)有限公司 一种嵌入式设备的升级方法及嵌入式设备
CN112114749B (zh) * 2020-09-04 2022-06-07 苏州浪潮智能科技有限公司 一种bbu软件接口解耦系统及方法
CN112559373B (zh) * 2020-12-24 2022-04-08 郑州信大捷安信息技术股份有限公司 一种软件兼容性管理方法和系统

Also Published As

Publication number Publication date
CN101169749A (zh) 2008-04-30

Similar Documents

Publication Publication Date Title
CN100517248C (zh) 软件版本升级管理装置和软件版本升级管理方法
CN102622280B (zh) 一种基于双文件系统的软件版本升级的控制方法及装置
US7739490B2 (en) Control apparatus, upgrade method and program product of the same
CN100354825C (zh) 一种软件升级及回退方法
US7447811B2 (en) Storage device, storage control firmware activation program exchange method, and program product for activating and exchanging storage control program
CN105808292A (zh) 嵌入式终端设备的固件升级方法
WO1993007568A1 (en) Setting up system configuration in a data processing system
CN102073517A (zh) 一种嵌入式系统的升级、备份方法和装置
CN103593387A (zh) 在多个阶段高效地存储和检索数据和元数据的方法和系统
CN102270144A (zh) 嵌入式网络设备及其更新固件的方法
CN100549959C (zh) 引导程序在线升级方法
JP2008506304A (ja) 無線基地局および無線基地局の運用方法
CN102141921A (zh) 一种终端设备系统升级方法及终端设备
CN110806889B (zh) 一种基于5g的zynq程序远程升级系统及升级方法
CN103713925A (zh) 避免存储阵列在升级过程的业务中断方法和装置
CN113934471A (zh) 计算机系统的基板管理控制器和启动方法
CN110597532A (zh) 一种数据采集模块及其固件升级方法和存储介质
EP0886211A2 (en) Initial program load
CN101330695A (zh) 一种移动终端及其系统升级的方法和装置
JP2002342102A (ja) プログラム更新方法およびプログラム更新方式
CN107436783B (zh) 一种用于移动终端的差分升级方法、存储介质及移动终端
US20050268188A1 (en) Backup method, backup system, disk controller and backup program
CN112363739B (zh) 终端设备的分区镜像在线升级方法、装置、设备及介质
JP2002123398A (ja) 通信装置におけるソフトウェアのバージョンアップ処理装置及び通信装置におけるソフトウェアのバージョンアップ処理方法
CA2037578C (en) Copying method of system data and copying adaptor

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
ASS Succession or assignment of patent right

Owner name: YANG ZHIQUAN

Free format text: FORMER OWNER: ZTE CORPORATION

Effective date: 20150127

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: 518057 SHENZHEN, GUANGDONG PROVINCE TO: 424200 CHENZHOU, HUNAN PROVINCE

TR01 Transfer of patent right

Effective date of registration: 20150127

Address after: 424200 Chenzhou City, Hunan province Yizhang County village Dajing village first groups of villagers

Patentee after: Yang Zhiquan

Address before: 518057 Nanshan District science and Technology Industrial Park, Guangdong high tech Industrial Park, ZTE building

Patentee before: ZTE Corporation

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20090722

Termination date: 20161120

CF01 Termination of patent right due to non-payment of annual fee