一种状态显示方法、系统、装置及可读存储介质与流程

文档序号:21407972发布日期:2020-07-07 14:42阅读:119来源:国知局
一种状态显示方法、系统、装置及可读存储介质与流程

本发明涉及计算机技术领域,特别涉及一种状态显示方法、状态显示装置、状态显示设备及计算机可读存储介质。



背景技术:

现有的bios一般指uefibios,传统bios的基本输入/输出需要通过中断来完成,没有提供异步工作模式,相较传统的bios,uefi不再为开发者提供中断支持,但在uefi内部还是使用了时钟中断,所有的异步操作都可以通过事件(event)来完成。

setup作为系统配置选项清单,提供了计算机最底层、最直接的硬件设置和控制功能。在某些场景下,用户在setup界面修改某些选项时,往往会设置回调函数来执行相应的任务,由于回调函数的优先级与setupapplication的优先级相同且为同步事件,因此在执行回调函数时,用户在setup界面的所有操作都将被屏蔽,如果该回调函数为比较耗时的动作,则在执行时,用户直观上时系统处于宕机状态,直到回调函数执行结束方能正常操作。然而,用户无法直接确定回调函数在什么时候执行完毕,只能进行等待。且若回调函数执行过程中出现问题,则会一直处于宕机状态,用户也无法确定回调函数处于正常运行状态还是处于宕机状态,只能进行等待,浪费了大量的时间。因此现有技术会对用户的工作效率造成不利影响,同时严重影响了用户的使用体验。

因此,如何解决现有技术降低用户的工作效率,严重影响用户的使用体验的问题,是本领域技术人员需要解决的技术问题。



技术实现要素:

有鉴于此,本发明的目的在于提供一种状态显示方法、状态显示设备、状态显示装置及计算机可读存储介质,解决了现有技术降低用户的工作效率,严重影响用户的使用体验的问题。

为解决上述技术问题,本发明提供了一种状态显示方法,包括:

当检测到目标回调函数执行时,获取所述目标回调函数的执行信息;

利用计时器函数、对话框函数以及所述执行信息生成状态对话框,以便显示执行状态;

当所述目标回调函数执行完毕,则关闭所述状态对话框。

可选地,所述利用计时器函数、对话框函数以及所述执行信息生成状态对话框,包括:

利用所述计时器函数统计执行时长,并按照预设周期更新所述执行时长;

获取所述目标回调函数的当前状态;

利用所述对话框函数,根据所述执行时长、所述当前状态和所述执行信息生成所述状态对话框。

可选地,所述利用所述对话框函数,根据所述执行时长、所述当前状态和所述执行信息生成所述状态对话框,包括:

确定目标对话框模板;

将所述执行时长、所述当前状态和所述执行信息输入所述目标对话框模板;

利用所述对话框函数对所述目标对话框模板进行渲染,得到所述状态对话框。

可选地,所述当所述目标回调函数执行完毕,包括:

判断所述目标回调函数的当前状态是否为完成状态;

若所述当前状态为所述完成状态,则确定所述目标回调函数执行完毕。

可选地,还包括:

根据获取的按键设置指令,将所述按键设置指令指定的按键确定为中断按键。

可选地,还包括:

当检测到所述中断按键被按下时,停止执行所述目标回调函数,并关闭所述状态对话框。

可选地,所述获取所述目标回调函数的执行信息,包括:

利用安装在内核中的人机交互接口获取所述执行信息。

本发明还提供了一种状态显示装置,包括:

执行信息获取模块,用于当检测到目标回调函数执行时,获取所述目标回调函数的执行信息;

生成模块,用于利用计时器函数、对话框函数以及所述执行信息生成状态对话框,以便显示执行状态;

关闭模块,用于当所述目标回调函数执行完毕,则关闭所述状态对话框。

本发明还提供了一种状态显示设备,包括存储器和处理器,其中:

所述存储器,用于保存计算机程序;

所述处理器,用于执行所述计算机程序,以实现上述的状态显示方法。

本发明还提供了一种计算机可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现上述的状态显示方法。

