基于Windows系统的固态硬盘固件批量升级方法和装置与流程

文档序号:21100015发布日期:2020-06-16 20:42阅读:302来源:国知局
技术简介:
本专利针对传统固态硬盘固件升级需人工干预效率低的问题,提出通过控制机批量推送含自动化脚本的升级工具,实现测试机自动执行升级、休眠及唤醒的全流程自动化方案,显著提升升级效率与可靠性。
关键词:固态硬盘固件升级,自动化批量,控制机推送

本发明涉及存储系统技术领域,特别是涉及一种基于windows系统的固态硬盘固件批量升级方法、装置、计算机设备和存储介质。



背景技术:

固态硬盘(solidstatedisk,简称ssd)是用固态电子存储芯片阵列而制成的硬盘,ssd由控制单元和存储单元(flash芯片、dram芯片)组成。固态硬盘在接口的规范和定义、功能及使用方法上与普通硬盘的完全相同,在产品外形和尺寸上也完全与普通硬盘一致,现已经被广泛应用于各个不同技术领域中。

目前,在固态硬盘的系统测试过程中,会涉及固件升级,但是固件升级需要判断不同的版本,需要获取当前的硬盘的型号,之后再用升级工具升级,升级之后还需要对电脑进行关机或者休眠,最后再开机,这样才能完成一次完整的升级动作,所以都只能手动而且单台升级,对于大批量的电脑升级动作,就会很繁琐,浪费了大量的人力成本。



技术实现要素:

基于此,有必要针对上述技术问题,提供一种可以提高固件升级效率的基于windows系统的固态硬盘固件批量升级方法、装置、计算机设备和存储介质。

一种基于windows系统的固态硬盘固件批量升级方法,所述方法包括:

获取基于windows系统的固态硬盘固件批量升级请求;

根据所述请求通过控制机将升级工具批量推送到多个测试机上,所述升级工具中包括自动化脚本;

当测试机获取到控制机推送的升级工具时,自动启动所述自动化脚本进行固件升级;

待测试机固件升级完成后,通过控制机向所述测试机批量发送休眠指令以使所述测试机进行休眠姿态;

唤醒全部测试机以完成固件批量升级。

在其中一个实施例中,所述当测试机获取到控制机推送的升级工具时,自动启动所述自动化脚本进行固件升级的步骤还包括:

启动所述自动化脚本获取当前系统盘的型号及固件版本号;

从配置文件中查找到对应的固件文件名称,并调用升级工具将获取到固件文件写入固态硬盘。

在其中一个实施例中,在所述当测试机获取到控制机推送的升级工具时,自动启动所述自动化脚本进行固件升级的步骤之后还包括:

若测试机在进行固件升级的过程中升级失败,则将所述测试机标记为升级失败状态,并将状态返回给控制机。

在其中一个实施例中,所述通过控制机向所述测试机批量发送休眠指令以使所述测试机进行休眠姿态的步骤还包括:

控制机通过调用pmrtest设定休眠任务;

将设定好的休眠任务批量发送至多个测试机;

当测试机接收到所述休眠任务时进行休眠姿态,待所述休眠任务结束后自动唤醒开机以完成固件升级。

一种基于windows系统的固态硬盘固件批量升级装置,所述装置包括:

获取模块,所述获取模块用于获取基于windows系统的固态硬盘固件批量升级请求;

批量推送模块,所述批量推送模块用于根据所述请求通过控制机将升级工具批量推送到多个测试机上,所述升级工具中包括自动化脚本;

固件升级模块,所述固件升级模块用于当测试机获取到控制机推送的升级工具时,自动启动所述自动化脚本进行固件升级;

休眠模块,所述休眠模块用于待测试机固件升级完成后,通过控制机向所述测试机批量发送休眠指令以使所述测试机进行休眠姿态;

唤醒模块,所述唤醒模块用于唤醒全部测试机以完成固件批量升级。

在其中一个实施例中,所述固件升级模块还用于:

启动所述自动化脚本获取当前系统盘的型号及固件版本号;

从配置文件中查找到对应的固件文件名称,并调用升级工具将获取到固件文件写入固态硬盘。

在其中一个实施例中,所述装置还包括状态返回模块,所述状态返回模块用于:

若测试机在进行固件升级的过程中升级失败,则将所述测试机标记为升级失败状态,并将状态返回给控制机。

在其中一个实施例中,所述休眠模块还用于:

控制机通过调用pmrtest设定休眠任务;

将设定好的休眠任务批量发送至多个测试机;

