CN107861735A - 一种固件安装进度监测方法和计算机可读存储介质 - Google Patents
一种固件安装进度监测方法和计算机可读存储介质 Download PDFInfo
- Publication number
- CN107861735A CN107861735A CN201711022080.0A CN201711022080A CN107861735A CN 107861735 A CN107861735 A CN 107861735A CN 201711022080 A CN201711022080 A CN 201711022080A CN 107861735 A CN107861735 A CN 107861735A
- Authority
- CN
- China
- Prior art keywords
- firmware
- progress
- firmware installation
- installation
- critical stage
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
Abstract
本发明公开了一种固件安装进度监测方法和计算机可读存储介质。该方法包括:获取固件安装指令用于计算固件安装的进度;其中,固件安装的总进度包括至少一个关键阶段;所述关键阶段包括两个或两个以上关键点;基于所述关键点,确定固件安装所在的关键阶段;确定所述固件安装所在的关键阶段的进度曲线;基于所述固件安装所在的关键阶段的进度曲线,确定固件安装的进度。该方法通过分段拟合确定固件安装的进度曲线,减少了进度的显示误差,使其更接近真实的进度,同时也提高了用户友好度。
Description
【技术领域】
本申请涉及固件升级领域,尤其是涉及一种固件安装进度监测方法和计算机可读存储介质。
【背景技术】
在医疗成像设备的研发领域,经常需要使用现场可编程门阵列(Field-Programmable Gate Array,FPGA)。现场可编程门阵列可以包括主板和固件。现场门阵列的固件(Firmware)往往需要安装或升级。在这个过程中,对于用户来说能够实时显示安装或升级的进度可以提高用户体验度。然而,现有的进度显示往往不能实时地反映真实的进度。例如,进度条(或进度曲线)显示的进度低于或高于真实的进度,这严重影响了用户的体验度,降低了相关设备的用户友好性。因此,需要一种固件安装进度监测方法,使固件升级的显示进度更贴近真实进度,提高用户的体验度和设备的友好性。
【发明内容】
针对上述显示进度和真实进度之间的误差问题,本发明的在于提供一种固件安装进度监测方法,提高固件在安装或升级过程中用户的体验度。
为达到上述发明目的,本发明一方面披露了一种固件安装进度监测方法。该方法包括:获取固件安装指令用于计算固件安装的进度;其中,固件安装的总进度包括至少一个关键阶段;所述关键阶段包括两个或两个以上关键点;基于所述关键点,确定固件安装所在的关键阶段;确定所述固件安装所在的关键阶段的进度曲线;基于所述固件安装所在的关键阶段的进度曲线,确定固件安装的进度。
在一些实施例中,所述方法还包括显示所述固件安装的进度。
在一些实施例中,所述确定所述固件安装所在的关键阶段的进度曲线包括:基于所述关键点和所述固件安装所在的关键阶段,确定所述固件安装所在的关键阶段的进度曲线。
在一些实施例中,所述确定所述固件安装所在的关键阶段的进度曲线包括:确定所述固件安装所在的关键阶段的进度曲线的修正参数;基于所述关键点、所述固件安装所在的关键阶段和所述修正参数,确定所述固件安装所在的关键阶段的进度曲线。
在一些实施例中,所述确定所述固件安装所在的关键阶段的进度曲线的修正参数包括:确定所述固件安装所在的关键阶段相对于所述固件安装的总进度的占用比例;确定固件安装在所述固件安装所在的关键阶段的安装失败概率;基于所述占用比例和所述安装失败概率,确定所述固件安装所在的关键阶段的进度曲线的修正参数。
在一些实施例中,所述确定所述固件安装在所述固件安装所在的关键阶段的安装失败概率包括:获取所述固件安装所在的关键阶段的历史安装失败概率;基于所述历史固件安装失败概率,确定所述固件安装在所述固件安装所在的关键阶段的安装失败概率。
在一些实施例中,所述固件安装在所述固件安装所在的关键阶段的安装失败概率为所述历史固件安装失败概率的算术平均值。
在一些实施例中,所述固件安装所在的关键阶段的进度曲线为线性拟合曲线。
在一些实施例中,所述显示固件安装的进度包括剩余时间和进度百分比。
本发明另方面披露了一种计算机可读存储介质。所述存储介质存储计算机指令,所述计算机指令运行时运行所述固件安装进度监测方法。
与现有技术相比,本发明的有益效果表现如下:
一、将固件安装的总进度分为至少一个关键阶段,对所述每个关键阶段分别进行拟合,从而确定出不同关键阶段的进度曲线,而非现有技术中只有一条拟合的进度曲线,更加精确地显示固件安装的进度;
二、通过加入历史固件安装失败概率因素计算进度曲线的修正参数,进而通过修正参数调整拟合的进度曲线,使进度曲线处于动态调整的状态,更加精确地显示固件安装的进度。
【附图说明】
图1是本发明的一种成像系统的示例性示意图;
图2是本发明的一种固件安装进度监测方法的示例性流程图;
图3是本发明的另一种固件安装进度监测方法的示例性流程图;
图4是本发明的另一种固件安装进度监测方法的示例性流程图;
图5是本发明的一种确定固件安装所在的关键阶段的进度曲线的修正参数的示例性流程图;
图6是本发的一种固件安装的进度曲线的示例性示意图;
图7是本发明的处理设备的一种示例性示意图。
图1标记:101为数据采集设备,102为高压发生器,103为控制设备,104为处理设备,105为输入/输出界面,106为床架,107为辐射发生器,108为探测器,109为机架。
图6标记:601为第1关键点,602为第2关键点,603为第3关键,604为第4关键点,605为第5关键点,606为第6关键点,607为真实的安装进度曲线(曲线部分),608为分段拟合的进度曲线(虚线部分),609为非分段拟合的进度曲线(实线部分)。
【具体实施方式】
为使本发明的上述目的、特征和优点能够更为明显易懂,下面结合附图和实施例对本发明的具体实施方式做详细的说明。
本发明所涉及的成像系统,不仅可以用于医学成像,如疾病的诊断和研究等,还可用于工业领域。所述成像系统可以是一个单模态系统或一个多模态系统,包括但不限于,计算机断层扫描(computed tomography,CT)系统、正电子发射断层扫描(positron emissiontomography,PET)系统、磁共振成像(magnetic resonance imaging,MRI)系统、超声波扫描(ultrasound,US)系统、单光子发射计算机断层扫描(single-photon emission computedtomography,SPECT)系统、PET-CT、US-CT、PET-MRI等中的一种或多种的组合。
图1是本发明的一种成像系统的示例性示意图。
成像系统100可以对一个目标物体进行扫描,并基于扫描信号生成相关图像。在一些实施例中,成像系统100可以是一个医学成像系统。成像系统100包括但不限于数据采集设备101、高压发生器102、控制设备103、处理设备104和输入/输出界面105。
数据采集设备101可以对一个目标物体进行扫描,并获取相应的扫描信号。数据采集设备101可以是计算机断层成像仪(CT)、正电子发射断层扫描仪(PET)、磁共振成像仪(MRI)、单光子发射计算机断层扫描仪(SPECT)、热断层扫描仪(TTM)、医用电子内窥镜(MEE)等中的一种或几种的组合。在一些实施例中,数据采集设备101可以是CT设备。
示例性地,以CT设备为例对数据采集设备101进行说明。所述CT数据采集设备可以包括一个床架106、一个辐射发生器107、一个探测器108和一个机架109。床架106可以支撑目标物体(例如,待诊断的病人)。在扫描过程中,床架106可以移动目标物体至指定位置(例如,机架109的圆形腔室内)。机架109可以支撑辐射发生器107和探测器108。所述辐射发生器107可以向目标物体发射放射性射线。典型的放射性射线可以包括X射线、中子、质子、重离子等中的一种或几种的组合。所述CT数据采集设备可以通过辐射发生器107向目标物体发射放射性射线对其进行扫描,并获取扫描数据。在扫描过程中,放射性射线可以经过X射线球管内的射线窗、射线滤过板、形状过滤板和/或准直器后,到达目标物体。透过目标物体的X射线可以被探测器108接收,从而生成CT图像数据。作为示例,辐射发生器107可以是一个X射线球管。探测器108可以是弧形探测器。在一些实施例中,探测器108可以是单排探测器或多排探测器。在一些实施例中,探测器108可以包括多个通道,所述多个通道可以分别接收特定角度的X射线。
高压发生器102可以产生高压或强电流。在一些实施例中,高压发生器102所产生的高压或强电流可以传输至辐射发生器107,用于产生放射性射线。控制设备103可以与数据采集设备101、高压发生器102、处理设备104和/或输入/输出界面105相关联。在一些实施例中,控制设备103可以控制数据采集设备101扫描目标物体。例如,控制设备103可以控制辐射发生器107和探测器108绕Z轴旋转。在一些实施例中,控制设备103可以控制处理设备104进行数据处理或图像处理。例如,控制设备103可以控制处理设备104从探测器108获取图像信号,并基于所述图像信号重建CT图像。
控制设备103可以是一个控制元件或设备。例如,控制设备103可以是微控制器(microcontroller unit,MCU)、中央处理器(central processing unit,CPU)、可编程逻辑器件(programmable logic device,PLD)、专用集成电路(application specificintegrated circuits,ASIC)、单片微型计算机(single chip microcomputer,SCM)、系统芯片(system on a chip,SoC)等中的一种或几种的组合。
处理设备104可以进行数据或图像处理。例如,处理设备104可以获取探测器108和机架109的位置,并基于所述探测器108和机架109的位置模拟辐射发生器107产生的射线经X射线球管内的射线窗、射线滤过板、形状过滤板和/或准直器散射形成的杂散射线的分布。又例如,处理设备104可以从探测器108中获取扫描待测物体后生成的图像信号,并基于所述图像信号重建图像。在一些实施例中,处理设备104可以从探测器108或者外部数据源接收数据,并对接收到的数据进行处理。所述的外部数据源可以是硬盘、USB存储、光盘、闪速存储器(flash memory)、云盘(cloud disk)等中的一种或几种的组合。
处理设备104可以是一个或多个处理元件,例如中央处理器(central processingunit,CPU)、数字信号处理器(digital signal processor,DSP)、图形处理器(graphicsprocessing unit,GPU)等。在一些实施例中,处理设备104也可以是特殊设计的具备特殊功能的处理元件或设备。处理设备104可以是一个本地设备,例如操控台、台式电脑、本地服务器、具备数据图像处理功能的云服务器等。处理设备104可以将处理结果(例如,重建的CT图像)传送至输入/输出界面105。
输入/输出界面105可以接收用户输入信息,或将控制设备103或处理设备104产生的图像或数据输出至用户。在一些实施例中,输入/输出界面105可以通过物理界面输入或输出信息,例如触摸显示屏、麦克风、扬声器、LED指示灯、按钮、按键等中的一种或几种的组合。在一些实施例中,输入/输出界面105可以利用虚拟界面输入或输出信息,例如虚拟现实、全息影像。在一些实施例中,输入/输出界面105可以是显示屏、指示灯、扬声器、按钮、按键等中的一种或几种的组合。
成像系统100中各部件可以通过有线或无线的方式进行连接。在一些实施例中,成像系统100中各部件可以通过网络连接。所述网络可以包括局域网、广域网、公用网络、专用网络、无线局域网、虚拟网络、都市城域网、公用开关电话网络等中的一种或几种的组合。例如,利用WIFI、蓝牙、ZigBee等协议进行通信的网络。在一些实施例中,所述网络可以包括多种网络接入点,例如有线或无线接入点、基站或网络交换点等。通过一个接入点,数据源可以与所述网络相连并通过所述网络发送信息。
在一些实施例中,成像系统100还可以包括与成像系统100相关的外部设备(例如,数据库、终端、存储设备等)。在一些实施例中,成像系统100中的高压发生器102可以包含于数据采集设备101中。
图2是本发明的一种固件安装进度监测方法的示例性流程图;
在步骤201,处理设备104可以获取固件安装的指令。所述指令用于计算固件安装的进度。固件安装的总进度可以分为至少一个关键阶段。所述关键阶段包括两个或两个以上关键点。
所述关键阶段和关键点的确认是在升级模拟过程中完成的,在实际安装时将不再变更。仅作为示例说明,下面介绍在升级模拟过程中确定关键阶段和关键点的过程,并不用于限制本发明。
在升级模拟开始之前,升级模拟系统先设置多个初始关键点,例如,k0、k1、k2、k3、k4、k5、k6和k7分别表示为k0(0,0)、k1(10,10%)、k2(30,30%)、k3(40,45%)、k4(60,65%)、k5(70,80%)、k6(80,90%)和k7(90,100%),其中,横坐标对应时间点,单位为秒,纵坐标对应进度值大小。所述初始关键点可以是根据经验评估值所确定的。进一步地,在进行升级模拟过程中将耗时较短的阶段进行合并得到新的关键点,例如,K0、K1、K2、K3和K4分别表示为K0(0,0)、K1(30,30%)、K2(60,65%)、K3(80,90%)和K4(90,100%)。进行合并的原因是耗时短的操作在升级界面上难以被关注。基于所述关键点可以确定不同的关键阶段。例如,基于关键点K0和K1,升级模拟系统可以确定第一关键阶段占比为0~30%,占用时间为0~30秒;基于关键点K1和K2,升级模拟系统可以确定第二关键阶段占比为30%~65%,占用时间为30~60秒;基于关键点K2和K3,升级模拟系统可以确定第三关键阶段占比为65%~90%,占用时间为60~80秒;基于关键点K3和K4,升级模拟系统可以确定第四关键阶段占比为90%~100%,占用时间为80~90秒。每个关键阶段包括两个或两个以上关键点。例如,第二关键阶段(30%~65%)可以包括初始关键点k3和新的关键点K1、K2。又例如,第三关键阶段(65%~90%)可以包括初始关键点k5和新的关键点K2、K3。其中,每个关键阶段都包括起始关键点和终止关键点。所述起始关键点指关键阶段的起始点,所述终止关键点指关键阶段的结束点。
固件安装可以关联于现场可编程门阵列(FPGA)上固件的安装或升级。现场可编程门阵列可以用于医疗设备(例如CT成像设备)的研发和应用。例如基于现场可编程门阵列的医疗仪器将显著缩短开发周期,减少设计风险,可显著降低数字系统的开发成本。例如,数据采集设备101中可以基于现场可编程门阵列,使其能够实现医疗数据的快速收集和传输等功能。再例如,处理设备104也可以基于现场可编程门阵列,所述现场门阵列能够处理来自数据采集设备101中的数据,或者把处理后的数据发送至输入/输出界面105。在一些实施例中,现场可编程门阵列可以包括至少一个可编辑逻辑模块(CLB)、输入输出模块(IOB)、可编程互连资源(PIR)或内部储存单元(例如静态储存器(SRAM))。所述可编辑逻辑模块(CLB)是实现逻辑功能的基本单元。在一些实施例中,可编辑逻辑模块可以包括逻辑函数发生器、触发器和数据选择器等。所述输入输出模块(IOB)可以是用来实现现场可编程门阵列中的可编辑逻辑模块与外部引脚的接口,通常排列在现场可编程门阵列的四周。在一些实施例中,输入输出模块可以包括输入触发器、输入缓冲期、输出触发器或输出缓冲器。所述可编程互连资源(PIR)可以包括各种长度的连线线段和一些可编程连接开关,可以将各可编逻辑模块之间,可编辑逻辑模块和输入输出模块之间,或各输入输出模块之间连接起来。
所述固件可以包括可擦写只读储存器(EROM)或电可擦可编程只读储存器(EEPROM)。在一些实施例中,固件可以是现场可编程门阵列中的具有软件功能的器件。固件可以储存在现场可编程门阵列的FLASH储存器上。在一些实施例中,固件可以进行安装或者升级。所述固件升级可以包括通过互联网下载相关数据进行固件升级,还可以包括离线从FLASH储存器上获取相关数据进行后续升级。例如,在数据采集设备101的研发中,处理设备104能够下载升级数据,对数据采集设备101中的现场可编程门阵列中的固件进行重新升级。再例如,处理设备104能够离线获取FLASH储存器上的固件升级的升级数据包,并对数据采集设备101上的现场可编程门阵列上的固件进行升级。
步骤202中,基于所述关键点,处理设备104可以确定固件安装所在的关键阶段。
在一些实施例中,所述关键阶段可以包括准备阶段、老固件擦除阶段、新固件写入阶段、配置检查与核对阶段、重新载入阶段等中的一种或多种的组合。例如,所述关键阶段可以只包括老固件擦除阶段、新固件写入阶段和重新载入阶段。其中,老固件擦除阶段占比为0~40%,占用时间为0~20秒;新固件写入阶段占比为40%~70%,占用时间为20~50秒;重新载入阶段占比为70%~100%,占用时间为50~80秒。不同关键阶段的占比在升级模拟过程中已经被确定。例如,当固件安装已经完成老固件擦除阶段,固件安装将自动进入下一个关键阶段为老固件写入阶段,即处理设备104可以确定固件安装正处在老固件写入阶段。当固件安装已经完成老固件擦除阶段已经完成老固件写入阶段时,固件安装将自动进入下一个关键阶段为重新载入阶段,即处理设备104可以确定固件安装正处在重新载入阶段。又例如,当固件安装已经消耗的时间为30秒,处理设备104可以确定固件安装正处在老固件写入阶段。
在一些实施例中,所述准备阶段可以包括检查网络连接、检查准备升级的固件型号、检查准备升级的固件的安装包、检查本地存储器(例如FLASH存储器)、准备相关配置资源和检查电源等中的一种或几种的组合。例如,处理设备104可以检查本地网络是否连接到互联网。再例如,处理设备104可以检查准备升级的固件的安装包是否已经完成下载,并储存在本地存储器上。
在一些实施例中,老固件擦除阶段可以包括确定老固件初始擦除区域、检查老固件是否处于运行状态、检查老固件的相关电源是否连接等一种或几种的组合。新固件写入阶段可以包括按照特定顺序从本地存储器或者互联网上获取老固件的写入程序或数据包。配置检查与核对阶段可以包括检查注册表、检查程序管理器、检查系统文件、检查兼容性、检查CPU资源等中的一种或几种的组合。重新载入阶段可以针对升级或者安装失败的阶段进行重新升级或安装。例如,在新固件写入阶段,由于安装包数据提取失败,处理设备104不能成功在老固件中写入新的程序,进而在重新载入阶段,处理设备104能够重新提取安装包数据进行对老固件进行写入。
在一些实施例中,所述关键阶段还可以包括初步测试阶段。所述初步测试阶段是处理设备104对于完成写入的固件进行系统初步测试,检测其运行是否有故障等。在一些实施例中,所述关键阶段还可包括后续配准阶段。所述后续配置阶段针对在当前系统运行状态下不能加载的配准信息在后期进行配置。例如,在成像系统100运行的状态下,某些注册信息或运行程序不能完全更新,需要在下次重新启动时才能完成后续的配置。
在步骤203中,处理设备104可以确定所述固件安装所在的关键阶段的进度曲线。
不同的关键阶段对应不同的进度曲线。在步骤202中,处理设备104已经确定出固件安装正处在哪一个关键阶段。进一步地,处理设备104可以获取与所述关键安装所在的关键阶段对应的进度曲线。例如,固件安装的总进度包括第一关键阶段、第二关键阶段和第三关键阶段。第一关键阶段对应的进度曲线为curve 1、第二关键阶段对应的进度曲线为curve 2和第三关键阶段对应的进度曲线为curve 3。当固件安装正处在第二关键阶段时,处理设备104可以确定固件安装所在的关键阶段的进度曲线为curve 2。
在步骤204中,处理设备104可以基于所述固件安装所在的关键阶段的进度曲线,处理设备104可以确定固件安装的进度。
由于在步骤203中已经确定出所述固件安装所在的关键阶段的进度曲线,基于所述固件安装所在的关键阶段的进度曲线,处理设备104可以确定出所述固件安装的进度。例如,基于当前固件安装已经消耗的时间,处理设备104可以确定出所述固件安装的进度。
在步骤205中,输入/输出界面105可以显示所述固件安装的进度。在一些实施例中,现场可编程门阵列的安装或者升级的进度能够被处理设备104确定并在输入/输出界面105上对用户(例如,医生)进行显示。所述固件安装进度的表达方式可以包括柱状条、二维曲线、三维曲线、百分比、数字、函数、方程等中的一种或几种的组合。例如,固件的安装进度可以用柱状条在输入/输出界面105进行显示,用户(例如,医生)可以直观地观察到固件安装花费时间和剩余时间。再例如,现场可编程门阵列中的固件升级可以用二维曲线进行表示。所述二维曲线可以表示在一个二维坐标系上。所述二维坐标系可以包括一个时间坐标轴,用以表示固件升级的时间,和一个进度值坐标轴,用以表示某个时间点对应的升级进度。
图3是本发明的另一种固件安装进度监测方法的示例性流程图;
在步骤301,处理设备104可以获取固件安装的指令。所述指令用于计算固件安装的进度。固件安装的总进度可以分为至少一个关键阶段。所述关键阶段包括两个或两个以上关键点。
步骤302中,基于所述关键点,处理设备104可以确定固件安装所在的关键阶段。在一些实施例中,所述关键阶段可以包括准备阶段、老固件擦除阶段、新固件写入阶段、配置检查与核对阶段、重新载入阶段等中的一种或多种的组合。
在步骤303中,基于所述关键点和所述固件安装所在的关键阶段,处理设备104可以确定所述固件安装所在的关键阶段的进度曲线。关键点和关键阶段都是在升级模拟过程中已经被确定的。即每个关键阶段包括的关键点也是确定的。因此,处理设备104可以基于所述固件安装所在的关键阶段,确定所述固件安装所在的关键阶段包括的关键点。
在一些实施例中,所述关键点可以表示为一个坐标值,例如,(20,60%),其中,横坐标代表时间点(单位为秒)、纵坐标代表进度值。例如,所述关键阶段的起始关键点为(30,40%);终止关键点为(60,80%)。
在一些实施例中,处理设备104可以基于固件安装所在的关键阶段的起始关键点和终止关键点确定进度曲线。所述进度曲线可以通过公式(1)进行拟合:
P=C+nT, (1)
其中,P表示固件安装所对应的进度百分比;C和n表示参数;以及T表示固件安装所对应的时间。
例如,所述关键阶段的起始关键点和终止关键点可以分别表示为(T1,P1)和(T2,P2),处理设备104基于所述起始关键点和终止关键点的坐标以及公式(1)可以确定所述关键阶段的进度曲线。
需要注意的是,仅作为示例说明,上述线性拟合只使用了起始关键点和终止关键点。在一些实施例中,处理设备104可以对多个关键点进行拟合。在一些实施例中,所述固件安装所在的关键阶段的进度曲线可以包括线性拟合曲线、指数拟合曲线等。
在步骤304中,处理设备104可以基于所述固件安装所在的关键阶段的进度曲线,确定固件安装的进度。由于在步骤303中已经确定出所述固件安装所在的关键阶段的进度曲线,基于固件安装已经消耗的时间,处理设备104可以确定出所述固件安装的进度。
在步骤305中,输入/输出界面105可以显示所述固件安装的进度。在一些实施例中,现场可编程门阵列的安装或者升级的进度能够被处理设备104确定并在输入/输出界面105上对用户(例如,医生)进行显示。所述固件安装进度的表达方式可以包括柱状条、二维曲线、三维曲线、百分比、数字、函数、方程等中的一种或几种的组合。例如,固件的安装进度可以用柱状条在输入/输出界面105进行显示,用户(例如,医生)可以直观地观察到固件安装花费时间和剩余时间。再例如,现场可编程门阵列中的固件升级可以用二维曲线进行表示。所述二维曲线可以表示在一个二维坐标系上。所述二维坐标系可以包括一个时间坐标轴,用以表示固件升级的时间,和一个进度值坐标轴,用以表示某个时间点对应的升级进度。
图4是本发明的另一种固件安装进度监测方法的示例性流程图;
在步骤401,处理设备104可以获取固件安装的指令。所述指令用于计算固件安装的进度。固件安装的总进度可以分为至少一个关键阶段。所述关键阶段包括两个或两个以上关键点。
步骤402中,基于所述关键点,处理设备104可以确定固件安装所在的关键阶段。在一些实施例中,所述关键阶段可以包括准备阶段、老固件擦除阶段、新固件写入阶段、配置检查与核对阶段、重新载入阶段等中的一种或多种的组合。
在步骤403中,处理设备404可以确定所述固件安装所在的关键阶段的进度曲线的修正参数。所述修正参数涉及固件安装所在的关键阶段的安装失败概率。通过对进度曲线的修正,可以对拟合曲线进行调整,更加真实地反映固件安装的进度。修正参数的确定过程可以参见图5的描述。
在步骤404中,基于所述关键点、所述固件安装所在的关键阶段和所述固件安装所在的关键阶段的进度曲线的修正参数,处理设备104可以确定固件安装所在的关键阶段的进度曲线。关键点和关键阶段都是在升级模拟过程中已经被确定的。即每个关键阶段包括的关键点也是确定的。因此,处理设备104可以基于所述固件安装所在的关键阶段,确定所述固件安装所在的关键阶段包括的关键点。
在一些实施例中,基于所述固件安装所在的关键阶段的起始关键点和终止关键点和所述固件安装所在的关键阶段的进度曲线的修正参数,处理设备104可以确定固件安装所在的关键阶段的进度曲线。所述修正进度曲线的计算公式为公式(2):
P=C+nT-Px, (2)
其中,P表示固件安装所对应的进度百分比;C和n表示参数;T表示固件安装所对应的时间;以及Px表示修正参数。
需要注意的是,仅作为示例说明,上述线性拟合只使用了起始关键点和终止关键点。在一些实施例中,处理设备104可以对多个关键点进行拟合。在一些实施例中,所述固件安装所在的关键阶段的进度曲线可以包括线性拟合曲线、指数拟合曲线等。
在步骤405中,处理设备104可以基于所述固件安装所在的关键阶段的进度曲线,确定固件安装的进度。由于在步骤404中已经确定出所述固件安装所在的关键阶段的进度曲线,基于固件安装已经消耗的时间,处理设备104可以确定出所述固件安装的进度。
在步骤406中,输入/输出界面105可以显示所述固件安装的进度。在一些实施例中,现场可编程门阵列的安装或者升级的进度能够被处理设备104确定并在输入/输出界面105上对用户(例如,医生)进行显示。所述固件安装进度的表达方式可以包括柱状条、二维曲线、三维曲线、百分比、数字、函数、方程等中的一种或几种的组合。例如,固件的安装进度可以用柱状条在输入/输出界面105进行显示,用户(例如,医生)可以直观地观察到固件安装花费时间和剩余时间。再例如,现场可编程门阵列中的固件升级可以用二维曲线进行表示。所述二维曲线可以表示在一个二维坐标系上。所述二维坐标系可以包括一个时间坐标轴,用以表示固件升级的时间,和一个进度值坐标轴,用以表示某个时间点对应的升级进度。
图5是本发明的一种确定固件安装所在的关键阶段的进度曲线的修正参数的示例性流程图;
在步骤501中,处理设备104可以确定固件安装所在的关键阶段相对于固件安装的总进度的占用比例。
在一些实施例中,处理设备104可以基于关键阶段的起始关键点和终止关键点确定该关键阶段相对于固件安装总进度的占用比例。例如,固件安装包括4个关键阶段,即第一关键阶段、第二关键阶段、第三关键阶段和第四关键阶段。其中,第二关键阶段对应的起始关键点为(T1,P1)和终止关键点(T2,P2)。第二关键阶段占固件安装总进度的占用比例为P2-P1。例如,第二关键阶段对应的起始关键点为(40,60%)和终止关键点(70,80%)。第二关键阶段占固件安装总进度的占用比例为20%。
在步骤502中,处理设备104可以获取固件安装所在的关键阶段的历史安装失败概率。
下面以老固件擦除阶段为例说明,在历史安装过程中,第i次安装的失败概率可以表示为:
其中,xi为第i次的安装失败概率,N为理论上第i次擦除的总次数;Nxi为第i次擦除过程中的失败总次数。在老固件擦除阶段,一次擦除的大小为M Byte,擦除的总大小为MMaxByte,则理论上擦除的总次数N=MMax/M。
在步骤503中,基于所述历史安装失败概率,处理设备104可以确定固件安装所在的关键阶段的安装失败概率。具体地,基于所述历史安装失败概率,处理设备104可以预测固件安装所在的关键阶段的安装失败概率。
在一些实施例中,固件安装所在的关键阶段的安装失败概率可以表示为:
其中,x为预测的固件安装的失败概率,xi为第i次的安装失败概率,x1为完成升级模拟过程后,产生的初始的预测失败概率。
在一些实施例中,处理设备104可以对每一个历史安装失败概率加入权重因子进行处理,从而确定出当前安装的失败概率。例如,固件安装所在的关键阶段的安装失败概率可以表示为:
在一些实施例中,处理设备104可以基于部分所述历史安装失败概率确定固件安装所在的关键阶段的安装失败概率。例如,处理设备104可以针对当前安装之前的10个历史安装失败概率进行处理,从而确定出当前安装的失败概率。
在一些实施例中,处理设备104可以利用一些预测方法,基于历史安装失败概率预测固件安装所在的关键阶段的安装失败概率。所述预测方法可以包括移动平均预测法(简单移动平均、二项移动平均、三项移动平均)、指数平滑预测法(简单指数平滑、二项指数平滑、三项指数平滑、温特斯指数平滑)、趋势外推预测法、回归预测法和灰色预测法或移动自回归预测法(ARIMA)等。
在步骤504中,基于所述固件安装所在的关键阶段相对于所述固件安装的总进度的占用比例和所述固件安装所在的关键阶段的安装失败概率,处理设备104可以确定所述固件安装所在的关键阶段的进度曲线的修正参数。修正参数可以表示为:
其中,Px为修正参数;x为预测的固件安装所在的关键阶段的安装失败概率;P0为固件安装所在的关键阶段相对于固件安装总进度的占用比例。
图6是本发的一种固件安装的进度曲线的示例性示意图;
如图6所示,固件安装的进度可以表示在二维坐标中。所述二维坐标包含一个时间坐标和一个比例坐标。所述比例坐标表示在时间坐标上的任意时间点。所述进度比例是固件安装的进度值。
在一些实施例中,固件安装的总进度包括准备阶段、老固件擦除阶段、新固件写入阶段、配置检查与核对阶段和重新载入阶段5个关键阶段。如图6,所示,准备阶段包括第1关键点601和第2关键点602;老固件擦除阶段包括第2关键点602和第3关键点603;新固件写入阶段包括第3关键点603和第4关键点604;配置检查与核对阶段包括4关键点604和第5关键点605;重新载入阶段包括第5关键点605和第6关键点606。需要注意的是,仅作为示例说明,每个关键阶段只包括了每个关键阶段的起始关键点和终止关键点。
第1关键点601表示为(0,0);第2关键点表示为(T1,P1);第3关键点表示为(T2,P2);第4关键点表示为(T3,P3);第5关键点表示为(T4,P4);第5关键点表示为(T4,P4);第6关键点表示为(T5,P5)。
607为真实的安装进度曲线(曲线部分);608为分段拟合的进度曲线(虚线部分);609为非分段拟合的进度曲线(实线部分)。
在一些实施例中,当固件安装正处在老固件擦除阶段时,处理设备104可以确定老固件擦除阶段的进度曲线。基于当前固件安装已经消耗的时间和老固件擦除阶段的进度曲线,处理设备104可以确定出当前固件安装的进度。与现有技术确定的进度曲线609相比,通过分段拟合获得的进度曲线608(图中用直线608所示的虚线表示)更加接近真实进度(图中用曲线607表示)。
需要说明的是,图6只表示固件安装过程一次都没有出错,且历史安装过程中没有出错的情形。如果某个关键阶段历史安装过程中有过出错(Px大于0),那么刚进入该关键阶段时,根据公式P=C+nT-Px,进度反而会倒退,但这样显然是不合理的。因此,需要说明是的是,固件安装进度P只能增加不能减少。即在固件安装过程中,需要增加一个判断过程。所述固件安装所在的关键阶段的进度曲线可以表示为:
P=C+nT-Px,P≥C+nT0 (7)
P=C+nT0,P<C+nT0, (8)
其中,T0表示当前固件安装所在的关键阶段的起始点对应的时间。
如果此次固件安装的预测结果并不完全理想,那么该关键阶段进度末端可能存在进度停顿一段时间,或者突然跳转到下一个关键阶段的起始关键点对应的进度值。
图7是本发明的处理设备的一种示例性示意图。
处理设备104可以包括获取模块701、关键阶段确定模块702、进度曲线确定模块703和进度确定模块704。
获取模块701可以获取固件安装指令。所述指令用于计算固件安装的进度。所述进度可以关联于现场可编程门阵列(FPGA)上固件安装。获取模块701可以获取当前固件安装的进度并在输入/输出界面105上对用户(例如,医生)进行显示。进度的表达方式可以包括柱状条、二维曲线、三维曲线、百分比、数字、函数、方程等中的一种或几种的组合。例如,固件的安装进度可以用柱状条在输入/输出界面105进行显示,用户(例如,医生)可以直观地观察到固件安装花费时间和剩余时间。关键阶段确定模块702可以确定当前固件安装正处在的关键阶段。进度曲线确定模块703可以确定当前固件安装正处在的关键阶段的进度曲线。进度确定模块704可以确定当前固件安装的进度。
以上所述仅为本发明的优选实施而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种固件安装进度监测方法,其特征在于,所述方法包括:
获取固件安装指令用于计算固件安装的进度;其中,固件安装的总进度包括至少一个关键阶段;所述关键阶段包括两个或两个以上关键点;
基于所述关键点,确定固件安装所在的关键阶段;
确定所述固件安装所在的关键阶段的进度曲线;
基于所述固件安装所在的关键阶段的进度曲线,确定固件安装的进度。
2.根据权利要求1所述的固件安装进度监测方法,其特征在于,所述方法还包括显示所述固件安装的进度。
3.根据权利要求1所述的固件安装进度监测方法,其特征在于,所述确定所述固件安装所在的关键阶段的进度曲线包括:
基于所述关键点和所述固件安装所在的关键阶段,确定所述固件安装所在的关键阶段的进度曲线。
4.根据权利要求1所述的固件安装进度监测方法,其特征在于,所述确定所述固件安装所在的关键阶段的进度曲线包括:
确定所述固件安装所在的关键阶段的进度曲线的修正参数;
基于所述关键点、所述固件安装所在的关键阶段和所述修正参数,确定所述固件安装所在的关键阶段的进度曲线。
5.根据权利要求4所述的固件安装进度监测方法,其特征在于,所述确定所述固件安装所在的关键阶段的进度曲线的修正参数包括:
确定所述固件安装所在的关键阶段相对于所述固件安装的总进度的占用比例;
确定固件安装在所述固件安装所在的关键阶段的安装失败概率;
基于所述占用比例和所述安装失败概率,确定所述固件安装所在的关键阶段的进度曲线的修正参数。
6.根据权利要求5所述的固件安装进度监测方法,其特征在于,所述确定所述固件安装在所述固件安装所在的关键阶段的安装失败概率包括:
获取所述固件安装所在的关键阶段的历史安装失败概率;
基于所述历史固件安装失败概率,确定所述固件安装在所述固件安装所在的关键阶段的安装失败概率。
7.根据权利要求6所述的固件安装进度监测方法,其特征在于,所述固件安装在所述固件安装所在的关键阶段的安装失败概率为所述历史固件安装失败概率的算术平均值。
8.根据权利要求1所述的固件安装进度监测方法,其特征在于,所述固件安装所在的关键阶段的进度曲线为线性拟合曲线。
9.根据权利要求2所述的固件安装进度监测方法,其特征在于,所述显示固件安装的进度包括剩余时间和进度百分比。
10.一种计算机可读存储介质,其特征在于,所述存储介质存储计算机指令,所述计算机指令运行时运行如权利要求1-9任一所述的固件安装进度监测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711022080.0A CN107861735B (zh) | 2017-10-26 | 2017-10-26 | 一种固件安装进度监测方法和计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711022080.0A CN107861735B (zh) | 2017-10-26 | 2017-10-26 | 一种固件安装进度监测方法和计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107861735A true CN107861735A (zh) | 2018-03-30 |
CN107861735B CN107861735B (zh) | 2020-07-31 |
Family
ID=61696846
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711022080.0A Active CN107861735B (zh) | 2017-10-26 | 2017-10-26 | 一种固件安装进度监测方法和计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107861735B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108647038A (zh) * | 2018-06-26 | 2018-10-12 | 桂林航天工业学院 | 一种基于wifi和超声波通信的FPGA在线更新系统及更新方法 |
CN112748399A (zh) * | 2020-12-28 | 2021-05-04 | 北京科技大学 | 一种基于多pd接收机的可见光三维定位系统及方法 |
CN116205615A (zh) * | 2023-05-06 | 2023-06-02 | 中国核工业二三建设有限公司 | 衡量核能工程金属对象预制安装进度的方法及装置 |
CN117055922A (zh) * | 2023-08-14 | 2023-11-14 | 北京小米机器人技术有限公司 | Ota升级方法、装置、机器人及存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103925929A (zh) * | 2013-01-14 | 2014-07-16 | 北京中交兴路信息科技有限公司 | 一种移动目标运动距离统计方法和装置 |
CN104123214A (zh) * | 2013-04-26 | 2014-10-29 | 阿里巴巴集团控股有限公司 | 基于运行时数据的任务执行进度度量和展示的方法及系统 |
US20150261645A1 (en) * | 2012-12-04 | 2015-09-17 | Tencent Technology (Shenzhen) Company Limited | Method and device for displaying incremental update progress |
CN105868088A (zh) * | 2016-03-28 | 2016-08-17 | 乐视控股(北京)有限公司 | 进度条显示方法及装置 |
CN106325992A (zh) * | 2016-08-20 | 2017-01-11 | 国云科技股份有限公司 | 一种计算分布式环境长任务进度的方法 |
CN106649049A (zh) * | 2016-05-09 | 2017-05-10 | 海尔优家智能科技(北京)有限公司 | 一种数据下载进度显示方法及装置 |
CN107085860A (zh) * | 2017-05-17 | 2017-08-22 | 上海联影医疗科技有限公司 | 基于计算机断层成像系统的图像重建方法和装置 |
CN107229530A (zh) * | 2017-06-29 | 2017-10-03 | 上海联影医疗科技有限公司 | 进程间的通信方法、存储介质以及计算机设备 |
-
2017
- 2017-10-26 CN CN201711022080.0A patent/CN107861735B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150261645A1 (en) * | 2012-12-04 | 2015-09-17 | Tencent Technology (Shenzhen) Company Limited | Method and device for displaying incremental update progress |
CN103925929A (zh) * | 2013-01-14 | 2014-07-16 | 北京中交兴路信息科技有限公司 | 一种移动目标运动距离统计方法和装置 |
CN104123214A (zh) * | 2013-04-26 | 2014-10-29 | 阿里巴巴集团控股有限公司 | 基于运行时数据的任务执行进度度量和展示的方法及系统 |
CN105868088A (zh) * | 2016-03-28 | 2016-08-17 | 乐视控股(北京)有限公司 | 进度条显示方法及装置 |
CN106649049A (zh) * | 2016-05-09 | 2017-05-10 | 海尔优家智能科技(北京)有限公司 | 一种数据下载进度显示方法及装置 |
CN106325992A (zh) * | 2016-08-20 | 2017-01-11 | 国云科技股份有限公司 | 一种计算分布式环境长任务进度的方法 |
CN107085860A (zh) * | 2017-05-17 | 2017-08-22 | 上海联影医疗科技有限公司 | 基于计算机断层成像系统的图像重建方法和装置 |
CN107229530A (zh) * | 2017-06-29 | 2017-10-03 | 上海联影医疗科技有限公司 | 进程间的通信方法、存储介质以及计算机设备 |
Non-Patent Citations (2)
Title |
---|
孙焕良,邱邦华,魏溯华: "一种优化的自底向上时间序列分段算法", 《沈阳建筑大学学报》 * |
白鹤,吕红亮,王劲林: "进度显示的大文件上传组件的设计与实现", 《计算机工程与应用》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108647038A (zh) * | 2018-06-26 | 2018-10-12 | 桂林航天工业学院 | 一种基于wifi和超声波通信的FPGA在线更新系统及更新方法 |
CN108647038B (zh) * | 2018-06-26 | 2023-04-11 | 桂林航天工业学院 | 一种基于wifi和超声波通信的FPGA在线更新系统及更新方法 |
CN112748399A (zh) * | 2020-12-28 | 2021-05-04 | 北京科技大学 | 一种基于多pd接收机的可见光三维定位系统及方法 |
CN112748399B (zh) * | 2020-12-28 | 2024-02-13 | 北京科技大学 | 一种基于多pd接收机的可见光三维定位系统及方法 |
CN116205615A (zh) * | 2023-05-06 | 2023-06-02 | 中国核工业二三建设有限公司 | 衡量核能工程金属对象预制安装进度的方法及装置 |
CN117055922A (zh) * | 2023-08-14 | 2023-11-14 | 北京小米机器人技术有限公司 | Ota升级方法、装置、机器人及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN107861735B (zh) | 2020-07-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107861735A (zh) | 一种固件安装进度监测方法和计算机可读存储介质 | |
CN109844865A (zh) | 用于医学图像分析的网络、决策支持系统和相关图形用户界面(gui)应用 | |
CN101606182B (zh) | 从3d绘制中选择供查看的数据集 | |
CN111476777B (zh) | 胸片图像处理方法、系统、可读存储介质和设备 | |
CN109754447A (zh) | 图像生成方法、装置、设备和存储介质 | |
CN105872046A (zh) | 一种ct设备的云端虚拟机控制系统及方法 | |
CN101322157A (zh) | 用于在根据成像数据的参数重构中数据驱动的自适应网格生成时的用户交互的系统和方法 | |
US20120271840A1 (en) | Systems and methods for storing and providing scan protocol information | |
CN111476776B (zh) | 胸部病灶位置确定方法、系统、可读存储介质和设备 | |
CN1875886B (zh) | 医用图像显示装置和系统、以及x射线计算机断层摄影装置 | |
US20110026795A1 (en) | Method and image-processing system for generating a volume-viewing image of the interior of a body | |
CN110969623B (zh) | 一种肺部ct多征象自动检测方法、系统、终端及存储介质 | |
CN108257111A (zh) | 在x射线成像中的自动化图像检验 | |
JP6185262B2 (ja) | 核医学骨画像解析技術 | |
US20230071965A1 (en) | Methods and systems for automated scan protocol recommendation | |
CN114175174A (zh) | 用于生物治疗规划和决策支持的系统和方法 | |
CN105455779A (zh) | 用于优化检查的方法 | |
CN102081051A (zh) | 确定样本体积表现的ct方法和系统、软件及计算设备 | |
JP2020521961A (ja) | エミッショントモグラフィで反復再構成された画像の定量的な保証の尺度として信頼値を提供するシステム及び方法 | |
CN103976758B (zh) | 自动化体图像检查 | |
CN106821406A (zh) | 医学成像系统 | |
Søgaard et al. | The optimality of different strategies for supplemental staging of non–small-cell lung cancer: a health economic decision analysis | |
CN104541183B (zh) | 用于利用连续的床移动的分布式列表模式飞行时间重建的虚拟框架 | |
CN107767961B (zh) | 面向接骨板类型判别的骨骼模板设计方法 | |
CN106055326A (zh) | 一种程序处理方法及调度服务器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP01 | Change in the name or title of a patent holder | ||
CP01 | Change in the name or title of a patent holder |
Address after: 201807 Shanghai City, north of the city of Jiading District Road No. 2258 Patentee after: Shanghai Lianying Medical Technology Co., Ltd Address before: 201807 Shanghai City, north of the city of Jiading District Road No. 2258 Patentee before: SHANGHAI UNITED IMAGING HEALTHCARE Co.,Ltd. |