本发明提供的状态显示方法,当检测到目标回调函数执行时,获取目标回调函数的执行信息;利用计时器函数、对话框函数以及执行信息生成状态对话框,以便显示执行状态;当目标回调函数执行完毕,则关闭状态对话框。

可见,该方法获取目标回调函数的执行信息,通过计时器函数统计目标回调函数的执行时长,同时利用对话框函数生成对应的状态对话框,以便直观地显示目标回调函数的执行状态,使用户可以确定目标回调函数的执行状况。当目标回调函数执行完毕后,则关闭状态对话框,表示执行完毕,使用户可以直观地确定目标回调函数执行完毕,进而进行后续操作。该方法通过生成状态对话框的方式对目标函数的执行状态进行显示,可以使用户直观地了解目标回调函数的执行情况,准确地确定执行结束的时间,减少了用户因无法确定回调函数是否执行完毕而浪费的等待时间,避免了回调函数执行错误而用户无法得知导致的等待时间的浪费,改善了用户的使用体验,解决了现有技术存在的对用户的工作效率造成不利影响,同时严重影响用户的使用体验的问题。

此外,本发明还提供了一种状态显示装置、状态显示设备及计算机可读存储介质,同样具有上述有益效果。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本发明实施例提供的一种状态显示方法流程图;

图2为本发明实施例提供的一种状态对话框生成方法流程图;

图3为本发明实施例提供的一种执行中断方法流程图;

图4为本发明实施例提供的一种状态显示装置的结构示意图;

图5为本发明实施例提供的一种状态显示设备的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

请参考图1,图1为本发明实施例提供的一种状态显示方法流程图。该方法包括:

s101:当检测到目标回调函数执行时,获取目标回调函数的执行信息。

本发明提供的状态显示方法中的全部或部分步骤可以由具有uefibios系统的计算机或服务器执行,计算机或服务器的具体型号本实施例不做限定。在利用setup配置系统中的某些选项时,需要调用对应的回调函数,即callback函数,执行相应的动作或任务,最终完成选项的配置。

现有技术中,由于callback函数的执行与setupapplication为同一优先级的操作,因此在调用回调函数时,在setup界面的所有操作均将被屏蔽,用户无法确定回调函数始终正常执行,也无法确定回调函数在何时执行完毕。

例如,可以利用回调函数设置bmcip状态,将bmcip从static修改为dhcp。在调用该回调函数后,bios会向bmc(基板管理控制器)发送ipmicommand(ipmi指令),bmc在接受到ipmicommand后,向dhcpserver发送请求,dhcpserver会为所有服务器的bmc分配新的ip,当接受到bmcip设置success信息时确定执行完毕。当服务器较多时,分配过程需要较长时间,用户无法得知是否执行完成;若dhcpserver发生故障,则回调函数执行故障,bmc迟迟无法获取新的ip,因此回调函数无法执行完成,biossetup将处于宕机状态,用户无法得知该情况,只能进行等待,浪费了大量的时间。因此现有技术会对用户的工作效率造成不利影响,同时严重影响了用户的使用体验。

为解决上述问题,本实施例在检测到目标回调函数执行时,获取目标回调函数的执行信息。目标回调函数可以为任意一个回调函数,其具体内容、具体执行过程和调用方法本实施例不做限定。执行信息用于表示目标回调函数的具体信息,其具体内容不做限定,例如可以包括目标回调函数对应的回调函数名、回调函数编号、配置的选项名称、event参数、对话框title、对话框info等信息,或者还可以包括目标回调函数的介绍信息、目标回调函数的具体代码等。

进一步,为了准确获取执行信息,本实施例优选的,利用安装在内核中的人机交互接口获取执行信息。具体的,人机交互接口可以为protocol,在计算机或服务器的post过程的dxe阶段,将该人机交互接口安装到内核中。在目标回调函数执行时,可以定位该人机交互接口protocol,将执行信息传入人机交互接口protocol,完成执行信息的获取。人机交互接口protocol的具体形式本实施例不做限定,例如其原型可如下:

s102:利用计时器函数、对话框函数以及执行信息生成状态对话框,以便显示执行状态。

