CN104903853A - 动态固件更新 - Google Patents
动态固件更新 Download PDFInfo
- Publication number
- CN104903853A CN104903853A CN201380070560.8A CN201380070560A CN104903853A CN 104903853 A CN104903853 A CN 104903853A CN 201380070560 A CN201380070560 A CN 201380070560A CN 104903853 A CN104903853 A CN 104903853A
- Authority
- CN
- China
- Prior art keywords
- data object
- version
- consumer
- firmware
- upgrading
- 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
-
- 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
- G06F8/654—Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
-
- 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
- G06F8/656—Updates while running
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
动态固件更新过程包括在固件存储器中找到动态数据对象的经更新的版本。标识用于被消费者使用中的动态数据对象的使用中版本的回叫句柄。使用回叫句柄通知消费者动态数据对象的经更新的版本。
Description
背景技术
现代计算机和基于计算机的系统典型地包括平台固件,即存储在非易失性“固件”存储器中并且用于初始化基于计算机的系统和用于基于计算机的系统的低级别功能性的代码(表示指令和非指令类型数据)。典型地,将固件代码加载到相对快速的易失性存储器中以供使用。
有时合期望的是更新固件,例如以修复固件故障、添加特征或微调系统参数。在较陈旧的计算机系统中,更新固件可以牵涉换出编码有固件的一个固件只读存储器(ROM)以被编码有经更新的固件的另一个取代。最近,固件存储在可重写非易失性存储器中使得固件更新可以就地更新。一旦系统被再初始化(即重启),则这样的更新可以生效。
附图说明
以下附图表示示例并且不是本发明本身。
图1是依照示例的系统的示意图。
图2是可实现在图1的系统上并且依照示例的数据-对象请求处置过程的流程图。
图3是可实现在图1的系统上并且依照示例的固件-更新过程的流程图。
图4是依照示例的另一系统的示意图。
图5是可实现在图4的系统上并且依照示例的固件-更新过程的流程图。
具体实施方式
在关键任务上下文中(例如网络支持的医疗警报和其它紧急服务、金融交易和在线零售,其中计算机被预期为“高度可用”),重启系统以完成固件的安装可以是昂贵的。本文的示例允许一些固件更新在不重启的情况下实现。这不仅节约与重启相关联的成本,而且鼓励固件更新的更广泛使用,例如通过动态微调固件参数来增强性能。在本文中,固件更新是“动态”的,如果它们可以在不重启的情况下实现(即付诸使用,与仅仅被写入相对)。
图1中所示的示例系统100包括编码有代码104的存储介质102。代码104包括固件112和数据管理器114(其取决于变型,可以或可以不在固件中)。固件112的数据布置在动态数据卷中,例如卷116和118。每一个数据卷包括数据-对象元数据以指定:数据-对象标识符(ID)120、数据-对象版本ID 122和数据对象126。数据管理器114管理来自消费者(例如软件实体)的针对固件数据对象的请求128。数据管理器保持追踪哪些消费者正在使用与消费者回叫句柄134相关联地存储数据对象ID 134的数据结构130中的哪些数据对象。
数据管理器114实现在图2中示出流程图的数据-对象请求处置过程200。在201处,从消费者接收针对数据对象的请求。在202处,标识所请求的数据对象的最新版本。在203处,与所请求的数据对象的身份相关联地存储针对消费者的回叫句柄。在204处,向消费者提供所请求的数据对象的最新版本使得其成为数据对象的“使用中”版本。过程200可以通过其它实体实现,并且数据管理器114可以实现其它过程,如以下进一步论述的。
数据管理器114可以实现在图3中示出流程图的数据-对象更新过程300。在301处,找到数据-对象版本的经更新的版本。在302处,标识数据对象的消费者的回叫句柄。在303处,使用回叫句柄,通知数据对象的消费者该更新。
一旦被通知更新,消费者可以立即或在稍后的时间处请求经更新的对象。例如,如果请求和使用经更新的数据对象将会导致正在进行的过程中的冲突或其它问题,则消费者可以等待更合时宜的时间来更新其数据对象的副本。在任何事件中,可以以避免任何相干性问题并且不要求重启(其可能干扰针对高度可用的计算机系统的服务水平目标)的方式管理动态数据固件更新。
如在下一示例中所示,数据卷可以存储除针对系统100示出的之外的数据-对象元数据。例如,数据卷可以包括可以用于确保更新来自经授权的源并且不是错误或恶意的结果的安全密钥。
计算机系统400包括处理器402、通信设备404和非暂时性存储介质406。介质406编码有代码408。代码408包括固件410、消费者412、固件更新实用程序414和更新标志416。在另一示例中,标志416实现在硬件中。固件410包括数据管理器420、更新处置器422和数据卷430,包括数据卷432、434和436。
每一个数据卷430是数据-卷数据结构及其内容的组合。内容包括数据-对象ID、数据-对象属性、数据-对象版本ID、安全密钥、其它元数据和数据-对象。数据-对象ID可以是全局唯一标识符(GUID)。数据-对象属性指定给定数据对象是动态数据对象还是静态数据对象。可以在不重启的情况下实现针对动态数据对象的改变,而实现经改变的静态数据对象要求重启。“其它元数据”可以包括可以用于确定数据卷的边界或数据对象值位于哪里的位置或对象大小信息。此外,“其它元数据”可以包括表征对数据管理器420或消费者412有用的数据对象的其它信息。
数据卷432包括数据-对象ID 440、属性442、版本ID 444、有效标志445、安全密钥446、其它元数据447和数据-对象448。属性442被设置成“静态”,因此对具有数据-对象ID 440的数据-对象的改变(其将通过另一数据卷表示)将仅发生在系统400的重启之后。版本ID 444是最新的版本,在这种情况下是数据卷430之中表示的数据-对象的最晚版本。数据对象448是响应于请求提供给消费者412的数据对象。
数据卷434包括数据-对象ID 450、属性452、版本ID 454、有效标志455、安全密钥456、其它元数据457和数据-对象458。在该情况中,属性452被设置成“动态”,这指示数据对象(值)的改变可以在不重启的情况下实现。可以是诸如“4.2”之类的数字值的版本ID碰巧对应于针对具有ID 450的数据对象的使用中版本,因为其当前被消费者412使用中。
然而,虽然使用中数据对象458在其被消费者412请求时是最新的版本,但是它在图4中表示的时间处不是最新的版本。这是因为自从消费者412请求数据对象458之后较新的版本已经被写入到固件410。该较新的经更新的版本表示在数据卷436中。
数据卷436包括数据对象ID 460、属性462、版本ID 464、有效标志465、安全密钥466、其它元数据467和数据-对象468。数据对象468是数据对象458的经更新的版本。因此,数据-对象ID 460等于数据-对象ID 450,并且版本ID 464(例如版本4.3)对应于比版本ID 454(例如版本4.2)更晚的版本。对象的不同版本的属性一般相同,因此属性452和462相同,二者都设置在“动态”处。然而,在一些情况中,更新改变用于数据对象的属性。
数据管理器420保持追踪哪些消费者正在使用哪些数据对象。为此目的,数据管理器420包括数据结构,例如回叫表470,其将消费者回叫句柄472与用于当前被消费者使用中的每一个数据对象的数据-对象身份474和用于使用中的数据对象的数据-对象版本ID相关联。例如,在图4中表示的时间中,用于数据对象458的对象身份将与回叫表470中的消费者回叫句柄相关联。
系统400提供用于图5中示出流程图的固件-更新过程500的实现。过程500包括请求段510和更新段520。请求段510包括动作511,其中数据管理器从消费者接收针对数据对象的请求。请求可以指定用于对象的GUID或其它标识符。
在512处,数据管理器搜索数据卷以用于所请求的数据对象的适当版本从而满足请求。在513处,数据管理器找到数据对象的适当版本。在所图示的过程500中,适当版本是最新的有效版本。不搜索如由其相应有效标志指示的无效版本。最新性可以通过比较所请求的数据对象的找到的有效版本的版本号来确定。
紧接在数据-对象更新之后,经更新的版本可以不同于由消费者使用中的任何版本。如果另一消费者请求其最新版本不同于使用中版本的数据对象,为了一致性而可能合期望的是利用使用中版本而不是最新版本来满足请求。在这样的示例和场景中,使用中版本为利用其满足请求的“适当”版本。在过程500的所图示的变型中,数据对象的经更新的版本不被标记为“有效”,直到数据管理器已经被告知经更新的版本。因此,数据管理器可以在利用经更新(即最新)的版本满足针对其的任何附加请求之前收回所请求的数据对象的使用中版本。
在514处,数据管理器检查用于数据对象的适当版本的“静态”相对“动态”属性。在515处,如果并且仅如果(当且仅当)属性为“动态”时,数据管理器将回叫句柄与数据-对象身份和数据-对象版本身份相关联,例如在回叫表470中。如果属性为“静态”,不在回叫表中做出条目。在516处,数据管理器通过向请求数据对象的消费者提供数据对象的适当版本来满足请求。
过程500的更新段520包括,在521处,更新工具将经更新的数据对象写入到固件的未被使用的区域处的新卷。当数据对象被更新时,将经更新的版本写入到固件的空区域并且不删除之前的版本。然而,更新实用程序可以提供较陈旧的版本的“清空”,一旦其确认它们将不会被还原或以其它方式被使用。在过程500的所图示的变型中,用于经更新的版本的有效标志最初被设置成“无效”。
在522处,通知数据管理器更新。在一个变型中,数据管理器通过(例如周期性地)轮询数据卷来发现更新。在另一变型中,更新工具设置更新标志(例如标志416)并且触发更新处置器(例如更新处置器422)。处置器可以使用平台-管理中断或系统管理中断(SMI)来触发。更新处置器然后通知数据管理器更新。
在523处,数据管理器搜索和找到分别用于数据管理器可以通过其版本ID进行标识的更新及其直接前身的数据卷。在524处,如果并且仅如果(当且仅当)用于前身版本的属性是“动态”的,数据管理器试图验证数据对象的经更新的版本,例如通过使用数据管理器的私有密钥472来检查用于经更新的版本的安全密钥。注意,如果要求数据对象的所有版本具有相同的属性值,则在524处,可以使用用于经更新的版本的属性而不是用于其前身的属性。如果在524处,之前的版本是“静态”的,不采取关于更新的另外动作,直到执行验证的下一次启动。
如果在525处确定经更新的版本有效,数据管理器在526处将其有效标志设置成“有效”。在过程500的另一变型中,更新处置器执行有效性检查,并且如果并且仅如果更新有效,告知数据管理器更新并且将有效标志设置成“有效”。如果确定数据对象的经更新的版本无效,例如继续将经更新的版本标记为“无效”或者删除它。
在526处,数据管理器检查其回叫表以用于匹配经更新的动态数据对象的条目。如果存在任何匹配,每一个相关联的回叫句柄被用于告知相应消费者更新。在527处,如果并且仅如果(当且仅当)动态数据对象在使用中,数据管理器通知一个或多个消费者(其正在使用数据对象的较早版本)更新。数据管理器可以保持其它消费者对相同数据对象的请求直到较早的数据对象的消费者不再使用它。过程500然后可以返回到511而没有介于中间的重启。消费者可以紧接在通知之后或者在给定数据对象的之前版本的使用的情况下的适当的某个稍后时间处请求动态数据对象。
可替换示例不使用数据-对象卷中的有效标志来指示有效性。而是,数据管理器内部追踪静态数据对象的更新,使得更新在重启之前不被用于满足消费者请求。当重启后,用于追踪更新的数据丢失,使得在重启之后,数据管理器将使用经更新的静态数据对象来满足请求。
在本文中,“系统”是交互非暂时性有形元件的集合,其中元件可以是(作为示例而非限制)机械组件、电气元件、原子、指令的物理编码和过程动作。在本文中,“过程”是指导致或牵涉物理变换的动作的序列。
在本文中,除非以其它方式从上下文清楚,否则在涵盖可执行指令以及非指令类型数据的包含性含义中使用“数据”。在本文中,“数据对象”涵盖单个位、串和位和/或串的布置。在本文中,“存储介质”是指包括其中或其上编码有或可以编码有数据(包括指令和非指令类型数据)和数据对象的非暂时性有形材料的系统。在本文中,除非以其它方式从上下文清楚,否则“固件”是指存储在持久性(即非易失性存储器)固态存储器中的代码和通过从持久性固态存储器启动代码引起的代码。“固件存储器”是指用于存储固件代码的非易失性存储器。
在本文中,“版本”是以某种方式与相同事物的其它版本不同的事物(例如数据对象)的特定形式。在本文中,如果数据对象可以被更新和使用而不重启则将其说成是“动态”的。在本文中,如果数据对象的更新在不重启的情况下不能被使用则将其说成是“静态”的。在本文中,“消费者”是请求和使用数据对象的执行过程。在本文中,“回叫句柄”是用于向之前发送请求(例如针对数据对象)的过程发送信息的数据项。
在本文中,“计算机”是指用于依照物理编码的指令物理操纵经编码的数据的硬件机器。在本文中,除非以其它方式从上下文清楚,否则计算机的功能限定的组件是硬件和在该硬件上执行以提供所限定的功能性的软件的组合。
在本文中,“处理器”是指用于执行指令的硬件。处理器可以是单片设备,例如集成电路,设备的部分,例如多核集成电路的核,或者设备的分布式或并列式集合。在本文中,“通信设备”是指用于通信的设备,包括网络设备和用于输入和输出的设备二者,例如人类接口设备。
在本说明书中,出于解释的目的而讨论了相关技术。被标记为“现有技术”的相关技术(如果有的话)被承认为现有技术。未被标记为“现有技术”的相关技术不被承认为现有技术。在权利要求中,“所述”(如果使用的话)引入存在明确字面先行语基础的元件;“该”引入先行语基础可能是隐含的元件。所说明和其它描述的实施例,以及对此的修改和其上的变型在接下来的权利要求的范围内。
Claims (15)
1.一种计算机实现的动态固件更新过程,包括:
在固件存储器中找到动态数据对象的经更新的版本;
标识用于被消费者使用中的动态数据对象的使用中版本的回叫句柄;以及
使用回叫句柄,通知消费者动态数据对象的经更新的版本。
2.如权利要求1中所述的过程,还包括:在找到之前,将固件动态数据对象的经更新的版本写入到固件存储器而不盖写动态数据对象的任何之前版本。
3.如权利要求2中所述的过程,其中通知跟随在写入之后而没有介于中间的重启。
4.如权利要求2中所述的过程,其中找到通过表示在固件中的数据管理器执行,并且所述写入经更新的版本由更新实用程序执行。
5.如权利要求1中所述的过程,还包括:
在通知之后,从消费者接收针对动态数据对象的请求;
响应于请求,写入与动态数据对象的经更新的版本相关联的用于消费者的回叫句柄;以及
响应于请求,向消费者提供经更新的数据对象。
6.如权利要求5中所述的过程,还包括
从消费者接收针对固件存储器中的第二数据对象的请求;
确定针对第二数据对象的属性指示第二数据对象是静态的还是动态的;以及
如果并且仅如果属性指示第二数据对象是动态的,在固件存储器中搜索第二数据对象的其它版本。
7.一种包括编码有限定数据管理器和固件的代码的非暂时性存储介质的系统,固件包括包含相应数据-对象版本连同相关联的数据-对象标识符(ID)和数据-对象版本ID的数据卷,数据管理器由处理器可执行以:
响应于来自消费者的针对动态数据对象的请求,使用用于数据对象的数据-对象ID和用于动态数据对象的不同版本的数据-对象版本ID来标识动态数据对象的最新版本;
与动态数据对象的最新版本相关联地存储用于消费者的回叫句柄;以及
向消费者提供动态数据对象的最新版本,使得动态数据对象成为使用中动态数据对象。
8.如权利要求7中所述的系统,还包括处理器。
9.如权利要求7中所述的系统,其中数据管理器还可执行以:
在提供之后,找到使用中动态数据对象的经更新的版本;
标识与使用中动态数据对象相关联的回叫句柄;以及
使用回叫句柄,通知消费者经更新的版本的存在。
10.如权利要求7中所述的系统,其中一些数据对象是静态数据对象,针对其的更新可以仅在重启之后付诸使用,随后将经更新的静态数据对象写入到固件的数据卷,所述卷包括指示数据对象是静态的还是动态的用于每一个数据对象版本的属性。
11.如权利要求7中所述的系统,其中代码还限定固件更新实用程序以准备将数据对象的经更新的版本包括到固件中的新的数据-对象卷,使得其成为该数据对象的最新版本,卷指定用于数据对象的数据-对象ID、数据-对象版本ID和静态相对动态属性,新的数据-对象卷包括用于录入用于消费者的回叫句柄的字段。
12.如权利要求11中所述的系统,其中代码还限定更新处置器,固件更新实用程序还将标志设置成指示已经将更新写入到固件并且触发更新处置器,其响应于所述触发而通知数据管理器更新。
13.一种计算机实现的过程,包括:
找到数据对象的经更新的版本;
标识用于数据对象的使用中版本的回叫句柄;以及
使用回叫句柄,通知数据对象的消费者数据对象的经更新的版本的存在。
14.一种计算机实现的过程,包括:
从消费者接收针对数据对象的请求;
在固件存储器中标识数据对象的多个版本中的最新版本;
与数据对象的标识相关联地存储用于消费者的回叫句柄;以及
向消费者提供最新版本。
15.如权利要求14中所述的过程,还包括:
将数据对象的最新版本写入到固件存储器;以及
响应于写入,通知消费者更新。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2013/021515 WO2014112969A1 (en) | 2013-01-15 | 2013-01-15 | Dynamic firmware updating |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104903853A true CN104903853A (zh) | 2015-09-09 |
CN104903853B CN104903853B (zh) | 2018-09-04 |
Family
ID=51209929
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380070560.8A Active CN104903853B (zh) | 2013-01-15 | 2013-01-15 | 动态固件更新 |
Country Status (7)
Country | Link |
---|---|
US (1) | US10101988B2 (zh) |
EP (1) | EP2946287B1 (zh) |
JP (1) | JP6134390B2 (zh) |
CN (1) | CN104903853B (zh) |
BR (1) | BR112015016953A2 (zh) |
TW (1) | TWI567649B (zh) |
WO (1) | WO2014112969A1 (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105159699B (zh) * | 2011-06-07 | 2022-01-25 | Lsi公司 | 主机看到的设备固件更新效果的管理 |
US20160188351A1 (en) * | 2014-12-24 | 2016-06-30 | Bull Hn Information Systems, Inc. | Process for providing increased power on demand in a computer processing system with submodeling |
US10481893B1 (en) * | 2015-08-10 | 2019-11-19 | American Megatrends International, Llc | Identifying and resolving firmware component dependencies |
EP4170995A1 (en) | 2016-03-04 | 2023-04-26 | Convida Wireless, LLC | Request processing in the service layer |
JP6845021B2 (ja) * | 2017-01-12 | 2021-03-17 | 株式会社東芝 | 電子装置、icカードおよび情報処理システム |
US10430179B1 (en) * | 2019-03-07 | 2019-10-01 | Capital One Services, Llc | Methods and systems for managing application configurations |
US11256499B2 (en) | 2019-12-20 | 2022-02-22 | Hewlett Packard Enterprise Development Lp | Hotfix-firmware having updates to a firmware at runtime |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080155524A1 (en) * | 2006-12-26 | 2008-06-26 | Fuja Shone | Firmware Updating and Extending Method for Application Specific Integrated Circuit |
US20090144455A1 (en) * | 2007-11-29 | 2009-06-04 | Feng-Lin Chen | Firmware updating system for updating firmware of a display device and method thereof |
CN1906575B (zh) * | 2004-01-06 | 2010-11-03 | 国际商业机器公司 | 动态软件更新系统、方法 |
US8185886B2 (en) * | 2007-06-26 | 2012-05-22 | Intel Corporation | Method and apparatus to enable dynamically activated firmware updates |
Family Cites Families (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3140064B2 (ja) | 1990-12-07 | 2001-03-05 | 株式会社日立製作所 | オンライン分散プログラム入替え方法 |
JP2743792B2 (ja) | 1993-10-07 | 1998-04-22 | 日本電気株式会社 | 動的リンクプログラムの実時間置換方式 |
US5872973A (en) * | 1995-10-26 | 1999-02-16 | Viewsoft, Inc. | Method for managing dynamic relations between objects in dynamic object-oriented languages |
US6148349A (en) * | 1998-02-06 | 2000-11-14 | Ncr Corporation | Dynamic and consistent naming of fabric attached storage by a file system on a compute node storing information mapping API system I/O calls for data objects with a globally unique identification |
US6353926B1 (en) * | 1998-07-15 | 2002-03-05 | Microsoft Corporation | Software update notification |
JP2000259519A (ja) | 1999-03-10 | 2000-09-22 | Toshiba Corp | ネットワークシステム |
US6640278B1 (en) * | 1999-03-25 | 2003-10-28 | Dell Products L.P. | Method for configuration and management of storage resources in a storage network |
US6536038B1 (en) * | 1999-11-29 | 2003-03-18 | Intel Corporation | Dynamic update of non-upgradeable memory |
US7197545B1 (en) * | 2000-08-28 | 2007-03-27 | Sanavigator, Inc. | Techniques for dynamically loading modules for devices discovered in a storage network |
JP2002366381A (ja) | 2001-06-12 | 2002-12-20 | Hitachi Ltd | オブジェクトの動的入替え処理方法 |
US7146609B2 (en) | 2002-05-17 | 2006-12-05 | Sun Microsystems, Inc. | Method, system and article of manufacture for a firmware image |
US7899888B2 (en) * | 2002-06-28 | 2011-03-01 | Oracle America, Inc. | Runtime versioning of information processing systems |
JP4341984B2 (ja) | 2003-02-21 | 2009-10-14 | 国立大学法人富山大学 | アミラーゼ活性測定キット |
US20040230965A1 (en) * | 2003-02-28 | 2004-11-18 | Harri Okkonen | Mobile handset network that facilitates interaction between a generic intelligent responsive agent and a service broker server |
US6978452B2 (en) * | 2003-04-02 | 2005-12-20 | Beach Unlimited Llc | Upgrading digital media servers |
US20040205776A1 (en) | 2003-04-10 | 2004-10-14 | International Business Machines Corporation | Method and apparatus for concurrent update and activation of partition firmware on a logical partitioned data processing system |
US7260818B1 (en) * | 2003-05-29 | 2007-08-21 | Sun Microsystems, Inc. | System and method for managing software version upgrades in a networked computer system |
JP2005050097A (ja) | 2003-07-28 | 2005-02-24 | Sony Corp | 情報処理装置、情報処理方法、プログラム、記録媒体 |
US8117293B1 (en) * | 2005-01-05 | 2012-02-14 | Smith Micro Software, Inc. | Method of receiving, storing, and providing device management parameters and firmware updates to application programs within a mobile device |
US8707297B2 (en) | 2006-07-26 | 2014-04-22 | Dell Products L.P. | Apparatus and methods for updating firmware |
US7561930B2 (en) | 2006-10-02 | 2009-07-14 | Fisher-Rosemount Systems, Inc. | Dynamic modifier function blocks for use in a process control system |
JP5012017B2 (ja) | 2006-12-28 | 2012-08-29 | 富士通株式会社 | 組込装置および制御方法 |
US7996850B2 (en) * | 2006-12-28 | 2011-08-09 | Sap Ag | Dynamic business object properties for SOA architectures |
JP4940967B2 (ja) * | 2007-01-30 | 2012-05-30 | 富士通株式会社 | ストレージシステム、ストレージ装置、ファームウェアの活性交換方法、ファームウェアの活性交換プログラム |
JP2009265980A (ja) * | 2008-04-25 | 2009-11-12 | Canon Inc | 情報処理装置 |
WO2009156615A1 (fr) | 2008-06-02 | 2009-12-30 | Awox | Procede et dispositif de mise a jour d'application informatique |
US8250246B2 (en) * | 2008-07-09 | 2012-08-21 | Finisar Corporation | Loading and executing firmware module without resetting operation |
US8392895B2 (en) | 2009-01-13 | 2013-03-05 | Mediatek Inc. | Firmware extension method and firmware builder |
EP2389630A4 (en) * | 2009-01-26 | 2012-08-01 | Assa Abloy Ab | PROVISIONAL UPDATES FOR MICROPROGRAMS USING OBJECT IDENTIFIERS |
TWI386847B (zh) | 2009-02-04 | 2013-02-21 | Novatek Microelectronics Corp | 可安全復原的韌體更新方法及可安全復原之韌體更新的嵌入式電子裝置 |
KR101605875B1 (ko) * | 2009-04-03 | 2016-03-24 | 삼성전자주식회사 | 메모리 장치 및 메모리 장치의 펌웨어 업데이트 방법 |
JP5418442B2 (ja) | 2010-08-18 | 2014-02-19 | 株式会社リコー | 情報処理装置、電子機器、更新処理支援方法、更新処理支援プログラム、及び更新処理支援システム |
US8874515B2 (en) * | 2011-04-11 | 2014-10-28 | Sandisk Enterprise Ip Llc | Low level object version tracking using non-volatile memory write generations |
JP2012248018A (ja) | 2011-05-27 | 2012-12-13 | Fuji Xerox Co Ltd | 管理装置、管理システム、及びプログラム |
US8972973B2 (en) * | 2012-06-27 | 2015-03-03 | Microsoft Technology Licensing, Llc | Firmware update discovery and distribution |
US8972964B2 (en) * | 2012-07-26 | 2015-03-03 | Unisys Corporation | Dynamic firmware updating system for use in translated computing environments |
US9116775B2 (en) * | 2013-05-15 | 2015-08-25 | Dell Products L.P. | Relationship-based dynamic firmware management system |
GB2586549B (en) * | 2013-09-13 | 2021-05-26 | Vodafone Ip Licensing Ltd | Communicating with a machine to machine device |
-
2013
- 2013-01-15 BR BR112015016953A patent/BR112015016953A2/pt not_active IP Right Cessation
- 2013-01-15 EP EP13871582.6A patent/EP2946287B1/en active Active
- 2013-01-15 JP JP2015552614A patent/JP6134390B2/ja not_active Expired - Fee Related
- 2013-01-15 WO PCT/US2013/021515 patent/WO2014112969A1/en active Application Filing
- 2013-01-15 CN CN201380070560.8A patent/CN104903853B/zh active Active
- 2013-01-15 US US14/759,199 patent/US10101988B2/en active Active
-
2014
- 2014-01-14 TW TW103101260A patent/TWI567649B/zh not_active IP Right Cessation
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1906575B (zh) * | 2004-01-06 | 2010-11-03 | 国际商业机器公司 | 动态软件更新系统、方法 |
US20080155524A1 (en) * | 2006-12-26 | 2008-06-26 | Fuja Shone | Firmware Updating and Extending Method for Application Specific Integrated Circuit |
US8185886B2 (en) * | 2007-06-26 | 2012-05-22 | Intel Corporation | Method and apparatus to enable dynamically activated firmware updates |
US20090144455A1 (en) * | 2007-11-29 | 2009-06-04 | Feng-Lin Chen | Firmware updating system for updating firmware of a display device and method thereof |
Also Published As
Publication number | Publication date |
---|---|
EP2946287A4 (en) | 2016-10-19 |
TW201439913A (zh) | 2014-10-16 |
EP2946287B1 (en) | 2021-03-03 |
CN104903853B (zh) | 2018-09-04 |
EP2946287A1 (en) | 2015-11-25 |
JP2016503214A (ja) | 2016-02-01 |
TWI567649B (zh) | 2017-01-21 |
US10101988B2 (en) | 2018-10-16 |
WO2014112969A1 (en) | 2014-07-24 |
BR112015016953A2 (pt) | 2017-07-11 |
US20150355897A1 (en) | 2015-12-10 |
JP6134390B2 (ja) | 2017-05-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104903853A (zh) | 动态固件更新 | |
CN103826215B (zh) | 一种在终端设备上进行Root权限管理的方法和装置 | |
US20070169101A1 (en) | Multi-Branch Management for Updating Software | |
US11055180B2 (en) | Backup management of software environments in a distributed network environment | |
CN104715001A (zh) | 用于对数据处理系统的集群中的共享资源执行写入操作的方法和系统 | |
US8234486B2 (en) | Managing reboot operations | |
CN104657158A (zh) | 一种业务系统中业务处理的方法和装置 | |
CN111143231B (zh) | 用于数据处理的方法、设备和计算机程序产品 | |
CN104881454A (zh) | 参数的更新方法及系统 | |
CN104615662A (zh) | 一种处理数据的方法、装置及终端设备 | |
CN115080307A (zh) | 挂载恢复方法、装置、电子设备和可读存储介质 | |
CN114780019A (zh) | 电子设备的管理方法、装置、电子设备及存储介质 | |
CN108959548B (zh) | 业务请求的处理方法及装置 | |
CN104077053A (zh) | 终端信息的操作方法、装置及移动终端 | |
CN111488117A (zh) | 用于管理元数据的方法、电子设备和计算机可读介质 | |
CN105787359A (zh) | 进程守护方法和装置 | |
CN105338058A (zh) | 一种应用更新的方法及装置 | |
JP4882291B2 (ja) | モジュール更新プログラム | |
CN112241337B (zh) | 用于管理备份数据的方法、设备和计算机程序产品 | |
CN108108180B (zh) | 一种运行时动态更新应用的方法和装置 | |
CN109522014B (zh) | 基于新产品开发的算法处理方法、电子装置及可读存储介质 | |
CN109582330B (zh) | 数据模型升级方法、装置、设备及可读存储介质 | |
JP5317182B2 (ja) | Pos端末、モジュールアップデート方法およびモジュールアップデートプログラム | |
CN104657168A (zh) | 一种客户端以及该客户端进行升级的方法 | |
EP3248157A1 (en) | Multiple phase unenrollment for devices under management |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C41 | Transfer of patent application or patent right or utility model | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20161230 Address after: American Texas Applicant after: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP Address before: American Texas Applicant before: Hewlett-Packard Development Company, L.P. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |