多模块软件版本管理系统的制作方法

文档序号:17719488发布日期:2019-05-22 02:03阅读:357来源:国知局
多模块软件版本管理系统的制作方法
本发明属于通信
技术领域
,具体涉及多模块软件版本管理系统。
背景技术
:随着技术的发展,一个产品或系统的复杂度越来越高,有很多产品具有多个模块。比如,一个具有wifi联网的设备,可能需要单独的wifi模块保证网络(数据传输)功能的正常运行,还需要单独的主控模块保证设备内部逻辑的正常,还可能需要单独的音频处理模块提升音质。而这些单独的模块都具有各自内置的软件。如果该产品中的模块软件进行升级后,很多模块的软件版本不能顺利读出显示给用户、技术人员及维修人员,这样用户、技术人员及维修人员不能知道当前模块的软件版本号,为设备的管理带来难度。技术实现要素:针对现有技术中的缺陷,本发明提供一种多模块软件版本管理系统,方便用户管理产品中各个模块的软件版本号。一种多模块软件版本管理系统,包括处理器、输入设备、输出设备和存储器,所述处理器、输入设备、输出设备和存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行以下方法:当接收到待同步模块发起的同步信息时,提取出所述同步信息中的有效数据;所述同步信息由待同步模块在完成软件更新后发起;解析所述有效数据,获得待同步模块的旧版本号和新版本号;如果待同步模块的旧版本号有效,根据所述新版本号对待同步模块的软件版本号进行更新;如果待同步模块的旧版本号无效,生成确认信息发送给待同步模块。优选地,所述同步信息遵从预设的管理协议;所述管理协议包括外部协议首部、管理首部、管理数据部、管理校验部和外部协议尾部;所外部协议首部和外部协议尾部分别包括该多模块软件版本管理系统与待同步模块之间通信协议的首部和尾部;所述管理首部包括标识位、数据长度、类型位和来源标识;所述管理数据部包括旧版本号和/或新版本号;所述管理校验部包括校验和。优选地,所述提取所述同步信息中的有效数据具体包括:去掉所述同步信息中的外部协议首部和外部协议尾部,提取出所述同步信息中的管理首部、管理数据部、管理校验部,作为所述有效数据。优选地,所述解析有效数据,获得待同步模块的旧版本号和新版本号具体包括:解析所述有效数据;如果类型位为请求类型、有效数据中的校验和正确、且所述标识位为有效标识时,根据所述数据长度读取管理数据部的数据,获得旧版本号和新版本号。优选地,所述处理器被配置用于调用所述程序指令,还执行以下方法:如果有效数据中的校验和错误时,生成重发指令,读取有效数据中的来源标识,发送给所述来源标识对应的待同步模块,控制待同步模块重新发起新的同步信息。优选地,所述如果待同步模块的旧版本号有效,根据所述新版本号对待同步模块的软件版本号进行更新具体包括:读取该待同步模块本地存储的版本号,如果本地存储的版本号与所述有效数据的旧版本号一致时,判定待同步模块的旧版本号有效;用新版本号替代本地存储的版本号,并将旧版本号写入缓存中该待同步模块的版本迭代历史链表中。优选地,所述如果待同步模块的旧版本号无效,生成确认信息发送给待同步模块具体包括:如果本地存储的版本号与所述有效数据的旧版本号不一致时,判定待同步模块的旧版本号无效;将本地存储的版本号写入管理数据部,修改类型位为确认类型,根据所述管理协议生成确认信息;读取有效数据中的来源标识,将所述确认信息发送给所述来源标识对应的待同步模块。优选地,所述处理器被配置用于调用所述程序指令,还执行以下方法:根据预设的显示格式显示待同步模块软件版本号更新后的新版本号。优选地,所述预设的显示格式包括各个待同步模块软件版本号更新的更新位。由上述技术方案可知,本发明提供的多模块软件版本管理系统,当待同步模块完成软件更新后,主动将同步信息发送给多模块软件版本管理系统;多模块软件版本管理系统接收到同步信息后,对本地存储的待同步模块的软件版本号进行更新,该系统能够方便用户管理产品中各个模块的软件版本号。附图说明为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍。在所有附图中,类似的元件或部分一般由类似的附图标记标识。附图中,各元件或部分并不一定按照实际的比例绘制。图1为本发明实施例一提供的多模块软件版本管理系统的模块框图。图2为本发明实施例一提供的多模块软件版本管理系统中处理器执行的方法流程图。具体实施方式下面将结合附图对本发明技术方案的实施例进行详细的描述。以下实施例仅用于更加清楚地说明本发明的技术方案,因此只作为示例,而不能以此来限制本发明的保护范围。需要注意的是,除非另有说明,本申请使用的技术术语或者科学术语应当为本发明所属领域技术人员所理解的通常意义。实施例一:一种多模块软件版本管理系统,参见图1,包括处理器801、输入设备802、输出设备803和存储器804,所述处理器801、输入设备802、输出设备803和存储器804通过总线805相互连接,其中,所述存储器801用于存储计算机程序,所述计算机程序包括程序指令,所述处理器801被配置用于调用所述程序指令,参见图2,执行以下方法:s1:当接收到待同步模块发起的同步信息时,提取出所述同步信息中的有效数据;所述同步信息由待同步模块在完成软件更新后发起;具体地,该多模块软件版本管理系统可以加装在具有多个可独立升级模块的产品或软件中,该产品或软件至少设有一个负责与外界通信的通讯模块(如具有网络功能的wifi模块),或者至少有一个负责向用户展示信息的输出模块(如可以显示产品的ui界面的显示屏)。当待同步模块在进行完软件升级后,向多模块软件版本管理系统发起同步信息。多模块软件版本管理系统用于时刻监控与之关联的所有模块的同步信息。s2:解析所述有效数据,获得待同步模块的旧版本号和新版本号;具体地,待同步模块在完成软件升级后,将升级前的旧版本号和升级后的新版本号均发送给多模块软件版本管理系统。s3:如果待同步模块的旧版本号有效,根据所述新版本号对待同步模块的软件版本号进行更新;具体地,如果待同步模块的旧版本号有效,则对多模块软件版本管理系统本地缓存的软件版本进行更新,使得多模块软件版本管理系统能够实时记录各个模块最新的软件版本号。s4:如果待同步模块的旧版本号无效,生成确认信息发送给待同步模块。具体地,如果待同步模块的旧版本号无效,说明该同步信息无效,此时需要待同步模块确认之前发送的同步信息是否正确,所以生成确认信息发送给待同步模块。该多模块软件版本管理系统,当待同步模块完成软件更新后,主动将同步信息发送给多模块软件版本管理系统;多模块软件版本管理系统接收到同步信息后,对本地存储的待同步模块的软件版本号进行更新,该系统能够方便用户管理产品中各个模块的软件版本号。应当理解,在本发明实施例中,所称处理器801可以是中央处理单元(centralprocessingunit,cpu),该处理器还可以是其他通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现成可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。输入设备802可以包括触控板、指纹采传感器(用于采集用户的指纹信息和指纹的方向信息)、麦克风等,输出设备803可以包括显示器(lcd等)、扬声器等。该存储器804可以包括只读存储器和随机存取存储器,并向处理器801提供指令和数据。存储器804的一部分还可以包括非易失性随机存取存储器。例如,存储器804还可以存储设备类型的信息。实施例二:实施例二在实施例一的基础上,还增加了以下内容:所述同步信息遵从预设的管理协议;所述管理协议包括外部协议首部、管理首部、管理数据部、管理校验部和外部协议尾部;所外部协议首部和外部协议尾部分别包括该多模块软件版本管理系统与待同步模块之间通信协议的首部和尾部;所述管理首部包括标识位、数据长度、类型位和来源标识;所述管理数据部包括旧版本号和/或新版本号;所述管理校验部包括校验和。具体地,管理协议可以采用以下形式进行定义:外部协议首部管理首部管理数据部管理校验部外部协议尾部如果多模块软件版本管理系统和待同步模块部署在不同服务器上时,多模块软件版本管理系统和待同步模块就需要通过两者之间约定好的协议进行通信,该协议即为外部协议。外部协议首部即该协议的首部,外部协议尾部即该协议的尾部,外部协议的尾部一般是校验部分。该管理协议利用多模块软件版本管理系统和待同步模块正常通讯的协议来传输有效数据,这样不需要对多模块软件版本管理系统所属产品和待同步模块进行过多的软件方法改进,解决了多模块软件版本管理系统所属产品和待同步模块兼容的问题。管理首部包含:标识位:用于标识该信息用来进行待同步模块的软件版本更新。数据长度:用于标识后续多少位属于管理数据部的数据类型位:用于标识该信息是向多模块软件版本管理系统请求同步待同步模块软件版本的请求信息,还是需要待同步模块确认软件版本的确认信息。来源标识:用于标识待同步模块,例如是待同步模块编号等。管理校验部:用以校验传输过程中是否发生数据的错误、丢包,一般可采用对管理校验部之外的数据求和、取反获得,本协议求和的范围为管理数据部。优选地,所述提取所述同步信息中的有效数据具体包括:去掉所述同步信息中的外部协议首部和外部协议尾部,提取出所述同步信息中的管理首部、管理数据部、管理校验部,作为所述有效数据。具体地,多模块软件版本管理系统在与待同步模块进行通讯时,通过外部协议首部和外部协议尾部截取同步信息。有效数据即为本次同步信息实际传递的数据。优选地,所述解析有效数据,获得待同步模块的旧版本号和新版本号具体包括:解析所述有效数据;如果类型位为请求类型、有效数据中的校验和正确、且所述标识位为有效标识时,根据所述数据长度读取管理数据部的数据,获得旧版本号和新版本号。具体地,类型位为请求类型,说明该信息是待同步模块向多模块软件版本管理系统发出的、用于请求同步待同步模块软件版本的信息。校验和正确说明传输过程中没有发生数据的错误、丢包的现象。标识位为有效标识说明该信息用来进行待同步模块的软件版本更新。此时根据数据长度读取管理数据部相应位数的数据,读取到的数据包含旧版本号和新版本号。优选地,所述处理器被配置用于调用所述程序指令,还执行以下方法:如果有效数据中的校验和错误时,生成重发指令,读取有效数据中的来源标识,发送给所述来源标识对应的待同步模块,控制待同步模块重新发起新的同步信息。具体地,如果有效数据中的校验和错误,说明传输过程中发生数据的错误、丢包的现象,接收到的数据不完整、不准确。此时不处理当前接收到的同步信息,生成重发指令给待同步模块,要求待同步模块重新发起新的同步信息。该系统能够有效地、准确地、完整地提取出同步信息中的有效数据。本发明实施例所提供的系统,为简要描述,实施例部分未提及之处,可参考前述系统实施例中相应内容。实施例三:实施例三在实施例二的基础上,还增加以下内容:所述如果待同步模块的旧版本号有效,根据所述新版本号对待同步模块的软件版本号进行更新具体包括:读取该待同步模块本地存储的版本号,如果本地存储的版本号与所述有效数据的旧版本号一致时,判定待同步模块的旧版本号有效;具体地,如果本地存储的版本号与所述有效数据的旧版本号一致,说明同步信息记录的旧版本号与多模块软件版本管理系统本地存储的版本号是相同的,此时认为待同步模块的旧版本号有效。例如多模块软件版本管理系统中存储的模块1的版本号是1.0,如果同步信息中记录的模块1的旧版本号是1.0,则认为模块1的旧版本号有效。如果同步信息中记录的模块1的旧版本号是2.0,则同步信息中旧版本与缓存的版本号不一致,此时待同步模块的旧版本号无效。如果待同步模块的旧版本号有效,用新版本号替代本地存储的版本号,将本地存储的版本号修改为新版本号,并将旧版本号写入缓存中该待同步模块的版本迭代历史链表中。版本迭代历史链表用于标识该待同步模块的软件更新历史。优选地,所述如果待同步模块的旧版本号无效,生成确认信息发送给待同步模块具体包括:如果本地存储的版本号与所述有效数据的旧版本号不一致时,判定待同步模块的旧版本号无效;将本地存储的版本号写入管理数据部,修改类型位为确认类型,根据所述管理协议生成确认信息;读取有效数据中的来源标识,将所述确认信息发送给所述来源标识对应的待同步模块。如果待同步模块的旧版本号无效,此时需要待同步模块再次确认下之前发送的同步信息是否正确。此时将本地存储的版本号写入管理数据部,用于告诉待同步模块,多模块软件版本管理系统缓存的版本号。需要待同步模块再次确认之前同步信息中旧版本号是否正确。待同步模块在接收到确定信息时,查阅是否出现版本同步遗漏的情况,并根据查阅结果再次向多模块软件版本管理系统发送同步信息。本发明实施例所提供的系统,为简要描述,实施例部分未提及之处,可参考前述系统实施例中相应内容。实施例四:实施例四在其他实施例的基础上,还增加以下内容:所述处理器被配置用于调用所述程序指令,还执行以下方法:根据预设的显示格式显示待同步模块软件版本号更新后的新版本号。具体地,多模块软件版本管理系统用于显示待同步模块新版本号。显示格式用于约定向用户展示的方式。优选地,所述预设的显示格式包括各个待同步模块软件版本号更新的更新位。具体地,显示格式可以设定为:模块1更新位+模块2更新位+…+模块n更新位;例如多模块软件版本管理系统存储的最新版本号为:模块1:1.0.2.3;模块2:kb_2.03.6;假设显示格式设定为模块1仅更新版本号后面两位,模块2版本仅更新版本号最后一位。则在显示新版本号时,只显示模块1后面两位(即2.3)以及模块2后面一位(即6)。两个模块的版本号可以通过0进行划分,那么多模块软件版本管理系统显示为2.3.0.6,即模块1后面两位+0+模块2后面一位。由于有些版本号太长,如果要完整地显示出所有模块的版本号,一方面增加了显示内容,另一方面数据冗长,不方便用户查看。该系统通过上述显示方式,能够直接显示出所有关联模块的版本号,简洁直观。本发明实施例所提供的系统,为简要描述,实施例部分未提及之处,可参考前述系统实施例中相应内容。最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围,其均应涵盖在本发明的权利要求和说明书的范围当中。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1