CN110515634A - 通过远端工具程序更新固件的方法、电脑系统以及介质 - Google Patents

通过远端工具程序更新固件的方法、电脑系统以及介质 Download PDF

Info

Publication number
CN110515634A
CN110515634A CN201811176777.8A CN201811176777A CN110515634A CN 110515634 A CN110515634 A CN 110515634A CN 201811176777 A CN201811176777 A CN 201811176777A CN 110515634 A CN110515634 A CN 110515634A
Authority
CN
China
Prior art keywords
image shelves
firmware
shelves
computing device
existing
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
Application number
CN201811176777.8A
Other languages
English (en)
Other versions
CN110515634B (zh
Inventor
林友涵
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Quanta Computer Inc
Original Assignee
Quanta Computer Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Quanta Computer Inc filed Critical Quanta Computer Inc
Publication of CN110515634A publication Critical patent/CN110515634A/zh
Application granted granted Critical
Publication of CN110515634B publication Critical patent/CN110515634B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/442Shutdown
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/658Incremental updates; Differential updates

Abstract

一种系统及方法用于更新在计算装置中的固件存储装置的固件,且不会失去在该存储装置中的现有数据。一个示例性的方法包含本地工具程序从在该计算装置中的管理装置获取固件的现有映像档。该固件可位于该计算装置中的固件存储装置。然后,该方法可获取已更新固件的新映像档。该方法可以分析该现有映像档及该新映像档。根据该现有映像档及该新映像档的分析,该方法可以从该现有映像档及该新映像档产生已处理映像档。然后,该方法可以提供写入该已处理映像档至该计算装置的该固件存储装置。

Description

通过远端工具程序更新固件的方法、电脑系统以及介质
技术领域
本发明是有关于一种计算装置的固件更新,特别是有关于使用远端工具程序更新固件的系统及方法。
背景技术
固件是一种可提供低阶控制给计算装置的硬件的软件。固件可被永久安装于固件存储装置中的计算装置。例如计算装置中的非易失性存储器元件。当计算装置启动时,计算装置的中央处理单元可执行固件。计算装置可拥有存储在其存储器中的操作系统,且该操作系统可以获取固件。
偶尔,计算装置上的固件可能需要被更新。然而,更新固件是一个有挑战性的过程,因为需要在更新固件期间和之后保留计算装置的操作功能。因此,固件厂商经常尝试避免更新固件,因为在更新其间和之后维持计算装置的操作是有困难的。尽管如此,在一些情况下,更新固件给计算装置的需要是无法避免的。举例说明,在计算装置被运送之后,可能需要更新固件以修正被侦测到的功能问题。固件更新可能需要启用一些功能,这些功能已经被编程到计算装置中,但还没被已经在计算装置上运行的软件所获取。固件更新可能需要升级计算装置可以获取的文件格式的类型,或更新电池管理功能给计算装置。
一种目前更新固件的方法是根据启动(boot)进入已经在计算装置上的操作环境。通过该操作环境,可以执行将固件更新实施到固件存储装置中的处理。然而,此过程不能恢复操作环境失败的计算装置。举例说明,当固件毁损或计算装置上的操作环境无法操作时,不能通过此过程更新固件。
其他目前更新固件的方法是根据与固件存储装置连接的外部管理装置的使用。该外部管理装置可以允许固件存储装置被启动,即使发生在计算装置上的操作环境不能操作的情况下。然而,这种外部管理装置不能执行更复杂的功能,像是选择性读取、编辑、及写入数据至固件存储装置。因此,使用这种外部管理装置导致必须对整个固件重写或重制映像档(Reimage)。所以,当固件被重写时,任何在固件存储装置上之前的现有数据可能会遗失。这些数据的遗失可能无法被计算装置的拥有者或操作者所接受。
因此,需要一种用于更新固件的系统和方法,此系统和方法不需要对存储在固件存储装置上的整个固件重制映像档。即使在计算装置上的操作环境难以进入的情况下,这种系统和方法也应该能够提供更新的功能。此系统或方法应该具有复杂计算的功能,及执行固件存储装置上的客制化更新流程。最后,此系统和方法应该能够主导各种计算装置中的各种固件存储装置的更新,以便于操作。
发明内容
本公开文件的各种实施例针对在计算装置上更新固件的电脑实施方法。一种示例性的方法,根据本公开文件的一种实施例,首先获取固件的现有映像档。该固件可位于计算装置中的固件存储装置。然后,该方法可获取已更新的固件的新映像档。此方法能够分析现有映像档及新映像档。根据现有映像档及新映像档的分析,此方法可以从现有映像档及新映像档产生已处理的映像档。然后,此方法能够提供将已处理映像档写入计算装置的固件存储装置。
在一些示例中,此方法提供执行计算装置断电的全部步骤。
在一些示例中,分析现有映像档能够还包含将新映像档中的多个更新与现有映像档中的现有数据进行比较。这样的比较可以识别现有数据没有与新映像档冲突。
在其他示例中,产生已处理映像档还包含结合新映像档与没有冲突的现有数据以形成已处理映像档。
在其他示例中,此方法能够还包含重新启动固件存储装置及执行在固件存储装置上的已处理映像档。
本公开文件的其他示例性实施例提供一种电脑系统,此电脑系统被设置用于更新在计算装置上的现有映像档。电脑系统能够包含存储器及处理单元。处理单元可与存储器进行通讯。处理单元能够存储指令,当指令被执行时,使得电脑系统执行一系列操作。首先,电脑系统能够获取固件的现有映像档。固件位于计算装置中的固件存储装置上。然后,指令能够提供现有映像档及新映像档的分析。根据现有映像档及新映像档的分析,指令可以从现有映像档及新映像档产生已处理映像档。指令能够完成将已处理映像档写入计算装置的固件存储装置。
在一些示例中,计算装置能够被断电。
在其他示例中,分析现有映像档能够还包含将更新过程中的多个更新与现有映像档中的现有数据进行比较。这样的比较允许识别现有数据没有与新映像档冲突。
在其他示例中,产生已处理映像档能够还包含结合新映像档与没有冲突的现有数据以形成已处理映像档。
在其他示例中,指令能够还包含重新启动固件存储装置及执行在固件存储装置上的已处理映像档。
在第三实施例中,本公开文件提供一种用于存储指令的非暂态电脑可读取介质。当指令被电脑系统执行时,使得电脑系统执行一系列的操作。此一系列操作从获取固件的现有映像档开始。固件能够位于计算装置中的固件存储装置上。然后,指令能够提供现有映像档及新映像档的分析。根据现有映像档及新映像档的分析,指令可以从现有映像档及新映像档产生已处理映像档。最后,指令能够提供将已处理映像档写入计算装置的固件存储装置。
在其他示例中,计算装置能够被断电。
在其他示例中,分析现有映像档能够还包含将更新过程中的多个更新与现有映像档中的现有数据进行比较。这样的比较允许识别现有数据没有与新映像档冲突。
在其他示例中,产生已处理映像档能够还包含结合新映像档与没有冲突的现有数据以形成该已处理映像档。
在其他示例中,这些指令能够还包含重新启动固件存储装置及执行在固件存储装置上的已处理映像档。
附图说明
一同参阅附图及示例性实施例的描述,将更易于了解本公开文件的内容及其优点和图示。这些附图仅描绘了示例性实施例,并且因此不被认为限制各种实施例或请求项的范围。
图1A是依据固件存储装置的操作环境的习知方法所绘示的用户更新固件存储装置的示意图。
图1B是依据固件存储装置的操作环境所绘示的更新固件方法的流程图。
图2A是根据依据外部管理装置的习知方法所绘示的用户更新固件存储装置的示意图。
图2B是依据外部管理装置的更新固件方法的流程图。
图3A是根据本公开文件的示例性实施例所绘示的用户更新固件存储装置的示意图。
图3B是根据本公开文件的实施例所绘示的固件更新的方法的流程图。
图4及图5提供可以被用于执行本公开的各种形态的电脑系统的示意图。
有关于本公开文件中的术语“计算装置”,可以指具有硬件和软件的组件的任何电子供电或电池供电的设备,其中软件组件可以被配置用于装置上的操作特征。
有关于本公开文件中的术语“操作环境”,可以指具有允许软件去执行计算装置的功能的任何操作系统或环境。
具体实施方式
参考附图来描述本发明,其中在所有附图中使用相同的附图标记来表示相似或等效的元件。附图不是按比例绘制的,而是仅用于说明本发明。本发明的几个形态如下描述,并参考示例应用作为说明。应该理解的是,阐述了许多具体细节,关系和方法以提供对本发明的全面了解。然而,相关领域的普通技术人员将容易认识到,本发明可以被实行即便在没有一个或多个具体细节的情况下或没有利用其他方法来实施本发明。在其他情况下,未详细示出习知的结构或操作以避免模糊本发明。本发明不受所示的行为或事件的顺序所限制,因为一些行为可能以不同的顺序发生和/或与其他行为或事件同时发生。此外,并非所有说明的行为或事件都需要根据本发明的方法来实施。
由于现有系统的限制,本公开针对一种方法,此方法可以更新计算装置上的固件,并且不用从存储固件的固件存储装置中移除所有现有数据。一种示例性方法可包含首先断电计算装置,然后启动用于从远端工具程序更新固件的更新流程。远端工具程序可以检索固件的现有映像档。远端工具程序还能够检索已更新固件的新映像档。远端工具程序可以分析现有映像档和新映像档。根据对现有映像档和新映像档的分析,远端工具程序可以从现有映像档和新影映像档产生已处理的映像档。然后,远端工具程序可以提供将已处理的映像档写入计算装置的固件存储装置的功能。
因此,根据本公开文件的实施例的示例性方法,可以通过使用远端工具程序向固件存储装置提供更新。根据本公开文件的实施例的示例性方法,不需要计算装置的操作环境在可操作的情况,或者操作环境可以获取固件的情况。举例说明,该方法可以在计算装置被断电时执行所有步骤。
不同于已知的系统,本程序另外使用远端工具程序来更新固件。远端工具程序因为可以执行复杂的操作程序所以具有优势。例如,远端工具程序可以分析来自固件存储装置的映像档以识别哪些数据可以与新映像档被保留,以及哪些数据需要被替换。远端工具程序可以复制应该保存的旧固件数据;并将旧固件数据与固件更新相关联的新固件数据合并;并产生一个包含两者的已处理映像档。然后,远端工具程序可以指示管理装置将已处理映像档写入至固件存储装置。因此,已更新的固件存储装置可以在更新过程之前保留从装置来的数据。
图1A为根据已知方法所图示的系统100。系统100可以更新依据执行在计算装置上的操作系统的固件存储装置。系统100是用户110可取得的计算装置。系统100包含本地工具程序120和固件存储装置130。固件存储装置130是需要固件更新的系统100的一部分。用户110是能够启动固件存储装置130的更新流程的个体。本地工具程序120可以是一种在系统100上执行的操作环境。本地工具程序120可以在固件存储装置130上执行复杂任务。然而,系统100必须被开启并导入到本地工具程序120中以提供用户110取得本地工具程序120和固件存储装置130。另外,如果本地工具程序120出于任何原因不能存取固件存储装置130,那么用户110不能更新在系统100中的固件存储装置130。
图1B为图示更新固件存储装置的现有方法200的流程图,并且描绘依据固件存储装置的操作系统及图1A的系统100之间的操作。现在请参照图1B,方法200开始于对系统100和固件存储装置130进行通电。值得注意的是,方法200需要固件存储装置130和系统100两者通电,以便于方法200继续更新固件存储装置130。
在步骤220中,方法200将系统100启动(boot)到用于更新固件存储装置130上的固件的操作环境。操作环境可以是有关于图1A所讨论的本地工具程序120。值得注意的是,如果方法200不能成功地启动系统100进入操作环境,则该方法200不能继续更新固件存储装置130。在很多情况下,计算装置,如系统100,不能导入到操作环境中。举例说明,固件存储装置130可能具有损坏的软件,损坏的软件阻止系统100加载到本地工具程序120或适当地操作。
在步骤230中,方法200可以与系统100的操作环境执行更新程序以更新固件存储装置130上的固件。如果方法200已经成功地对系统100通电并成功启动进入用于更新固件存储装置130上的固件之操作环境,在方法200完成更新过程时,步骤230促使方法200能够保留在固件存储装置130上的现有数据。
在步骤240中,方法200已经完成更新程序并且在此刻重新启动系统100。重新启动系统100允许由方法200所提供、并且存储在固件存储装置130中的新更新以用于启动系统。
然而,如前面所述,方法200具有严重的限制,并影响根据方法200的更新程序的弹性。最重要的是,如果用户110不能同时执行:(1)打开系统100;和(2)启动进入本地工具程序120,则方法200不能进行。这些需求分别在方法200的步骤210和220中可被获取。
图2A图示一种系统300,系统300依据管理装置的使用来更新固件存储装置。系统300可让用户310取得且系统300包含管理装置340和固件存储装置330。管理装置340可以被设计在系统300的主机板上并且位于系统300的内部。即使系统被断电,管理装置340仍然可以工作,因为管理装置340具有可操作于待机模式的微处理器。固件存储装置330是需要更新程序的装置。用户310是能够启动更新程序给固件存储装置330的个体。管理装置340可以在固件存储装置330的外部。管理装置340可以根据来自用户310的指令完成基本任务。举例说明,管理装置340可以读取从固件存储装置330来的全部数据;删除在固件存储装置330中的全部数据;和/或将数据写入至固件存储装置330。将数据写入至固件存储装置330使得固件存储装置330上的现有数据无法被读取,因为计算装置将仅读取新写入的数据。当系统300不行通电时,管理装置340可以用于完成固件存储装置330的更新程序。因此,管理装置340可以提供可用于更新固件存储装置330的操作环境。
图2B图示一种依据管理装置的使用及图2A的系统300中的操作去更新固件的现有方法的流程图。此时,请参考图2B,方法400开始于在步骤410中的计算装置被断电。计算装置被断电时,可防止计算装置在管理装置读取固件存储装置的同时读取固件存储装置。如果计算装置和管理装置同时读取固件存储装置,则这些指令可能发生冲突并妨碍完成更新步骤。
在步骤420中,用户310可以通过管理装置340开始更新程序。用户310可以将已更新的固件映像档上传到管理装置340。已更新固件映像档提供固件的更新版本给固件存储装置330。
在步骤430中,管理装置340重制存储于固件存储装置330中的固件的映像档。也就是说,管理装置340首先删除固件存储装置330上的现有映像档,然后将已更新固件映像档写入到固件存储装置330。或者,管理装置340可以仅仅地将已更新的固件映像档覆写至固件存储装置330上。在此阶段,因为计算装置只读取新写入的数据,所以在固件存储装置330上的任何现有数据会遗失。
在步骤440中,针对固件存储装置330的映像档更新已经完成。因此,步骤440让系统300重新启动。重新启动系统300允许系统300使用由方法400所提供新的已更新固件来启动。
方法400具有严重限制,因为更新程序将固件存储装置330中的固件完全重制映像档。因此,方法400不允许固件的任何选择性编辑。方法400不允许保留先前应用于固件存储装置330中的固件的修改或设定。根据方法400的更新程序,用户310必须依据系统300的偏好(Preference),执行重新设定存储在固件存储装置330中的固件的冗余任务。
有鉴于方法200和400的限制,本公开提供一种新方法,可以不需要删除计算装置或系统的固件存储装置中的现有数据。此外,该方法可以使用于当计算装置或系统被断电时。因此,本公开提供了一种具有弹性的更新方法,此方法也提供了对现有技术的改进。
图3A图示一种系统500,其可通过使用远端工具程序520及管理装置540来更新固件存储装置。系统500可让用户510所读取,且包含计算装置505和远端工具程序520。计算装置505包含管理装置540和固件存储装置530。固件存储装置530是需要更新的装置。用户510是可以启动更新程序给固件存储装置530的个体。
如本公开所提供,管理装置540可以位于计算装置505的内部。管理装置540可以根据用户510的指令来完成基本任务。举例说明,管理装置540可以读取从固件存储装置530来的所有数据;删除从固件存储装置530来的所有数据;或将数据写入至固件存储装置530。将数据写入至固件存储装置530可以使得固件存储装置530上的现有数据不行被读取,因为计算装置将仅读取新写入的数据。当计算装置505不能通电时,管理装置540可以用于完成给固件存储装置530的更新程序。管理装置540可以操作如同用于更新固件存储装置530上的固件的操作环境。管理装置可以被设置有其自己的微处理器和存储器,可以与被计算装置运行的主操作系统分开执行。即使当计算装置被断电或无法启动时,管理装置也可以通过操作于待机模式来读取和/或写入固件存储装置。
远端工具程序520是独立于计算装置505的电脑系统。远端工具程序520可以通信地耦接计算装置505。此外,远端工具程序可以被设置用于与固件和计算装置505一起完成复杂任务,例如固件映像档的验证、检索和保存存储于固件存储装置530中的固件设定、和/或分析从固件存储装置530读取的旧映像档。举例说明,远端工具程序520可以是智能手机、台式电脑、笔记本电脑、平板电脑或是其他电脑系统,让用户510可以与之交互执行软件编辑和分析功能。
图3B图示根据本公开的实施例的一种用于更新固件存储装置的示例性方法的流程图。该方法可以操作于图3A的系统500上。回头参考图3B,该方法可以开始于在步骤610中的计算装置505被断电。计算装置505被断电能够防止计算装置505与管理装置540同时读取固件存储装置530。如果计算装置505与管理装置540同时读取固件存储装置530,将导致指令发生冲突且更新处理无法完成。
在步骤620中,用户510通过远端工具程序520开始更新程序用以更新存储在固件存储装置530上的固件。特别地,首先,用户510可以将已更新的固件映像档上传到远端工具程序520。使用远端工具程序520而非仅使用管理装置540,允许比如果仅使用管理装置540的方法更进一步的更新客制化。管理装置540的功能由管理装置的设计者决定,该设计者没有足够的知识了解要被更新的固件的细节。相反地,固件存储装置530的设计者可以设计远端工具程序520,该设计者熟悉固件的细节。因此,使用远端工具程序520让更新处理更容易的被实施和维护。
在步骤630中,远端工具程序520从管理装置540接收固件存储装置530中的固件的现有映像档。该步骤涉及管理装置540读取当前存在于固件存储装置530上的所有数据。管理装置540可以提供该数据作为远端工具程序520的现有映像档。
在步骤640中,远端工具程序520能够分析现有映像档。该分析涉及远端工具程序520将新固件与现有映像档进行比较。远端工具程序520可以识别现有数据中哪些部分的数据不会与新固件中的更新发生冲突。远端工具程序520可以产生已处理的映像档,该已处理的映像档保留由更新程序提供的所有更新,并保留从固件存储装置530来的所有没有冲突的现有数据。
举例说明,远端工具程序520可以通过执行固件映像档的安全检查及保持存储在现有映像档中的原始固件设定来分析现有映像档。首先,远端工具程序520可以从现有映像档获取公开金钥(Public Key)。然后,远端工具程序520可以使用公开金钥来确认由用户上传的新固件映像档被正确的私密金钥(Private Key)正确地签名,如果远端工具程序520不能验证正确的签名,则远端工具程序520可以拒绝更新请求。如果远端工具程序520可以验证正确的签名,则远端工具程序520可以检索存储在现有映像档中的原始固件设定。然后,远端工具程序520可以结合该设定与新固件映像档以产生已处理映像档。
在其他实施例中,远端工具程序520的设计者可以加入其他复杂分析,复杂分析对管理装置540是困难执行的,但对远端工具程序520是简单执行的。
在步骤650中,远端工具程序520可以命令管理装置540用固件存储装置530中的已处理映像档覆写现有映像档。举例说明,管理装置540可以从固件存储装置530清除现有映像档。现有映像档的清除可能是需要的,因为一些固件存储装置使用SPI闪存存储器。当写入SPI闪存存储器时,清除命令可以确保在新数据被写入固件存储装置之前,所有比特都被正确回复。
在步骤660中,针对固件存储装置530的固件更新处理已经完成。因此,步骤660提供系统500的重新启动。重新启动系统500允许固件存储装置530使用由方法600提供的新更新来启动。
因此,方法600提供一种技术,可以在不失去固件存储装置530上的所有现有数据的情况下去更新固件存储装置530。通过方法600,固件存储装置530上的任何没有冲突的现有数据可以在更新程序中被保留。不管固件存储装置530是否为通电或断电,这些更新都可以被完成。另外,不管用于更新固件存储装置530的操作环境是否可用,这些更新都可以被完成。
图4图示计算系统700的实施例,其中计算系统的组件通过总线(Bus)702彼此电性通讯。系统700包含处理单元(CPU或处理器)730,以及系统总线;其中该系统总线耦接各种系统组件至处理器730,前述系统组件包含系统存储器704(如只读存储器[ROM]706和随机存取存储器[RAM]708)。系统700可以包含高速存储器(High-speed Memory)的高速缓存(Cache),可以紧密接近地直接连接至处理器730、或被整合成为处理器730的一部分。系统700可将从存储器704和/或存储装置712来的数据复制到高速缓存728以供处理器730快速读取。以这样的方式,高速缓存可以在等待数据时,执行启动处理器730。这些和其他模块可以控制或被设置去控制处理器730执行各种动作。其他系统存储器704可能也被使用。存储器704可以包含具有不同性能特征的多种不同类型的存储器。处理器730可以包含嵌入在存储装置712中的任何一般用途的处理器和硬件模块或软件模块,例如模块1 714、模块2716和模块3718。硬件模块或软件模块被设置去控制处理器730以及将软件指令纳入实际处理器设计的特殊用途处理器。处理器730可以是完全独立的计算系统(Self-containedComputing System),并且包含多核心或处理器、总线、存储器控制器、高速缓存等。多核心处理器可以是对称的或不对称的。
为了让用户能够与计算装置700进行互动,输入装置720被提供作为输入机制(Input Mechanism)。输入装置720可包含用于语音的麦克风,用于手势或图形输入的触敏屏幕(Touch-sensitive Screen)、键盘、鼠标、运动输入等等。在一些实施例中,多模式系统(Multimodal System)可以让用户提供多种输入的类型以与系统700进行通信。在该实施例中,还提供了输出装置722。通信接口724可以支配和管理用户输入和系统的输出。
存储装置712可以是用于存储数据的非易失性存储器(Non-volatile Memory),且存储于非易失性存储器的数据可被电脑读取。存储装置712可以是磁带盒(MagneticCassettes)、闪存存储器卡(Flash Memory)、固态存储器装置(Solid State MemoryDevice)、数字通用磁盘(Digital Versatile Disks)、盒式磁带(Cartridges)、随机存取存储器(Random Access memories,RAM)708、只读存储器(Read-only Memory,ROM)706、以及它们的组合。
控制器710可以是系统700上的专用微控制器或处理器,例如基板管理控制器(Baseboard Management Controller,BMC)。在一些情况下,控制器710可以是智能平台管理接口(IPMI)的一部分。此外,在一些情况下,控制器710可以被嵌入在系统700的主机板或主电路板上。控制器710可以管理系统管理软件和平台硬件之间的接口。控制器710还可以与各种系统装置和组件(内部和/或外部)进行通信,例如控制器或周边组件,如以下进一步的描述。
控制器710可以产生对通知、警报和/或事件的特定响应,并与遥控装置或组件(如电子邮件信息,网络信息等)进行通信以产生用于自动硬件恢复程序等的指令或命令。管理员还可以与控制器710进行远端通信以启动或执行特定的硬件恢复程序或操作,如以下进一步的描述。
控制器710也可包含用于管理和维护由控制器710接收的事件、警报和通知的系统事件日志控制器(system event log controller)和/或存储装置。举例说明,控制器710或系统事件日志控制器可以接收警报或来自一个或多个装置和组件的通知,并将警报或通知维护在系统事件日志存储组件中。
闪存存储器732可以是由系统700用于存储和/或数据传输的电子非易失性电脑存储介质或芯片。闪存存储器732可以被电子清除和/或重新编程。例如:闪存存储器732可以包含可擦除可编程只读存储器(EPROM)、电子擦除式可复写只读存储器(EEPROM)、ROM、NVRAM或互补式金氧半场效晶体管(CMOS)。闪存存储器732可以存储当系统700首次通电时被系统700所执行的固件734,以及为了固件734所指定的一组配置。闪存存储器732还可存储被固件734所使用的配置。
固件734可以包含基本输入/输出系统或等同物,例如可延伸固件接口(Extensible Firmware Interface,EFI)或统一可延伸固件接口(United ExtensibleFirmware Interface,UEFI)。每次系统700启动时,固件734可被加载和执行如同顺序程序。固件734可以根据该组设置来识别、初始化、及测试存在系统700中的硬件。固件734可以在系统700上执行自我测试,例如自我加电测试(Power-on-Self-Test,POST)。该自我测试可以测试各种硬件组件的功能,例如硬盘驱动器、光学读取装置、冷却装置、存储器模块、扩充卡等。固件734可以处理和分配存储器704、ROM 706,RAM 708和/或存储装置712中的区域,以存储操作系统(Operating System,OS)。固件734可以加载启动加载器(Boost Loader)和/或操作系统,并且将系统700的控制给予操作系统。
系统700的固件734可以包含固件设置,固件设置定义固件734如何控制系统700中的各种硬件组件。固件设置可以决定系统700中的各种硬件组件被启动的顺序。固件734可以提供一种接口,例如UEFI,其允许设置各种不同的参数,且与固件默认设置中的参数有所不同。举例说明,用户(如管理员)可以使用固件734来指定计时器和总线速度;定义连接到系统700的周边设备;设置健康监测(例如风扇速度和CPU温度限制);和/或提供影响系统700的整体性能和使用功率的各种其他参数。虽然固件734被说明为存储在闪存存储器732中,但本领域的普通技术人员将容易认识到固件734可以被存储于其他存储器组件中,例如存储器704或只读存储器706。
系统700可以包含一个或多个传感器726。一个或多个传感器726可以包含,举例说明,一个或多个温度传感器(Temperature Sensors)、温度传感器(Thermal Sensors)、氧气传感器(Oxygen Sensors)、化学传感器(Chemical Sensors)、噪音传感器(NoiseSensors)、热传感器(Heat Sensors)、电流传感器(Current Sensors)、电压侦测器(Voltage Detector)、气流传感器(Air Flow Sensors)、流量传感器(Flow Sensors)、红外线温度计(Infrared Thermometers)、热通量传感器(Heat Flux Sensors)、温度计(Thermometers)、高温计(Pyrometer)等。一个或多个传感器726可以通过总线702与系统中的组件进行通信,例如,处理器、高速缓存728、闪存存储器732、通信接口724、存储器704、只读存储器706、随机存取存储器708、控制器710和存储装置712。一个或多个传感器726还可以经由一个或多个不同工具与系统中的其他组件进行通信,例如:内部集成电路(Inter-integrated Circuit,12C),通用型输出(General Purpose Output,GPO)等。系统700上的不同类型的传感器(如传感器726)还可以向控制器710报告参数,例如:散热风扇速度、功率状态、操作系统(OS)状态、硬件状态等的参数。
图5说明一种具有芯片组(Chipset)架构的电脑系统800的一实施例。其中,芯片组可用于执行或操作已描述的方法,及产生或显示于图形用户界面(Graphical UserInterface,GUI)。电脑系统800可包含用于实施已公开的的技术的电脑硬件、软件及固件。系统800可包含处理器810,处理器810能够执行被配置执行识别运算的软件、固件、以及硬件,处理器810也代表各种物理和/或逻辑上的不同资源的变化。处理器810可以与芯片组进行通讯,使得芯片组可以控制处理器810的输入和从处理器810的输出。在此实施例中,芯片组802将信息输出到如显示器736(图4)的输出装置814,并且可以读取及写入信息到存储装置816,存储装置816可以包含如磁性介质和固态介质。芯片组802也可以从RAM818读取及写入数据。用于与各种用户接口组件806连接的桥接器804,可用于与芯片组802连接。这种用户接口组件806可以包括键盘,麦克风,触摸检测和处理电路,以及诸如鼠标的定点等。在一般情况下,系统800的输入可以来自机器生成和/或人工生成的各种来源中的任何一个。
芯片组802还可以与具有不同物理接口的一个或多个通信接口808连接。这种通信接口可以包含用于有线和无线区域网络、宽带无线网络和个人区域网络的接口。此外,机器可以经由用户接口组件806接收来自用户的输入并执行合适的功能,例如通过使用处理器810解译这些输入的浏览功能。
此外,芯片组802还可以与固件812进行通讯,固件812可以在通电时由电脑系统800所执行。固件812可以基于一组固件配置来识别、初始化以及测试存在于电脑系统800中的硬件。固件812可以在系统800上执行开机自我测试(例如POST)。开机自我测试可以测试各种硬件组件802-818的功能。固件812可以处理和分配存储器818中的区域以存储OS(操作系统)。固件812可以加载一个启动加载器(Boost Loader)和/或OS,并将系统800的控制权交给OS。在一些情况下,固件812可以与硬件组件802-810和814-818进行通讯。在此,通过芯片组802、和/或一个或多个其他组件,固件812可以与硬件组件802-810和814-818进行通讯。在一些情况下,固件812可以直接与硬件组件802-810和814-818进行通信。
可以理解的是,以系统700和800作为示例,系统700和800可以具有多于一个处理器(例如处理器730、处理器810),或者可以是群组或一丛集的计算装置的一部分联网在一起,以提供更好的处理能力。
为了清楚地解释,在一些实施例中,本公开可被呈现为包括包含复数功能块的复数单个功能块,例如如装置、装置组件、步骤或实施于软件的方法中的程序、或硬件和软件的组合。
在一些实施例中,电脑可读取存储装置,介质和存储器可以包含具有比特流等的有线或无线信号。然而,当提及时,非暂态电脑可读取存储介质本身明确排除诸如能量、载波信号、电磁波和信号之类的介质。
根据上述示例的方法的实施,可以使用存储的电脑可执行指令、或是从电脑可读取介质可获得的电脑可执行指令。这样的指令可以包括,例如影响或其他配置让通用电脑、专用电脑或专用处理装置执行某一功能或一组功能的指令和数据。可以通过网络读取部分已使用的电脑资源。电脑的可执行指令可以是如二进制和中间格式的指令,例如组合语言、固件或原始码(Source Code)。
根据这些公开的装置实施方法可以包含硬件,固件和/或软件,并且可以采取各种形式因素中的任何一种。这种形式因素的典型示例包含笔记本电脑、智能手机、小型个人电脑、个人数字助理、机架式装置、独立装置等等。此处描述的功能还可以体现在周边装置或外接卡中。在其他实施例中,这样的功能还可以在不同芯片中的电路板上实施,或者在单一的装置中所执行的不同处理中实施。
可以在广泛地各种的操作环境中进一步实施各种实施例,这些实施例在一些情况下可以包括一个或多个服务器电脑、用户电脑或计算装置,可用于操作任何多种应用装置。用户或客户端装置可以包含任何数量的通用个人电脑,例如运行标准操作系统的桌上型电脑或笔记型电脑,以及执行移动软件的蜂窝系统(Cellular)、无线和手持装置,并且能够支持多种网络和信息的通讯协定。这样的系统还可以包括一些可运行各种商用操作系统的工作站,以及用于例如开发和数据库管理之类的其他已知应用。这些装置还可以包括其他电子装置,例如虚拟终端(Dummy Terminal)、精简型终端机(Thin-client)、游戏系统(GamingSystem)以及其他能够通过网络进行通信的装置。
就实施例的延伸或实施例的部分而言,其以硬件来实施,本揭露可利用以下技术中的任一者或其组合来实施:具有逻辑们的离散逻辑电路可用于实施逻辑功能在数据信号上;具有适当的组合的逻辑门的特殊应用集成电路(Application Specific IntegratedCircuit,ASIC);可编程硬件,例如可编程门阵列(PGA);和/或现场可编程门阵列(FPGA)等。
大部分实施例利用本领域技术人员熟悉的至少一个网络来支持使用各种可商业用的通讯协定,例如TCP/IP、OSI、FTP、UPnP、NFS、CIFS及AppleTalk等。网络可以是,例如局部区域网络、广域网络、虚拟私人网络、网际网络、企业内部网络(intranet)、商际网络(extranet)、公用交换电话网络、红外线网络、无线网络及其任何组合。
根据这些技术,装置实施方法可以包含硬件、固件和/或软件,并且可以采用各种形式因素中的任何一种。这种形式因素的典型例子包含服务器电脑、笔记本电脑、智能电话、小型个人电脑、个人数字助理等等。此处描述的功能还可以体现在周边装置或外接卡中。作为其他实施例,这样的功能还可以在不同芯片中的电路板上实施,或者在单一装置中执行的不同程序中实施。
在使用网站服务器(Web Server)的实施例中,网站服务器可以运行任何种类的服务器或中间层应用程序,包括HTTP服务器、FTP服务器、CGI服务器、数据服务器、Java服务器和商业应用服务器。回应用户装置的请求,网站服务器也可以执行程序或指令码(scripts)。例如,网站服务器可以执行一个或多个网站应用程序,这些网站应用程序可以作为一个或多个任何程序语言(如C、C#或C++)或任何指令码语言(如Perl、Python或TCL,以及它们的组合)。网站服务器还可以包含数据库服务器,包括在公开市场上可商业使用的那些数据库服务器。
如上所述,服务器系统可以包括各种存储数据和其他存储器和存储介质。这些可以存在于在各种位置,例如在一个或多个区域电脑(和/或存在于)的存储介质上;或通过网络遥控任何或全部电脑。在特定一组示例中,信息可以存储于本领域技术人员熟悉的存储区域网络(Storage-area Network,SAN)中。类似地,用于执行电脑、服务器或其他网络装置的功能所需要的任何必要文件,可以根据需要区域存储和/或远端存储。在系统包含电脑化装置的情况下,每个这样的装置可以包含可以经由总线电性耦合的硬件元件。例如,所述元件包括至少一个中央处理单元(CPU),至少一个输入装置(例如鼠标、键盘、控制器、触控显示器元件或小键盘)以及至少一个输出装置(例如显示装置、印表机或扩音器)。这样的系统也可以包含一个或多个存储装置,例如磁盘驱动器、光存储元件以及固态存储装置如随机存取存储器(RAM)、只读存储器(ROM)、可拆卸介质装置、记忆卡以及闪存记忆卡等。
具有程序码或部分程序码的存储介质和电脑可读取介质可以包括本领域中已知或使用过的任何适当的介质,包括但不限于用于存储和/或传输数据或信息的可拆卸及不可拆卸介质。可拆卸和不可拆卸介质包含RAM、ROM、EPROM、EEPROM、闪存存储器或其他存储技术、CD-ROM、数字多功能碟片(DVD)或其他光学存储、磁带盒、磁盘、磁盘存储器或其他磁性存储装置,可以用来存储所需的信息并且可以被系统装置读取。数据或信息可以包含电脑可读取指令、数据结构、程序模块或其他数据。基于本文所提供的技术和教示,本领域的普通技术人员将理解以其他方式和/或方法来实施本揭露文件的各个方面。
虽然本公开文件的各种实施例已在前文描述,但应该理解的是,它们仅以示例性作用所呈现,但本公开并不限于此。在不脱离本公开文件的精神或范围的情况下,可以根据本文的公开的实施例进行各种改变。因此,本公开文件的广度和范围不应该受到上述任何实施例而限制。相反地,本公开文件的范围应根据权利要求及其等同物来限定。
虽然有关于一个或多个实施方式已经说明和描述了本公开文件,但是在阅读和理解本说明书和附图后,本领域的普通技术人员将会想到等同的改变和修改。另外,虽然本公开文件的特定技术特征可能已经被若干实施中之一公开,但是这样的技术特征可以与其他实施例的一个或多个其他技术特征组合,对于任何给定的或特定的应用。
本文使用的术语仅用于描述特定实施例,而不旨在限制本发明。如本文所使用的,除非上下文另外明确指出,否则单数形式“一”、“一个”和“该”也包含复数形式。此外,就术语“包括”、“包含”、“具有”或其他变化用法被用于详细描述和/或请求项,这些术语旨在以类似于术语“包含的方式具有相同意思。
除非有其他定义,否则这里使用的所有术语(包括技术和科学术语)可被具有本领域的通常知识者所理解的相同的含义。此外,诸如通用字典中定义的术语应该被解释为具有与其在相关领域的上下文中的含义相一致的意思,并且不会被理解为理想化或过度正式的意义,除非在此明确地如此定义。
【符号说明】
100:系统 708:随机存取存储器
110:用户 710:控制器
120:本地工具程序 712:存储装置
130:固件存储装置 714~718:模块
200:方法 720:输入装置
210~240:步骤 722:输出装置
300:系统 724:通信接口
310:用户 726:传感器
330:固件存储装置 728:高速缓存
340:管理装置 730:处理器
400:方法 732:闪存存储器
410~440:步骤 734:固件
500:系统 736:显示器
505:计算装置 800:电脑系统
510:用户 802:芯片组
520:远端工具程序 804:桥接器
530:管理装置 806:用户接口组件
540:固件存储装置 808:通信接口
600:方法 810:处理器
610~660:步骤 812:固件
700:计算系统 814:输出装置
702:总线 816:存储装置
704:存储器 818:随机存取存储器
706:只读存储器

Claims (10)

1.一种电脑实施方法,该电脑实施方法被远端工具程序所执行用以更新计算装置上的固件,该计算装置通讯地耦接该远端工具程序,其中该远端工具程序可以完成更新程序,包含:
获取该固件的现有映像档,其中该固件位于该计算装置中的固件存储装置上;
获取已更新固件的新映像档;
分析该现有映像档及该新映像档;
根据该现有映像档及该新映像档的分析,从该现有映像档及该新映像档产生已处理映像档;以及
将该已处理映像档写入该计算装置的该固件存储装置。
2.如权利要求1所述的电脑实施方法,其中获取该固件的该现有映像档还包含从该计算装置上的管理装置接收该现有映像档;其中将该已处理映像档写入该固件存储装置还包含通过该管理装置以该已处理映像档覆写该现有映像档。
3.如权利要求2所述的电脑实施方法,其中分析该现有映像档还包含将该新映像档中的多个更新与该现有映像档中的现有数据进行比较,以识别该现有数据没有与该新映像档冲突;其中产生该已处理映像档还包含结合该新映像档与没有冲突的现有数据以形成该已处理映像档。
4.如权利要求2所述的电脑实施方法,还包含重新启动该计算装置使得该已处理映像档在该固件存储装置执行。
5.一种电脑系统,被设置通过远端工具程序以更新在计算装置上的现有映像档,其中该远端工具程序通讯地耦接该计算装置,包含:
存储器;以及
处理单元,与该存储器通讯且存储指令,当该指令被执行时,使得该远端工具程序执行操作,包含:
获取该固件的现有映像档,其中该固件位于该计算装置中的固件存储装置;
分析该现有映像档及该新映像档;
根据该现有映像档及该新映像档的分析,从该现有映像档及该新映像档产生已处理映像档;以及
将该已处理映像档写入该计算装置的该固件存储装置。
6.如权利要求5所述的电脑系统,其中获取该固件的该现有映像档还包含从计算装置上的管理装置接收该现有映像档;其中将该已处理映像档写入该固件存储装置还包含通过该管理装置以该已处理映像档覆写该现有映像档。
7.如权利要求6所述的电脑系统,其中分析该现有映像档还包含该将新映像档中的多个更新与该现有映像档中的现有数据进行比较,以识别该现有数据没有与该新映像档冲突;其中产生该已处理映像档还包含结合该新映像档与没有冲突的现有数据,并形成该已处理映像档;其中该指令还包含:
写入该已处理映像档之后,重新启动该计算装置;以及
在该固件存储装置的操作环境下,执行该已处理映像档。
8.一种非暂态电脑可读取介质,用以存储指令,当该指令被远端工具程序执行时,使得更新该电脑系统计算装置上的现有映像档,该计算装置通讯地耦接该远端工具程序,其中更新该现有映像档包含:
获取该固件的现有映像档,其中该固件位于该计算装置中的固件存储装置;
分析该现有映像档及该新映像档;
根据该现有映像档及该新映像档的分析,从该现有映像档及该新映像档产生已处理映像档;以及
将该已处理映像档写入该计算装置的该固件存储装置。
9.如权利要求8所述的非暂态电脑可读取介质,其中获取该固件的该现有映像档还包含从计算装置上的管理装置接收该现有映像档,及其中将该已处理映像档写入该固件存储装置还包含通过该管理装置以该已处理映像档覆写该现有映像档。
10.如权利要求9所述的非暂态电脑可读取介质,其中分析该现有映像档的该步骤还包含将该新映像档中的多个更新与该现有映像档中的现有数据进行比较,以识别该现有数据没有与该新映像档冲突;其中产生该已处理映像档的该步骤还包含结合该新映像档与没有冲突的该现有数据,并形成该已处理映像档;其中当该指令被执行时,还使得该电脑系统执行操作包含:
写入该已处理映像档之后,重新启动该计算装置;以及
在该固件存储装置的操作环境下,执行该已处理映像档。
CN201811176777.8A 2018-05-22 2018-10-10 通过远端工具程序更新固件的方法、电脑系统以及介质 Active CN110515634B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/986,234 US10503489B1 (en) 2018-05-22 2018-05-22 Updating firmware via a remote utility
US15/986,234 2018-05-22

Publications (2)

Publication Number Publication Date
CN110515634A true CN110515634A (zh) 2019-11-29
CN110515634B CN110515634B (zh) 2023-07-21

Family

ID=64100576

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811176777.8A Active CN110515634B (zh) 2018-05-22 2018-10-10 通过远端工具程序更新固件的方法、电脑系统以及介质

Country Status (5)

Country Link
US (1) US10503489B1 (zh)
EP (1) EP3572933B1 (zh)
JP (1) JP6701398B2 (zh)
CN (1) CN110515634B (zh)
TW (1) TWI743395B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115176232A (zh) * 2020-01-27 2022-10-11 惠普发展公司,有限责任合伙企业 固件损坏恢复
MX2022009542A (es) * 2020-02-14 2022-11-14 Arris Entpr Llc Sistemas y métodos para configuración de módem y reversión.
CN113641230A (zh) * 2020-04-27 2021-11-12 捷普科技(上海)有限公司 电脑系统
US11354259B1 (en) * 2020-12-08 2022-06-07 Hewlett Packard Enterprise Development Lp Computer system configurations based on accessing data elements presented by baseboard management controllers
US20220300276A1 (en) * 2021-03-18 2022-09-22 Quanta Computer Inc. Modular firmware composition

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2330508A1 (en) * 2008-09-24 2011-06-08 Hitachi Solutions, Ltd. Firmware update system, update image generation/distribution server device
CN105183515A (zh) * 2015-09-02 2015-12-23 深圳一电科技有限公司 云台固件升级的方法及装置
TW201702929A (zh) * 2015-07-01 2017-01-16 廣達電腦股份有限公司 更新電腦韌體的系統、方法與電腦可讀取儲存媒體
CN106445577A (zh) * 2015-08-12 2017-02-22 广达电脑股份有限公司 更新方法、服务器系统以及非瞬态计算机可读取介质
CN106484442A (zh) * 2015-08-25 2017-03-08 佛山市顺德区顺达电脑厂有限公司 服务器系统及更新开机映像档的方法

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004031961A1 (en) 2002-09-30 2004-04-15 Insignia Solutions Plc Efficient system and method for updating a memory device
JP5057519B2 (ja) * 2004-06-01 2012-10-24 レッド・ベンド・リミテツド 記憶装置に記憶されたコンテンツをインプレース更新するための方法およびシステム
US7661102B2 (en) * 2004-08-20 2010-02-09 Smith Micro Software, Inc. Method for reducing binary image update package sizes
US20070043833A1 (en) 2005-08-22 2007-02-22 Inventec Corporation Computer platform system program remote upgrading control method and system
JP2010086370A (ja) * 2008-10-01 2010-04-15 Canon Inc 画像形成装置、配信サーバーおよびファームウェアアップデート方法
US20100228960A1 (en) 2009-03-06 2010-09-09 Shih-Yuan Huang Virtual memory over baseboard management controller
JP5342302B2 (ja) * 2009-03-30 2013-11-13 株式会社日立ソリューションズ ファームウェア更新システム、ファームウェア配信サーバ、及びプログラム
JP5478986B2 (ja) * 2009-08-21 2014-04-23 株式会社日立ソリューションズ 情報機器及びプログラム
US8397230B2 (en) * 2009-11-09 2013-03-12 Bank Of America Corporation Software updates using delta patching
KR20110104383A (ko) * 2010-03-16 2011-09-22 삼성전자주식회사 펌웨어 업데이트 서비스 장치 및 방법
US20120144380A1 (en) * 2010-12-07 2012-06-07 Samsung Electronics Co. Ltd. Method for generating delta file using basic blocks
US9092300B2 (en) 2013-04-18 2015-07-28 Ottr Products, Llc Peripheral device and method for updating firmware thereof
TWI521435B (zh) 2014-03-05 2016-02-11 啟碁科技股份有限公司 電子裝置及其韌體更新方法
TWI515660B (zh) 2014-12-17 2016-01-01 緯創資通股份有限公司 韌體變量更新方法
JP6600240B2 (ja) * 2015-12-08 2019-10-30 キヤノン株式会社 情報処理装置、ファームウェア更新方法、およびプログラム
KR20180131840A (ko) * 2017-06-01 2018-12-11 한국전자통신연구원 펌웨어 업데이트 지원 장치 및 그 방법
US11416236B2 (en) * 2017-07-07 2022-08-16 Qualcomm Incorporated Over-the-air (OTA) updating of partially compressed firmware

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2330508A1 (en) * 2008-09-24 2011-06-08 Hitachi Solutions, Ltd. Firmware update system, update image generation/distribution server device
TW201702929A (zh) * 2015-07-01 2017-01-16 廣達電腦股份有限公司 更新電腦韌體的系統、方法與電腦可讀取儲存媒體
CN106445577A (zh) * 2015-08-12 2017-02-22 广达电脑股份有限公司 更新方法、服务器系统以及非瞬态计算机可读取介质
CN106484442A (zh) * 2015-08-25 2017-03-08 佛山市顺德区顺达电脑厂有限公司 服务器系统及更新开机映像档的方法
CN105183515A (zh) * 2015-09-02 2015-12-23 深圳一电科技有限公司 云台固件升级的方法及装置

Also Published As

Publication number Publication date
TW202004496A (zh) 2020-01-16
US10503489B1 (en) 2019-12-10
JP6701398B2 (ja) 2020-05-27
EP3572933A1 (en) 2019-11-27
EP3572933B1 (en) 2023-08-02
JP2019204488A (ja) 2019-11-28
CN110515634B (zh) 2023-07-21
US20190361692A1 (en) 2019-11-28
TWI743395B (zh) 2021-10-21

Similar Documents

Publication Publication Date Title
CN110515634A (zh) 通过远端工具程序更新固件的方法、电脑系统以及介质
EP3460653A1 (en) Preserving firmware setting during firmware update
US10846160B2 (en) System and method for remote system recovery
EP3470956A1 (en) Dynamically adjust maximum fan duty in a server system
TWI578233B (zh) 統一韌體管理系統、非揮發電腦可讀取媒體以及統一韌體管理方法
CN108228209A (zh) 自动更新服务器系统的元件的固件的系统、方法和介质
CN104679540B (zh) 计算机系统与计算机系统启动方法
CN104424044A (zh) 伺服器系统
US10533563B2 (en) Management of multiple fan modules
CN112181499A (zh) 用于计算机装置的可靠启动系统
US7921230B2 (en) USB devices pre-configuration for KVM switch
US10366226B2 (en) Malicious code analysis device and method based on external device connected via USB cable
TW202013135A (zh) 用於管理計算裝置之電腦實施方法、計算裝置及非暫態電腦可讀取儲存媒體
US20110113227A1 (en) Electronic equipment and boot method, storage medium thereof
US20180157475A1 (en) System and method for updating a uefi image in an information handling system
EP3131031A1 (en) Content security processing method and electronic device supporting the same
US10296730B2 (en) Systems and methods for automatic generation and retrieval of an information handling system password
CN111782474A (zh) 日志处理方法、装置、电子设备和介质
US20200210166A1 (en) Systems and methods for enforcing update policies while applying updates from bootable image file
CN111399926A (zh) 下载启动程序的方法和装置
Cox et al. Getting started with Python for the internet of things: leverage the full potential of Python to prototype and build IoT projects using the Raspberry Pi
TW201637005A (zh) 快閃操作的儲存裝置
US10417030B2 (en) Apparatus and method for compile time construction of memory structures
US9264398B2 (en) Loading an operating system of a diskless compute node using a single virtual protocol interconnect (‘VPI’) adapter
KR102488645B1 (ko) 가상 운영체제 서비스 제공을 위한 전자 장치 및 방법

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