当测试机接收到所述休眠任务时进行休眠姿态,待所述休眠任务结束后自动唤醒开机以完成固件升级。

一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任意一项方法的步骤。

一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项方法的步骤。

上述基于windows系统的固态硬盘固件批量升级方法、装置、计算机设备和存储介质,通过获取基于windows系统的固态硬盘固件批量升级请求;根据所述请求通过控制机将升级工具批量推送到多个测试机上,所述升级工具中包括自动化脚本;当测试机获取到控制机推送的升级工具时,自动启动所述自动化脚本进行固件升级;待测试机固件升级完成后,通过控制机向所述测试机批量发送休眠指令以使所述测试机进行休眠姿态;唤醒全部测试机以完成固件批量升级。本发明利用控制机将升级工具及升级包批量推送到测试机,测试机自动做升级动作,完成后控制机发批量休眠指令,最后唤醒全部测试机完成整个升级动作。对于操作者来说,启动升级命令之后,只需要传入升级工具包就可以批量完成固件升级,大大的提高了固件升级效率,节约了不必要的人力成本。

附图说明

图1为一个实施例中基于windows系统的固态硬盘固件批量升级方法的流程示意图;

图2为一个实施例中基于windows系统的固态硬盘固件批量升级方法的应用环境图;

图3为另一个实施例中基于windows系统的固态硬盘固件批量升级方法的流程示意图;

图4为再一个实施例中基于windows系统的固态硬盘固件批量升级方法的流程示意图;

图5为一个实施例中基于windows系统的固态硬盘固件批量升级装置的结构框图;

图6为另一个实施例中基于windows系统的固态硬盘固件批量升级装置的结构框图;

图7为一个实施例中计算机设备的内部结构图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

在一个实施例中,如图1所示,提供了一种基于windows系统的固态硬盘固件批量升级方法,该方法包括:

步骤102,获取基于windows系统的固态硬盘固件批量升级请求;

步骤104,根据请求通过控制机将升级工具批量推送到多个测试机上,升级工具中包括自动化脚本;

步骤106,当测试机获取到控制机推送的升级工具时,自动启动自动化脚本进行固件升级;

步骤108,待测试机固件升级完成后,通过控制机向测试机批量发送休眠指令以使测试机进行休眠姿态;

步骤110,唤醒全部测试机以完成固件批量升级。

本实施例提出的解决方案,可以实现批量升级windows下固态硬盘固件,该方法可以应用于如图2所示的应用环境中,包括控制机210以及与控制机210通过网络连接的多台测试机220。

具体地,首先,控制机获取基于windows系统的固态硬盘固件批量升级请求。接着,操作者通过控制机将升级工具通过网络批量推送到多台测试机上,这里的升级工具中包括有自动化脚本。当测试机获取到控制机推送的升级工具时,自动启动自动化脚本进行固件升级。当测试机自动升级动作完成后,将成功完成的状态返回给控制机。接着,控制机发批量休眠指令给成功升级的测试机。最后,唤醒全部测试机,完成整个升级动作。可以理解的是,当测试机在自动升级的过程中如果出现任何问题,则会将其标记为升级失败,并把状态返回给控制机。

在本实施例中,通过获取基于windows系统的固态硬盘固件批量升级请求;根据所述请求通过控制机将升级工具批量推送到多个测试机上,所述升级工具中包括自动化脚本;当测试机获取到控制机推送的升级工具时,自动启动所述自动化脚本进行固件升级;待测试机固件升级完成后,通过控制机向所述测试机批量发送休眠指令以使所述测试机进行休眠姿态;唤醒全部测试机以完成固件批量升级。本发明利用控制机将升级工具及升级包批量推送到测试机,测试机自动做升级动作,完成后控制机发批量休眠指令,最后唤醒全部测试机完成整个升级动作。对于操作者来说,启动升级命令之后,只需要传入升级工具包就可以批量完成固件升级,大大的提高了固件升级效率,节约了不必要的人力成本。

在一个实施例中,如图3所示,提供了一种基于windows系统的固态硬盘固件批量升级方法,该方法中当测试机获取到控制机推送的升级工具时,自动启动自动化脚本进行固件升级的步骤还包括:

步骤302,启动自动化脚本获取当前系统盘的型号及固件版本号;

步骤304,从配置文件中查找到对应的固件文件名称,并调用升级工具将获取到固件文件写入固态硬盘。

