发明内容
本发明所要解决的技术问题是提供一种嵌入式分布系统的版本信息处理方法,解决现有技术将软件版本信息与控制信息放在同一数据库或文件中,可靠性不强和扩展性不好的技术问题。
为达到上述目的,本发明提供了一种嵌入式分布系统的版本信息处理方法,其特点在于,将控制单板和受控单板的版本控制信息及版本描述信息存储到所述控制单板的存储介质上,并通过将所述版本控制信息和所述版本描述信息分别存储,从而在版本升级中只需维护所述版本控制信息,在版本发布中发布的软件版本只需带有所述版本描述信息。
上述的方法,其特点在于,所述版本控制信息记录有软件版本和物理单板的对应关系以及启动参数信息;所述版本描述信息,是软件版本自身属性的说明,用来确定各个软件类型的版本文件的信息。
上述的方法,其特点在于,进一步包括如下步骤:
步骤一、将形成的所述版本控制信息和所述版本描述信息分别存储到所述控制单板的存储介质上;
步骤二、根据所述版本控制信息和所述版本描述信息,进行软件版本的分发配置;
步骤三、进行软件版本的激活;
步骤四、在单板复位后,根据所述版本控制信息和所述版本描述信息,进行版本的加载处理。
上述的方法,其特点在于,在所述步骤一中,所述版本控制信息在单板出厂首次下载软件版本时,由引导程序创建,并存储在所述主控单板的所述存储介质上;所述版本描述信息由所述主控单板上的版本管理进程根据接收到的软件版本创建。
上述的方法,其特点在于,所述步骤二包括:在所述软件版本分发完成后,根据所述版本控制信息,读出单板正在运行版本的版本标志,取得该单板的备用版本号;查找该备用版本号在所述版本描述信息中对应的记录,修改该记录从而将已分发的所述软件版本作为备用版本。
上述的方法,其特点在于,所述步骤三包括:操作维护中心向所述主控单板发送激活命令,所述主控单板根据所述激活命令中的板类型、版本号来查找到对应的版本控制信息,并将所述版本控制信息中的备用版本项设置为激活,同时在所述版本描述信息中将备用版本的信息和主用版本的信息进行交换。
上述的方法,其特点在于,所述步骤四中具有一主控单板加载流程,包括:主控单板引导程序读取本板的版本控制信息,根据所述版本控制信息中的激活标志,在所述版本描述信息中查找到对应的软件版本的名称,从所述存储介质上读取对应的版本文件,加载所述软件版本,在完成引导后将控制权交给加载的所述软件版本,主控单板运行正常后修改相应的版本控制信息,将当前加载的版本设置为运行版本。
上述的方法,其特点在于,所述步骤四中具有一受控单板加载流程,包括:受控单板复位后,受控单板引导程序向主控单板请求版本;主控单板收到请求后,查找对应所述受控单板的版本控制信息的配置记录;根据该记录在对应的版本描述信息中找到软件版本的文件名,向所述受控单板发送所述软件版本;受控单板引导程序收到所述软件版本后,运行所述软件版本,然后将控制权交给加载的所述软件版本。
上述的方法,其特点在于,所述版本控制信息包括有单板正在运行版本标志和激活标志。
上述的方法,其特点在于,所述版本描述信息包括有版本文件的类型、文件名、文件大小、软件版本号、是否主用版本标志和/或创建的时间。
本发明的技术效果在于:
本发明根据通讯系统的单板软件众多,类型复杂的状况,采取将版本的控制信息与版本软件自身的描述信息进行分离的方法,在进行版本管理时,只需要维护控制信息即可方便实现高效可靠的版本管理。并具有如下效果:
1)升级版本,只需要维护版本控制信息即可;
2)版本软件的发布更为方便,不需要在版本软件中增加控制信息。本发明的方法采用版本控制信息与软件版本信息相分离的方法,实现了高效可靠的系统软件版本升级与维护。
下面结合附图进一步详细说明本发明的具体实施例。
具体实施方式
图5是本发明方法的步骤流程图,本发明提出的版本控制信息与版本信息分离的方法主要包括以下步骤:
步骤501、形成版本控制信息和版本自身描述信息放到控制单板存储介质上;其中:
所述版本控制信息:用于记录存储软件版本和物理单板的对应关系以及启动参数信息。如:单板正在运行版本标志,激活标志等等。
所述版本自身描述信息,即版本信息,是软件版本自身属性的说明,用来确定各个软件类型的版本文件的信息。如:类型,文件名,文件大小,软件版本号,创建的时间,是否主用版本标志等等。
所述控制单板,即主控单板,为某个子系统下的通信控制单板,一般有存储介质。受控单板,指的是在某个子系统下的非控制单板,其单板软件版本存放在主控单板上。
版本控制信息:在单板出厂首次下载软件版本时,由BOOT引导程序创建,并存储在主控单板存储器下。
版本信息则由主控单板上的版本管理的代理创建。控制单板版本管理进程根据接收到的软件版本,形成版本信息。
步骤502、根据版本信息和版本控制信息,进行软件版本的分发配置。具体包括:版本分发完成后,根据版本控制信息,读出正在运行版本标志,取得备用版本号;查找其在版本信息中对应的记录,将新的版本信息填入该记录项,并设置为备用版本,同时删除原有的备用软件版本;最后更新控制信息的备用版本记录。
步骤503、进行软件版本的激活;具体包括:OMC(操作维护中心)向主控单板发送激活命令,主控单板根据板类型,版本号查找到对应板类型的版本控制信息,将备用版本项设置为激活,同时在版本信息中将备用版本和主用版本信息交换。
步骤504、单板复位后,根据版本信息和版本控制信息,进行版本的加载处理;具体包括:
主控单板加载流程:单板BOOT引导程序读取本板的版本控制信息,根据激活标志,在版本信息中查找到对应软件名称,从存储器上读取版本文件,加载相应的软件版本。在完成引导后将控制权交给加载的软件版本,单板运行正常后修改相应的控制信息,将当前加载的版本设置为运行版本。
受控单板加载流程:受控单板复位后,BOOT引导程序向主控单板请求版本;主控单板收到请求后,查找相应的受控板类型的受控配置信息的配置记录;根据此记录在版本信息中找到对应的版本文件名,向受控单板发送软件版本。受控单板BOOT引导程序收到软件版本完成后,运行该版本,将控制权交给应用程序。
图1是本发明方法主控板上的版本信息目录结构图,如图所示,主控单板110上存放主控单板自身的版本软件111、版本启用信息文件112、113和版本信息文件114。受控单板上没有版本存储介质,主控板上按照受控板类型,分目录存放各种受控板本。每个受控单板目录下的一个板类型120中存储有受控单板软件121和受控配置信息文件122。
版本信息文件,用于存储版本信息记录中的本板的软件版本。包括(CPU版本,FPGA版本)版本号,版本角色(可配,默认,备用),版本长度,创建时间等。
版本控制信息文件,用来配置主控单板启动哪一个软件版本。包括运行版本序号,激活标志,尝试运行标志,验证运行标志。主要有CPU启动信息文件,单板配置信息文件等。
受控单板的配置信息,指定同种类型不同位置单板运行不同的版本。信息文件的一条记录对应一个物理地址的单板。包括验证CPU版本号,验证FPGA版本号,激活CPU版本号,激活FPGA版本号,本板物理地址,硬件版本号等。
控制信息与版本信息分离的版本处理方法,包括以下处理过程和功能:
1.版本软件的分发配置
如图2,根据OMC人机界面命令,如果分发的是主控版本软件,则目标主控板接收版本后,存放到本板目录下,并找到主控板版本信息文件,增加一条记录,将新的版本记录中的版本角色设置为备用版本。如果分发的是受控版本,则目标主控单板根据受控板类型查找对应目录,更改对应的受控板版本信息文件,用新的版本软件记录替换旧的备用版本记录。
具体步骤包括:
步骤201,根据OMC人机界面命令进行版本分发;
步骤202,主控板接收软件版本;
步骤203,判断所接收到的软件版本是否为主控板的软件版本,是则执行步骤204,否则执行步骤207;
步骤204,在主控板目录下查找是否有对应的版本信息文件,是则执行步骤206,否则执行步骤205;
步骤205,创建对应的版本信息文件;
步骤206,更新该对应的版本信息文件,将更新的软件版本替换原有的备用版本,从而更新的软件版本作为了备用版本,结束该分发配置流程;
步骤207,查找对应受控板目录下是否有对应的版本信息文件,是则执行步骤209,否则执行步骤208;
步骤208,创建对应的版本信息文件;
步骤209,根据版本类型查找对应的受控单板目录,更新对应的受控单板版本信息文件,将新版本设置为待用版本。
2.版本软件的激活
根据OMC人机界面命令,根据相应单板,在主控单板上按照板类型查找相应目录下的版本控制信息文件,更新控制信息文件的主用版本和备用版本项,将备用版本对应的记录设置为激活标志。
3.受控单板的配置
根据OMC人机界面命令,根据相应单板,在主控单板上按照板类型查找相应目录下的受控单板配置信息文件,更新配置记录中的激活版本号和激活配置标志项。将备用版本转为默认版本。
4.单板上电加载
如图3,如果是主控单板,上电后,引导程序根据自身存储介质上的版本控制信息文件和版本信息文件中的版本信息,引导要启动的软件版本。
主控单板版本软件加载流程具体包括:
步骤301,单板复位上电;
步骤302,BOOT读取CPU启动信息文件,根据激活启用版本项,引导相应的主用软件版本;
步骤303,判断单板是否正常启动,是则执行步骤305,否则执行步骤304;
步骤304,BOOT读取启动信息文件并设置相应标志位,引导备用版本启动;
步骤305,将控制权交给应用程序。
如图4,受控单板版本软件加载流程具体包括:步骤401,上电后,BOOT引导程序向主控单板发出版本请求;步骤402,主控单板根据板类型查找对应受控板目录下的受控板配置信息文件;步骤403,主控单板再根据受控板物理地址查找对应配置记录将相应的启用受控版本发送给受控单板。步骤404,受控单板BOOT接收完软件版本后,将控制权交给应用程序。
5.版本的查询。版本查询通过人机命令查询单板软件版本信息,可以激活相应的版本,方便系统的维护。分为存储版本和运行版本的查询。
存储版本的查询,根据要查询的板类型,在相应的主控制点的控制信息目录下,查找版本信息文件,读出所有的存储版本信息,将结果返回OMC人机界面。
运行版本的查询,根据要查询的板类型,在相应的主控板上的控制信息目录下,查找版本控制信息文件,将结果返回OMC人机界面。
本发明提出了控制信息与软件版本信息分离方法。控制信息和版本信息的存储可以有多种实现方式,本发明采用文件系统的办法,还可以采用别的实现方法,例如数据库的记录方式,只要该方法能有效实现,这都不违背本发明的描述。
总之,本发明提出的控制信息与版本软件分离的版本处理方法,能高效简捷可靠的实现版本管理,方便通讯系统版本的发布和升级维护。
以上所述仅为本发明的较佳实施例,并非用来限定本发明的实施范围;凡是依本发明所作的等效变化与修改,都被本发明的专利范围所涵盖。