一种网络计算机的并行升级方法及其应用系统 【技术领域】
本发明涉及软件版本升级技术,尤其涉及一种多网络计算机并行软件升级的方法。
背景技术
网络计算机(Network Computer,NC)是一种专用于网络环境下的客户机。它没有硬盘、软盘、光驱等外部存储器,其应用程序和数据可以存储在和它连接的服务器上,通过服务器实现对自身的管理。网络计算机和普通计算机相比,由于它没有外部存储器,从而也不存在普通计算机中通过外部存储器泄露内部秘密的安全问题,因此基于网络计算机比普通计算机价格低、安全可靠且容易管理等特点,它越来越受到组建内部网的政府机关、学校和企业的青睐。
和普通计算机一样,保证网络计算机的正常启动也许BIOS(Basic InputOutput System基本输入输出系统)或者Bootloader和操作系统。以前网络计算机的BIOS存储在主板的闪存(Flash)中,而操作系统可以存储在和网络计算机相连的服务器上,每一次开机时直接从服务器下载。但是,将操作系统直接从服务器下载至网络计算机上使用,启动速度非常慢。因此现在操作系统一般会放置在其板载的DOC(DiskOnChip)或DOM(DiskOnModule)等存储设备上。随着市场上推出的DOC和DOM的存储容量不断增加,现在不仅网络计算机的操作系统存储在DOC或DOM等存储设备中,而且面向用户的一些应用程序等数据也可以存储在DOC或DOM等存储设备中,从而使得网络计算机无需访问服务器就能得到这些数据,提高网络计算机的运行速度。
网络计算机是一种嵌入式设备,它面向行业用户,但行业用户的需求是千差万别的,导致网络计算机在出厂前无法预先知道它的用户需要使用什么硬件功能(如USB、串口等)和软件而事先采用烧录设备将操作系统、应用软件等数据烧录在DOC或DOM等存储设备中。此外,当网络计算机到了用户手中时,首先需将用户将使用的系统软件和应用软件等数据先烧录到DOC或DOM等存储设备中,但是目前软件(尤其是应用软件)升级的速度非常块,如何升级网络计算机的DOC或DOM等存储设备中的数据,直接影响网络计算机的应用,从而影响到网络计算机是否能得到大规模应用。
目前采用的一种软件数据升级方法是将升级数据和程序上传到与网络计算机连接的服务器,每一台网络计算机的DOC或DOM等存储设备将升级数据烧录到DOC或DOM存储设备中。还有一种软件数据升级方法是进一步的比较当前这一台网络计算机的软件版本是否和服务器上的软件版本一样,如果一样则不升级,避免不必要的烧录从而延长存储设备的使用寿命。由于网络计算机一般是团体用户在使用,各台网络计算机上的软件版本一般相同,升级时是多台网络计算机一起升级。现有的升级方法要求管理员到每一台网络计算机跟前做相同操作的升级,费时费力,效率非常低。
【发明内容】
本发明要解决的技术问题是提供一种针对网络计算机的并行快速升级方法,以解决现有网络计算机升级时间长、升级工作重复效率低的问题。
为达到上述目的,本发明提供一种网络计算机并行升级方法,用于包括多台计算机组成的网络计算机端和服务器主机端的系统,其特征在于,包括:
网络计算机端的httpd服务的运行步骤,用于启动需要升级的各个网络计算机,并确认httpd服务处于工作状态,以使网络计算机端通过http协议与服务器主机端之间进行数据通信;
服务器主机端的升级控制程序的运行步骤,用于启动服务器主机端的升级控制程序,对局域网内的多台网络计算机进行并行升级。
上述网络计算机并行升级方法,其特征在于,所述服务器主机端的升级控制程序的运行步骤进一步包括:
步骤S201,服务器主机端通过http协议访问所述网络计算机,收集各个网络计算机的软件版本号与要升级的软件版本号进行比较,对版本号不同的网络计算机进行升级;
步骤S202,分别为待升级的各个网络计算机启动一个升级控制程序中的升级线程,多个线程并发对相应的网络计算机进行软件更新升级。
上述网络计算机并行升级方法,其特征在于,所述步骤S201进一步包括:
步骤S211,服务器主机端的升级控制程序搜索局域网内在线网络计算机或者按照设定IP范围搜索在线网络计算机,并显示IP信息在服务器主机的管理界面;
步骤S212,通过该服务器主机的管理界面根据需要选择待升级的网络计算机;
步骤S213,该服务器主机端通过http协议访问选中地网络计算机,收集该网络计算机的软件版本号并保存在服务器主机端;
步骤S214,通过该服务器主机端升级程序界面选择要升级的软件版本,并配置升级信息;
步骤S215,比较升级的软件版本号与各网络计算机的软件版本号,对版本号不相同的网络计算机进行升级。
上述网络计算机并行升级方法,其特征在于,所述步骤S202进一步包括:
步骤S216,该服务器主机端为各个待升级的网络计算机启动一个升级控制程序中相应的升级线程,通过http协议收集待升级网络计算机的配置信息并保存到该服务器主机端;
步骤S217,多个升级线程并发进行软件加载更新升级;
步骤S218,升级完成后,服务器主机端通过http协议将保存的网络计算机配置信息还原到对应的网络计算机中。
上述网络计算机并行升级方法,其特征在于,所述步骤S214中,所述升级信息包括升级类型和升级包信息。
上述网络计算机并行升级方法,其特征在于,
所述升级类型进一步包括:BIOS升级、DOC升级、BIOS和DOC都升级;
所述升级包信息包括:升级包所在的FTP服务器地址及端口、登录服务器时使用的用户名及密码、升级包的路径。
上述网络计算机并行升级方法,其特征在于,所述步骤S216中,所述配置信息包括连接服务器信息、连接用户信息和连接设备信息。
上述网络计算机并行升级方法,其特征在于,
所述连接服务器信息包括:服务器的IP地址、主机名和连接的域名;
所述连接用户信息包括:连接的用户名和密码、运行程序和工作目录;
所述连接设备信息包括:连接使用的串口、USB、打印机及声音信息。
上述网络计算机并行升级方法,其特征在于,所述步骤S217进一步包括:
步骤S701,升级线程将升级包信息和升级类型通过http协议传输给相应网络计算机;
步骤S702,该网络计算机通过FTP协议从FTP服务器上下载软件升级包,并按照指定的升级类型进行更新升级;
步骤S703,升级完成,该网络计算机将更新升级结果反馈给该升级线程。
进一步的,本发明还提供了一种实现上述网络计算机并行升级方法的系统,其特征在于,包括:
一个服务器主机端,包括一升级控制模块,用于通过http协议与多台网络计算机进行数据通信,控制局域网内的多台网络计算机并行升级;
网络计算机端,由多台网络计算机构成,用于多台网络连接的计算机在局域网内网络连接正常情况下,通过http协议与所述服务器主机端进行数据通信,受控于该升级控制模块进行并行升级。
与现有技术相比,本发明提供的网络计算机的并行升级方法及其应用系统,具有如下有益效果:
(1)可以自由选择进行单个网络计算机升级和局域网内多台网络计算机并行统一升级;
(2)NC和服务器主机端采用http协议进行少量数据通信,该方式对于只含少量数据的配置信息和升级信息的传输具有快速性和便捷性;
(3)对于升级包这样的大容量数据块,采用ftp协议传输,可以达到传输稳定可靠的效果;
(4)服务器主机端采用多线程技术可支持多NC同时任务请求和并行升级处理。
【附图说明】
图1是网络计算机并行升级方法的流程图;
图2为本发明网络计算机并行升级方法的具体实施例流程图;
图3为图2中步骤S217的具体实施流程图。
【具体实施方式】
本发明提供的网络计算机并行升级方法,用于包括多台网络计算机组成的网络计算机端和一台服务器主机端的系统,包括两个步骤:
网络计算机端的httpd服务的运行步骤,在进行升级之前,首先将需要升级的网络计算机启动,保持网络正常连接,并确认httpd服务处于工作状态,以使网络计算机端通过http协议与服务器主机端之间进行数据通信;
服务器主机端的升级控制程序的运行步骤,接着启动服务器主机端的升级控制程序,对局域网内所有网络计算机进行并行、快速的更新升级。
参考图1,上述服务机主机端的升级控制程序的运行步骤,进一步包括:
步骤S201,服务器主机端通过http协议访问网络计算机,收集各个网络计算机的软件版本号与要升级的软件版本号进行比较,对版本号不同的网络计算机进行升级;
步骤S202,分别为待升级的各个网络计算机启动一个升级控制程序中的升级线程,多个线程并发对相应的网络计算机进行软件更新升级。
参考图2,以实施例方式进一步详细说明本发明升级方法的实施流程。具体的处理流程如下:
其中上述步骤S201进一步包括:
步骤S211,服务器主机端的升级控制程序扫描所在局域网内所有在线的NC,也可以设定IP范围搜索在线NC,并将在线NC的IP信息显示在管理界面中。
步骤S202,通过该服务器主机的管理界面根据需要选择待升级的NC。
步骤S213,服务器主机端的升级控制程序通过http协议访问选中的各个NC,与之握手建立连接,接着收集各个NC的软件版本号并保存在服务器端。
步骤S214,通过服务器主机端升级控制程序界面选择要升级的软件版本,并配置升级信息。
其中,升级信息包括升级类型和升级包信息,升级类型是指BIOS升级、DOC升级还是BIOS和DOC都升级;升级包信息包括:升级包所在的FTP服务器地址及端口、登录服务器时使用的用户名及密码、升级包的路径。
步骤S215,服务器主机端将选中的升级软件版本号与已收集保存的各个NC的运行软件版本号进行比较。如果版本号相同,说明NC上运行的软件版本已经是更新过的版本,无需再升级;如果二者版本号不同则针对每个NC启动一个升级控制程序中的升级线程,用于对各个NC的软件版本进行升级。
上述步骤S202进一步包括:
步骤S216,针对软件版本号与要升级的软件版本号不同的每个NC启动对应的升级线程,然后各个升级线程通过http协议与NC通信握手,接着收集需要升级NC的配置信息,并且保存到服务器端。
其中,配置信息包括连接服务器信息、连接用户信息及连接设备信息。其中,连接服务器信息进一步包括:服务器的IP地址、主机名和连接的域名;连接用户信息进一步包括:连接的用户名和密码、运行程序和工作目录,连接设备信息进一步包括:连接使用的串口、USB、打印机及声音信息。
步骤S217,为各个需要升级NC启动的各个相应升级线程,多个升级线程并发进行软件加载更新升级。参考图3,该步骤S217进一步包括:步骤S701,升级线程将升级包信息和升级类型通过http协议传输给NC;步骤S702,NC通过高效可靠的FTP协议从FTP服务器上下载软件升级包,并按照指定的升级类型进行更新升级;步骤S703,将更新升级结果反馈给升级线程。
步骤S218,各个NC软件版本升级完成后,服务器端升级控制程序对应的升级线程将原先保存的NC配置信息通过http协议传输给对应NC,并将其配置到NC中去,使得用户可以在新的软件版本上继续使用原来的配置信息。
进一步的,本发明还提供一种上述网络计算机升级方法的应用系统,参考图4,该系统包括:一个服务器主机端10和多台网络计算机构成的网络计算机端20,其中,服务机主机端10包括一升级控制模块101,用于通过http协议与多台网络计算机进行数据通信,控制局域网内的多台网络计算机1、2、...n并行升级;多台网络连接的计算机1、2、...n在局域网内网络连接正常情况下,通过http协议与服务器主机端进行数据通信,受控于该升级控制模块101进行并行升级。
虽然本发明已以较佳实施例揭露如上,然其并非用以限定本发明,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。