在获取执行信息后,利用计时器函数、对话框函数以及执行信息生成状态对话框,以便显示执行状态。计时器函数也可以被称为计时器事件,用于记录目标回调函数的执行时长,以便用户了解目标回调函数执行过程所用的时间,进一步,用户可以通过与目标回调函数正常执行所用的时长进行比对,判断是否发生因执行故障导致的宕机情况。对话框函数用于生成状态对话框,状态对话框中显示有计时器函数记录的执行时长、获取到的执行信息,以及其他信息。其他信息的具体内容本实施例不做限定,例如可以包括目标回调函数的当前状态,即目标回调函数当前的运行状态,具体可以为正常、故障或其他状态等。利用状态对话框可以在目标回调函数执行过程中限制目标回调函数的执行状态,便于用户了解目标回调函数的执行情况。

s103:当目标回调函数执行完毕,则关闭状态对话框。

具体的,可以调用messageboxdestory功能关闭状态对话框。在目标回调函数执行完毕后,关闭状态对话框,可以直观地表示目标回调函数已执行完毕,以便用户得到目标回调函数对应的选项已配置完毕。本实施例并不限定确定目标回调函数执行完毕的具体方法,例如可以检测目标回调函数对应的选项是否被设置为目标状态,若是,则确定目标回调函数执行完毕;或者可以判断目标回调函数的当前状态是否为完成状态,若是,则确定目标回调函数执行完毕。

应用本发明实施例提供的状态显示方法,获取目标回调函数的执行信息,通过计时器函数统计目标回调函数的执行时长,同时利用对话框函数生成对应的状态对话框,以便直观地显示目标回调函数的执行状态,使用户可以确定目标回调函数的执行状况。当目标回调函数执行完毕后,则关闭状态对话框,表示执行完毕,使用户可以直观地确定目标回调函数执行完毕,进而进行后续操作。该方法通过生成状态对话框的方式对目标函数的执行状态进行显示,可以使用户直观地了解目标回调函数的执行情况,准确地确定执行结束的时间,减少了用户因无法确定回调函数是否执行完毕而浪费的等待时间,避免了回调函数执行错误而用户无法得知导致的等待时间的浪费,改善了用户的使用体验,解决了现有技术存在的对用户的工作效率造成不利影响,同时严重影响用户的使用体验的问题。

基于上述发明实施例,在一种可能的实施方式中,利用状态对话框显示目标回调函数的当前状态,以便在目标回调函数执行故障导致宕机时使用户及时了解当前情况。请参考图2,图2为本发明实施例提供的一种状态对话框生成方法流程图,包括:

s201:利用计时器函数统计执行时长,并按照预设周期更新执行时长。

本实施例并不限定计时器函数的具体内容,例如可以包括notify函数,利用notify函数按照预设周期更新执行时长。预设周期的具体大小本实施例不做限定,例如可以为每秒一次。

s202:获取目标回调函数的当前状态。

本实施例并不限定获取目标回调函数的当前状态的具体方法,例如可以获取event参数,利用event参数确定目标回调函数的当前状态。对于当前状态的获取频率,本实施例不做限定,例如可以为实时获取。优选的,获取当前状态的步骤可以与执行时长的更新频率相同,即利用notify函数按照预设周期更新执行时长,同时获取目标回调函数的当前状态。

s203:利用对话框函数,根据执行时长、当前状态和执行信息生成状态对话框。

在获取当前状态后,利用对话框函数,根据执行时长、当前状态和执行信息生成对应的状态对话框,以便显示目标回调函数的执行状态。

进一步,为了减少生成状态对话框所用的时间,可以提前设置对话框模板,利用对话框模板生成状态对话框,具体的:

s2031:确定目标对话框模板。

本实施例并不限定确定目标对话框模板的具体方法,例如可以按照预设顺序确定目标对话框模板;或者可以随机确定目标对话框模板;或者可以建立回调函数与对话框模板之间的对应关系,将与目标回调函数相对应的对话框模板确定为目标对话框模板。

s2032:将执行时长、当前状态和执行信息输入目标对话框模板。

在确定目标对话框模板后,将执行时长、当前状态和执行信息输入目标对话框模板,具体的,按照目标对话框目标的规定将执行时长等信息输入对应的位置,例如,title、info、执行时长以及当前状态填入目标对话框模板对应的位置。