具体地,在本实施例中当测试机获取到控制机推送的升级工具后,首先通过启动升级工具中的自动化脚本获取当前系统盘的型号及固件版本号。接着,从配置文件中寻找到对应的固件名字。最后,调用升级工具,将获取到的固件文件写入固态硬盘。

在本实施例中,实现了测试机通过控制机推送的升级工具,根据不同的固件版本号进行全自动的固件升级动作,进一步提高了固件升级的效率。

在一个实施例中,提供了一种基于windows系统的固态硬盘固件批量升级方法,该方法在当测试机获取到控制机推送的升级工具时,自动启动自动化脚本进行固件升级的步骤之后还包括:

若测试机在进行固件升级的过程中升级失败,则将测试机标记为升级失败状态,并将状态返回给控制机。

在一个实施例中,如图4所示,提供了一种基于windows系统的固态硬盘固件批量升级方法,该方法中通过控制机向测试机批量发送休眠指令以使测试机进行休眠姿态的步骤还包括:

步骤402,控制机通过调用pmrtest设定休眠任务;

步骤404,将设定好的休眠任务批量发送至多个测试机;

步骤406,当测试机接收到所休眠任务时进行休眠姿态,待休眠任务结束后自动唤醒开机以完成固件升级。

具体地,在本实施例中提供了完整的固件升级的流程,包括:

首先,操作者通过控制机将升级工具批量推送到测试机上,推送的同时会将自动化脚本也放入升级工具(ssh_sftp,securityshellsecretfiletransferprotocol完全外壳协议下的文件传输协议)。

然后,启动自动化脚本,首先获取到当前系统盘的型号及固件版本号,并从配置文件中寻找到对应的固件文件名字,调用升级工具,将获取到的固件文件写入固态硬盘。

其中,若在上述升级过程中如果出现问题,就会将其标记为升级失败,并把状态返回给控制机

接着,调用pmrtest(powermanagetest微软提供的一款用来功耗相关测试的软件,可以实现计算机休眠并自动唤醒),设定一次休眠任务,测试机进行休眠姿态。

最后,测试机在上一步的基础上自动唤醒,并开机,使固件升级生效,至此完成了全套的升级动作。以上是分解动作,对于操作者来讲,启动升级命令之后,只需要传入升级工具包就可以万事大吉了,节省了大量的人力成本。

应该理解的是,虽然图1-4的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1-4中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

在一个实施例中,如图5所示,提供了一种基于windows系统的固态硬盘固件批量升级装置500,该装置包括:

获取模块501,用于获取基于windows系统的固态硬盘固件批量升级请求;

批量推送模块502,用于根据所述请求通过控制机将升级工具批量推送到多个测试机上,所述升级工具中包括自动化脚本;

固件升级模块503,用于当测试机获取到控制机推送的升级工具时,自动启动所述自动化脚本进行固件升级;

休眠模块504,用于待测试机固件升级完成后,通过控制机向所述测试机批量发送休眠指令以使所述测试机进行休眠姿态;

唤醒模块505,用于唤醒全部测试机以完成固件批量升级。

在一个实施例中,固件升级模块503还用于:

启动所述自动化脚本获取当前系统盘的型号及固件版本号;

从配置文件中查找到对应的固件文件名称,并调用升级工具将获取到固件文件写入固态硬盘。

在一个实施例中,如图6所示,提供了一种基于windows系统的固态硬盘固件批量升级装置500,该装置还包括状态返回模块506,用于:

若测试机在进行固件升级的过程中升级失败,则将所述测试机标记为升级失败状态,并将状态返回给控制机。

在一个实施例中,休眠模块504还用于:

控制机通过调用pmrtest设定休眠任务;

将设定好的休眠任务批量发送至多个测试机;

当测试机接收到所述休眠任务时进行休眠姿态,待所述休眠任务结束后自动唤醒开机以完成固件升级。

关于基于windows系统的固态硬盘固件批量升级装置的具体限定可以参见上文中对于基于windows系统的固态硬盘固件批量升级方法的限定,在此不再赘述。

在一个实施例中,提供了一种计算机设备,其内部结构图可以如图7所示。该计算机设备包括通过装置总线连接的处理器、存储器以及网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作装置、计算机程序和数据库。该内存储器为非易失性存储介质中的操作装置和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种基于windows系统的固态硬盘固件批量升级方法。

本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以上各个方法实施例中的步骤。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以上各个方法实施例中的步骤。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

当前第1页1 2 
网友询问留言 留言:0条
  • 还没有人留言评论。精彩留言会获得点赞!