本发明涉及物联网技术领域,尤其涉及一种物联网操作系统在线升级方法。
背景技术:
目前主流的操作系统升级方法大致有两种:一种是桌面系统中常用的以单个独立软件包为基本单位的升级方法,用于可以自由选择欲更新的某一个独立软件包。桌面系统的以单个独立软件包为基本单位的系统升级方法升级灵活度较高,用户可以根据实际需求选择需要的软件包进行升级,而不必为不需要的升级软件包买单,降低了用户的操作系统使用成本。但如果用户强行安装与操作系统版本冲突的某一独立软件包,可能会导致操作系统内所有安装的软件与操作系统本身的依赖关系破裂,或将影响操作系统的稳定性,甚至可能导致系统崩溃。
另一种现有的升级方法是整体升级方法,在该方法中,操作系统将软件分为应用软件和系统组件,应用软件支持用户独立升级,但系统组件必须采用整体升级的方法。由于该方法需要一次性下载大容量的系统组件安装包,而下载下来的系统组件安装包中可能存在该操作系统不需要升级的系统组件,不仅浪费了操作系统的存储空间,而且延长了系统的升级时间。如果将上述两种系统升级方法应用于物联网操作系统,将影响物联网操作系统的运行稳定性和系统升级负担。
技术实现要素:
鉴于上述存在的技术问题,本发明的目的在于提供一种物联网操作系统在线升级方法,以解决上述技术问题。
本发明解决其技术问题采取的技术方案是,提供一种物联网操作系统在线升级方法,通过一在线升级系统实现,所述在线升级系统包括:
一运行于物联网设备的升级客户端,所述升级客户端用于向一升级服务器发送或接收系统升级请求,并用于从所述升级服务器处下载系统升级包并输出;
一运行于所述物联网设备的升级包制作工具,通信连接所述升级客户端,用于转换于所述升级客户端处接收的所述系统升级包的格式并重新制作形成新的升级包;
一升级服务器,通信连接所述升级客户端,用于为所述升级客户端提供所述系统升级包;
所述在线升级方法包括如下步骤:
步骤s1,所述升级客户端向所述升级服务器发送一系统升级请求;
步骤s2,所述升级服务器根据接收到的所述升级请求向所述升级客户端提供所述系统升级包的列表清单;
步骤s3,所述升级客户端根据所述物联网设备列表清单从所述升级服务器中下载相应的所述系统升级包;
步骤s4,所述升级包制作工具将所述系统升级包的格式转换为可供所述物联网设备直接执行安装的格式并形成升级安装包;
步骤s5,所述物联网设备执行安装所述步骤s4形成的所述升级安装包,完成系统更新。
作为本发明的一种优选方案,所述步骤s2中具体包括:
步骤s21,所述升级服务器接收所述升级请求;
步骤s22,所述升级服务器根据接收到的所述升级请求判断是否存在待更新的所述系统升级包,若存在则向所述升级客户端提供所述系统升级包的列表清单并转入步骤s3,若不存在,则向所述升级客户端发送不予升级的提示信号并退出流程。
作为本发明的一种优选方案,所述步骤s4中,所述升级包制作工具转换所述系统升级包之前,先判断所述系统升级包是否可供所述物联网设备直接执行安装,
若是,则所述物联网设备直接安装所述系统升级包,并退出流程;
若否,则将所述系统升级包的格式转换为可供所述物联网设备直接执行安装的格式并形成所述升级安装包。
作为本发明的一种优选方案,所述升级服务器为web服务器。
作为本发明的一种优选方案,所述系统升级包中内容包括所述系统升级包基本信息、所述系统升级包的升级文件以及权限文件,所述权限文件中记载有允许升级的物联网设备对应的网络地址列表。
作为本发明的一种优选方案,所述步骤s3中,所述升级客户端下载所述所述系统升级包之前先判断所述物联网设备是否具备升级权限,如所述物联网设备不具备所述升级权限则退出流程。
作为本发明的一种优选方案,所述升级客户端判断所述物联网设备是否具备所述升级权限的方法为,
在所述系统升级包中提取所述权限文件,在所述权限文件中的所述网络地址列表中查找比对所述物联网设备对应的网络地址;
若比对成功,则所述物联网设备具有所述升级权限,否则所述物联网设备不具有所述升级权限。
作为本发明的一种优选方案,所述升级客户端包括第一数据提取单元,用于提取所述系统升级包中的所述权限文件。
作为本发明的一种优选方案,所述升级包制作工具内部包括:
第二数据提取单元,用于提取所述系统升级包中的所述系统升级包基本信息并输出;
格式转换单元,用于将所述系统升级包的格式转换为支持所述物联网设备执行安装的格式文件并输出;
压缩单元,连接所述格式转换单元,用于对所述格式文件进行压缩处理;
封装单元,连接所述压缩单元,用于对所述格式文件进行重新封装形成所述升级安装包,所述升级安装包中包括检验信息;
检验单元,分别连接所述封装单元和所述第二数据提取单元,用于比对所述升级安装包中的所述检验信息内容是否与所述第二数据提取单元提取的所述系统升级包基本信息内容一致;
若一致,则所述升级安装包制作工具将制作形成的所述升级安装包提供给所述物联网设备进行更新升级;
若不一致,则所述物联网设备不执行升级操作。
作为本发明的一种优选方案,所述系统升级包中的所述系统升级包基本信息内容包括:
第一字段,用于表示所述系统升级包在所述升级服务器上的地址信息;
第二字段,用于表示所述系统升级包的更新类型;
第三字段,用于表示所述系统升级包针对的所述物联网设备的架构信息;
第四字段,用于表示所述系统升级包的发布日期;
第五字段,用于描述所述系统升级包的更新内容;
第六字段,用于表示更新所述系统升级包后解决的具体问题;
第七字段,用于表示更新所述系统升级包后,所述物联网设备是否需要重启。
与现有技术相比,本发明的有益效果是,本发明提供的物联网操作系统在线升级方法,可基于物联网设备自身的升级权限,从升级服务器中下载需要的系统升级包进行升级,提升了物联网操作系统升级的灵活性,降低了物联网操作系统的升级负担,提升了系统运行的稳定性。
附图说明
图1是本发明实施例提供的物联网操作系统在线升级方法流程图;
图2是本发明实施例提供的物联网操作系统在线升级方法中的所述步骤s2的实现流程图;
图3是用于实现本发明实施例提供的物联网操作系统在线升级方法的在线升级系统的结构示意图;
图4是用于实现本发明实施例提供的物联网操作系统在线升级方法的在线升级系统中的所述升级客户端的内部结构图;
图5是用于实现本发明实施例提供的物联网操作系统在线升级方法的在线升级系统中的所述升级包制作工具的内部结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
下面结合附图和具体实施例对本发明作进一步说明,但不作为本发明的限定。
本发明实施例提供的物联网操作系统在线升级方法,通过一在线升级系统实现,请参照图3,在线升级系统100包括:
一运行于物联网设备的升级客户端1,升级客户端1用于向一升级服务器3发送或接收系统升级请求,并用于从升级服务器3处下载系统升级包并输出;
一运行于物联网设备的升级包制作工具2,通信连接升级客户端1,用于转换于升级客户端1处接收的系统升级包的格式并重新制作形成新的升级包;
一升级服务器3,通信连接升级客户端1,用于为升级客户端1提供系统升级包;
请参照图1,在线升级方法包括如下步骤:
步骤s1,升级客户端1向升级服务器3发送一系统升级请求;
步骤s2,升级服务器3根据接收到的升级请求向升级客户端提1供系统升级包的列表清单;
步骤s3,升级客户端1根据物联网操作系统设备的列表清单从升级服务器3中下载相应的系统升级包;
步骤s3,升级包制作工具2将系统升级包的格式转换为可供物联网设备直接执行安装的格式并形成升级安装包;
步骤s5,物联网设备执行安装步骤s4形成的升级安装包,完成系统更新。
请参照图2,步骤s2中具体包括:
步骤s21,升级服务器3接收升级请求;
步骤s22,升级服务器3根据接收到的升级请求判断是否存在待更新的系统升级包,若存在则向升级客户端1提供系统升级包的列表清单并转入步骤s3,若不存在,则向升级客户端1发送不予升级的提示信号并退出流程。
步骤s4中,升级包制作工具2转换系统升级包之前,先判断系统升级包是否可供物联网设备直接执行安装,
若是,则物联网设备直接安装系统升级包,并退出流程;
若否,则将系统升级包的格式转换为可供物联网设备直接执行安装的格式并形成升级安装包。
于本实施例的一种优选方案中,升级服务器3为web服务器,web服务器优选为阿帕奇(apache)。
系统升级包中内容包括系统升级包基本信息、系统升级包的升级文件以及权限文件,权限文件中记载有允许升级的物联网设备对应的网络地址列表。
步骤s3中,升级客户端1下载系统升级包之前先判断物联网设备是否具备升级权限,如物联网设备不具备升级权限则退出流程。
升级客户端1判断物联网设备是否具备升级权限的方法为,
在系统升级包中提取权限文件,在权限文件中的网络地址列表中查找比对物联网设备对应的网络地址;
若比对成功,则物联网设备具有升级权限,否则物联网设备不具有升级权限。
系统升级包基本信息内容具体包括:
第一字段,用于表示系统升级包在升级服务器3上的地址信息;
第二字段,用于表示系统升级包的更新类型;
第三字段,用于表示系统升级包针对的物联网设备的架构信息;
第四字段,用于表示系统升级包的发布日期;
第五字段,用于描述系统升级包的更新内容;
第六字段,用于表示更新系统升级包后解决的具体问题;
第七字段,用于表示更新系统升级包后,物联网设备是否需要重启。
请参照图4,升级客户端1包括第一数据提取单元11,用于提取系统升级包中的权限文件。
请参照图5,升级包制作工具2内部包括:
第二数据提取单元21,用于提取系统升级包中的系统升级包基本信息并输出;
格式转换单元22,用于将系统升级包的格式转换为支持物联网设备直接执行安装的格式文件并输出;
压缩单元23,连接格式转换单元22,用于对格式文件进行压缩处理;压缩处理的方法优选为lzma压缩方法,lzma压缩方法为现有技术,在此不作详细阐述;
封装单元24,连接压缩单元23,用于对格式文件进行重新封装形成升级安装包,升级安装包中包括检验信息;
检验单元25,分别连接封装单元24和第二数据提取单元21,用于比对升级安装包中的检验信息内容是否与第二数据提取单元21提取的系统升级包基本信息内容一致;
若一致,则升级包制作工具2将制作形成的升级安装包提供给物联网设备进行更新升级;
若不一致,则物联网设备不执行升级操作。
综上所述,本发明提供的物联网操作系统在线升级方法,可基于物联网设备自身的升级权限,从升级服务器3中下载需要的系统升级包进行升级,提升了物联网操作系统升级的灵活性,降低了物联网操作系统的升级负担,提升了系统运行的稳定性。
以上所述仅为本发明较佳的实施例,并非因此限制本发明的实施方式及保护范围,对于本领域技术人员而言,应当能够意识到凡运用本发明说明书及图示内容所作出的等同替换和显而易见的变化所得到的方案,均应当包含在本发明的保护范围内。