s2033:利用对话框函数对目标对话框模板进行渲染,得到状态对话框。

本实施例对目标对话框的渲染方法不做限定,具体渲染方法和渲染过程可以参考相关技术,在此不再赘述。李永波目标对话框模板可以快速渲染得到状态对话框,完成状态对话框的生成。

基于上述发明实施例,在一种可能的实施方式中,若目标回调函数执行时间过长,而用户需要立即执行某些操作时,可以利用中断按键终止目标回调函数的执行。请参考图3,图3为本发明实施例提供的一种执行中断方法流程图,包括:

s301:根据获取的按键设置指令,将按键设置指令指定的按键确定为中断按键。

需要说明的是,设置中断按键的步骤需在调用目标调函数之前执行。按键设置指令可以由用户输入,或者可以由其他终端或设备发送。在获取按键设置指令后,将其指定的按键确定为中断按键,中断案件的具体内容本实施例不做限定,其可以为实体按键,例如键盘上的某个按键或某些按键的组合;或者可以为虚拟按键,例如某个电子屏幕上显示的按键。

s302:当检测到中断按键被按下时,停止执行目标回调函数,并关闭状态对话框。

在目标回调函数被调用执行的回程中,当检测到中断按键被按下时,立即停止执行目标回调函数,并关闭状态对话框。具体的,可以当检测到目标指令时确定中断按键被按下;或者当中断按键为实体按键时,在检测到实体按键被按下时确定检测到中断按键被按下。利用该方法可以根据用户需要中断目标回调函数的执行,在目标回调函数执行故障导致宕机或用户需要立即执行某些操作时满足用户的需求。

下面对本发明实施例提供的状态显示装置进行介绍,下文描述的状态显示装置与上文描述的状态显示方法可相互对应参照。

请参考图4,图4为本发明实施例提供的一种状态显示装置的结构示意图,包括:

执行信息获取模块410,用于当检测到目标回调函数执行时,获取目标回调函数的执行信息;

生成模块420,用于利用计时器函数、对话框函数以及执行信息生成状态对话框,以便显示执行状态;

关闭模块430,用于当目标回调函数执行完毕,则关闭状态对话框。

可选地,生成模块420,包括:

时长统计单元,用于利用计时器函数统计执行时长,并按照预设周期更新执行时长;

当前状态获取单元,用于获取目标回调函数的当前状态;

生成单元,用于利用对话框函数,根据执行时长、当前状态和执行信息生成状态对话框。

可选地,生成单元,用于,包括:

模板确定子单元,用于确定目标对话框模板;

信息输入子单元,用于将执行时长、当前状态和执行信息输入目标对话框模板;

渲染子单元,用于利用对话框函数对目标对话框模板进行渲染,得到状态对话框。

可选地,关闭模块430,包括:

状态判断单元,用于判断目标回调函数的当前状态是否为完成状态;

确定单元,用于若当前状态为完成状态,则确定目标回调函数执行完毕。

可选地,还包括:

按键设置模块,用于根据获取的按键设置指令,将按键设置指令指定的按键确定为中断按键。

可选地,还包括:

中断模块,用于当检测到中断按键被按下时,停止执行目标回调函数,并关闭状态对话框。

可选地,执行信息获取模块410,包括:

接口获取单元,用于利用安装在内核中的人机交互接口获取执行信息。

下面对本发明实施例提供的状态显示设备进行介绍,下文描述的状态显示设备与上文描述的状态显示方法可相互对应参照。

请参考图5,图5为本发明实施例提供的一种状态显示设备的结构示意图,该状态显示设备包括存储器、处理器,其中:

存储器510,用于保存计算机程序;

处理器520,用于执行计算机程序,以实现上述的状态显示方法。

下面对本发明实施例提供的计算机可读存储介质进行介绍,下文描述的计算机可读存储介质与上文描述的状态显示方法可相互对应参照。

本发明还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述的状态显示方法的步骤。该计算机可读存储介质可以包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应该认为超出本发明的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系属于仅仅用来将一个实体或者操作与另一个实体或者操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其他任何变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。

以上对本发明所提供的一种状态显示方法、状态显示装置、状态显示设备及计算机可读存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

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