TWI567649B - 動態韌體更新技術 - Google Patents

動態韌體更新技術 Download PDF

Info

Publication number
TWI567649B
TWI567649B TW103101260A TW103101260A TWI567649B TW I567649 B TWI567649 B TW I567649B TW 103101260 A TW103101260 A TW 103101260A TW 103101260 A TW103101260 A TW 103101260A TW I567649 B TWI567649 B TW I567649B
Authority
TW
Taiwan
Prior art keywords
data
version
consumer
dynamic
firmware
Prior art date
Application number
TW103101260A
Other languages
English (en)
Other versions
TW201439913A (zh
Inventor
湯瑪士 福特
德瑞克 夏瑪洽
Original Assignee
慧與發展有限責任合夥企業
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 慧與發展有限責任合夥企業 filed Critical 慧與發展有限責任合夥企業
Publication of TW201439913A publication Critical patent/TW201439913A/zh
Application granted granted Critical
Publication of TWI567649B publication Critical patent/TWI567649B/zh

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
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/654Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/656Updates while running
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • 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/445Program loading or initiating
    • G06F9/44521Dynamic 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)

Description

動態韌體更新技術
本發明係有關於動態韌體更新技術。
發明背景
近代電腦及以電腦為基礎的系統典型地包括平台韌體,亦即儲存於非依電性「韌體」記憶體且用於一以電腦為基礎的系統之軟體啟動及用於低階功能的碼(表示指令及非指令型資料)。典型地,韌體碼係載入相當快速依電性記憶體中以供使用。
偶爾期望更新韌體,例如修補韌體錯誤缺陷、增加特徵、或微調系統參數。於較老舊電腦系統中,更新韌體可能涉及以欲置換的該韌體編碼的一個韌體唯讀記憶體(ROM)調換成以已更新韌體編碼的另一個ROM。更為晚近,韌體係儲存於可覆寫式非依電性記憶體,故可現場進行韌體的更新。一旦該系統重新初始化亦即重新啟動,則此等更新即能生效。
依據本發明之一實施例,係特地提出一種電腦具現的動態韌體更新方法包含在韌體記憶體中找出一動態資 料物體的一已更新版本;針對由一消費者正在使用中的該動態資料物體之一正在使用中版本識別一回調處理器;及使用該回調處理器通知該消費者該動態資料物體的已更新版本。
100‧‧‧系統
102、406‧‧‧儲存媒體
104、408‧‧‧碼
112、410‧‧‧韌體
114、420‧‧‧資料管理器
116、118、430-436‧‧‧資料體積
120、134、440、450、460、474‧‧‧資料-物體識別符(ID)
122、444、454、464、476‧‧‧資料-物體版本ID
126、448、458、468‧‧‧資料物體
128‧‧‧請求、資料請求
130‧‧‧資料結構
132‧‧‧消費者回調處理器
200、300、500‧‧‧處理
201-204、301-303、511-516、521-527‧‧‧動作
400‧‧‧電腦系統
402‧‧‧處理器
404‧‧‧通訊裝置
412‧‧‧消費者
414‧‧‧韌體更新公用程式
416‧‧‧更新旗標
422‧‧‧更新處理器
442、452、462‧‧‧屬性
445、455、465‧‧‧有效旗標
446、456、466、472‧‧‧安全性鑰
447、457、467‧‧‧其它母資料
470‧‧‧回調表
472‧‧‧密鑰、回調處理器
510‧‧‧請求區段
520‧‧‧更新區段
下列圖式表示實施例而非發明本身。
圖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。資料管理器追蹤哪些消費者正在使用一資料結構130中的哪些資料物體,該資料結構130係儲存與消費者回調處理器134相聯結的資料物體ID 134。
資料管理器114係將具現資料-物體請求處理處 理200,以流程圖顯示於圖2。於201,從一消費者接收針對一資料物體的請求。於202,識別被請求的資料物體之最新版本。於203,該消費者的一回調處理器係關聯該被請求的資料物體之一身分儲存。於204,被請求的資料物體之最新版本係提供給消費者,故變成該資料物體的「使用中」版本。處理200可藉其它實體具現,如後文進一步驗證,資料管理器114可具現其它處理方法。
資料管理器114係將具現資料-物體更新處理方 法300,以流程圖顯示於圖2。於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係設定為「動態」,指示可具現資料物體(值)的改變而無需重新啟動。版本ID可為數值,諸如「4.2」相對應於目前由消費者412使用的具有ID 450之該資料物體的使用中版本。
但雖然使用中的資料-物體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,該回調表470將消費者回調處理器472與針對目前由一消費者使用的各個資料物體的資料-物體身分474相聯結,及與該使用中資料物體的資料-物體版本ID相聯結。舉例言之,於圖4表示的時間,針對資料-物體458的一物體身分將與回調表470中的一消費者回調處理器相聯結。
系統400提供韌體更新處理500的具現,以流程圖 顯示於圖5。處理500包括一請求區段510及一更新區段520。請求區段510包括動作511,其中資料管理器從消費者接收一資料物體的請求。該請求可載明針對該物體的一GUID或其它識別符。
於512,該資料管理器搜尋該等資料體積有關滿 足該請求的被請求的資料物體之適當版本。於513,該資料管理器找出該資料物體之適當版本。於圖中示例說明的處理500中,適當版本乃最新有效版本。如其個別有效旗標指示,不搜尋無效版本。新近程度可藉比較所找到的被請求 的資料物體之有效版本的版本號碼決定。
恰在一資料-物體更新之後即刻,已更新版本可 與由消費者正在使用中的任何版本不同。若另一個消費者請求一資料物體,該資料物體的最新版本係與正在使用中的版本不同,則可能期望一致,以正在使用中的版本滿足該項請求而非最新版本。於此種實施例及情況下,該正在使用中的版本乃滿足該項請求的「適當」版本。於圖中示例說明的處理500之變化例中,一資料物體的已更新版本不會被標記為「有效」直到該資料管理器已經被通知該已更新版本。如此,資料管理器在以已更新(亦即最新)版本滿足任何請求之前可報廢一被請求的資料物體的該正在使用中版本。
於514,資料管理器檢查該「靜態」相對於「動 態」屬性的資料物體之適當版本。於515,若且唯若(iff)該屬性為「動態」,該資料管理器聯結該回調處理器與該資料-物體身分及該資料-物體版本身分,例如於回調表470。若該屬性為「靜態」,則於回調處理器未做登錄。於516,該資料管理器藉提供資料物體之適當版本給請求該資料物體的消費者而滿足該項請求。
處理500之更新區段520包括:於521,更新工具 將一已更新的資料物體寫至在韌體的未使用區的一新體積。當一資料物體被更新時,該已更新版本係寫至韌體的空白區而先前版本未經刪除。但一旦更新公用程式確定較舊版本將不再還原或以其它方式被使用時則可提供老舊版 本的「清除」。於處理500的示例說明變化例中,已更新版本的有效旗標最初係設定為「無效」。
於522,資料管理器被通知該項更新。於一個變 化例中,資料管理器藉輪詢(例如週期性地)該等資料體積而發現更新。於另一個變化例中,更新工具設定一更新旗標(例如旗標416)及觸發一更新處理器(例如更新處理器422)。該處理器可使用平台管理中斷或系統管理中斷(SMI)觸發。該更新處理器然後通知該資料管理器有關該項更新。
於523,該資料管理器搜尋資料體積及找出有關 更新及其緊鄰的前身,資料管理器可藉版本ID加以識別。 於524,若且唯若(iff)該前身版本的屬性為「動態」,該資料管理器試圖生效該資料物體的已更新版本,例如藉使用資料管理器的密鑰472檢查該已更新版本的安全性鑰。注意若一資料物體的全部版本要求具有相同屬性值,則於524可使用該已更新版本的屬性而非其前身的屬性。若於524先前版本為「靜態」,則就更新而言不再採行任何動作直到下次啟動,屆時執行生效。
若於525決定已更新版本為有效,則於526該資料 管理器設定其有效旗標為「有效」。於處理500的另一變化例中,該更新處理器執行有效性檢查,及若且唯若該項更新為有效,通知該資料管理器有關該更新及設定有效旗標為「有效」。若決定一資料物體的已更新版本為無效,則例如該已更新版本繼續標記為「無效」或被刪除。
於526,該資料管理器檢查其回調表有關匹配該 已更新的動態資料物體之分錄。若有任何的匹配,則各個相聯結的回調處理器用以通知個別消費者有關該項更新。 於527,若且唯若(iff)該動態資料物體係正在使用中,該資料管理器通知該消費者或多個消費者(正在使用該資料物體的稍早版本)有關該項更新。該資料管理器可保留由其它消費者針對該相同資料物體的請求直到稍早資料物體不再使用該資料物體為止。然後處理500返回511而無中間介入的重新啟動。給定使用該資料物體的先前版本,消費者可在通知之後即刻或在稍後時間,視何者適合而定,請求該動態資料物體。
替代實施例不便用於資料-物體體積內的有效旗 標來指示有效性。取而代之,資料管理器追蹤內部靜態資料物體的更新,故該等更新不會被用來在重新啟動之前滿足消費者的請求。當重新啟動時,用以追蹤更新的資料已喪失,因此,於重新啟動之後,該資料管理器將使用該已更新的靜態資料物體來滿足請求。
此處,「系統」為互動式非過渡有形元件之一集 合,其中該等元件可為,舉例言之但非限制性,機械組件、電氣元件、基本元素、指令的實體編碼、及處理動作。此處,「處理」係指結果導致或涉及實體變換的一串列動作。
此處,除非從上下文另行明白可知,否則「資料」係以包含意義使用,涵蓋可執行指令以及非指令型資料。此處,「資料物體」涵蓋單一位元、執行緒、及位元及/或執行緒的配置。此處,「儲存媒體」及「多儲存媒體」係指 一系統包括於其內或其上資訊係以或可以資料(含指令及非指令型資料)及資料物體編碼的非過渡有形材料。此處,除非從上下文另行明白可知,否則「韌體」係指儲存在持續性(亦即非依電性記憶體)固態記憶體中的碼,及從啟動來自持續性固態記憶體的碼所得的碼。
此處,「版本」為一物體例如資料物體的特定形 式,其就某個方面而言係與相同物體的其它版本不同。此處,一資料物體若無需重新啟動即可被更新與使用,則該資料物體被稱作「動態」。此處,一資料物體若未經重新啟動無法使用,則該資料物體被稱作「靜態」。此處,「消費者」乃請求及使用一資料物體的執行處理。此處,「回調處理器」乃用以發送資訊給例如先前針對一資料物體發送一請求的一處理的資料項。
此處,「電腦」係指用以依據實體編碼指令操控 實體編碼資料的硬體機器。此處,除非從上下文另行明白彰顯,否則一電腦的功能性界定組件為在該硬體上執行以提供所界定的功能性之硬體與軟體的組合。
此處,「處理器」係指用以執行指令的硬體。處 理器可為單塊裝置,例如積體電路;一裝置的一部分,例如多核心積體電路的核心;或分散式或集中式裝置的集合。此處,「通訊裝置」係指用於通訊的裝置,包括網路裝置及輸出入使用裝置兩者,例如人機介面裝置。
於本說明書中,相關技術係為了說明性目的討論。標示為「先前技術」的相關技藝(若有)乃承認為先前技 術。未標示為「先前技術」的相關技藝係非承認為先前技術。於申請專利範圍各項中,「該said」若使用時係以明確的一字不差的先前描述為基礎介紹該等元件;「該the」介紹的元件其先前描述的基礎可為暗示性。示例說明的及其它描述的實施例以及其修改及其變化皆係落入於如下申請專利範圍各項之範圍。
100‧‧‧系統
102‧‧‧媒體
104‧‧‧碼
112‧‧‧韌體
114‧‧‧資料管理器
116、118‧‧‧動態資料體積
120、134‧‧‧資料-物體識別符(ID)
122‧‧‧資料-物體版本ID
126‧‧‧資料物體
128‧‧‧請求
130‧‧‧資料結構
132‧‧‧消費者回調處理器

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之方法,其係進一步包含:將該資料物件之該最新版本寫至韌體記憶體;及響應於該寫入,通知該消費者更新。
TW103101260A 2013-01-15 2014-01-14 動態韌體更新技術 TWI567649B (zh)

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
TW201439913A TW201439913A (zh) 2014-10-16
TWI567649B true TWI567649B (zh) 2017-01-21

Family

ID=51209929

Family Applications (1)

Application Number Title Priority Date Filing Date
TW103101260A TWI567649B (zh) 2013-01-15 2014-01-14 動態韌體更新技術

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)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012170521A2 (en) * 2011-06-07 2012-12-13 Lsi Corporation Management of device firmware update effects as seen by a host
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
EP3424201A1 (en) * 2016-03-04 2019-01-09 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 (3)

* Cited by examiner, † Cited by third party
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
TW201027432A (en) * 2009-01-13 2010-07-16 Mediatek Inc Firmware extension method and firmware builder
US8185886B2 (en) * 2007-06-26 2012-05-22 Intel Corporation Method and apparatus to enable dynamically activated firmware updates

Family Cites Families (39)

* Cited by examiner, † Cited by third party
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 情報処理装置、情報処理方法、プログラム、記録媒体
US7305672B2 (en) * 2004-01-06 2007-12-04 International Business Machines Corporation Dynamic software update system, method and program product
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 富士通株式会社 ストレージシステム、ストレージ装置、ファームウェアの活性交換方法、ファームウェアの活性交換プログラム
TW200923781A (en) 2007-11-29 2009-06-01 Qisda Corp Firmware updating system for updating firmware of a display device and method thereof
JP2009265980A (ja) * 2008-04-25 2009-11-12 Canon Inc 情報処理装置
EP2310941A1 (fr) 2008-06-02 2011-04-20 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
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
GB2518254B (en) * 2013-09-13 2020-12-16 Vodafone Ip Licensing Ltd Communicating with a machine to machine device

Patent Citations (3)

* Cited by examiner, † Cited by third party
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
US8185886B2 (en) * 2007-06-26 2012-05-22 Intel Corporation Method and apparatus to enable dynamically activated firmware updates
TW201027432A (en) * 2009-01-13 2010-07-16 Mediatek Inc Firmware extension method and firmware builder

Also Published As

Publication number Publication date
EP2946287A1 (en) 2015-11-25
CN104903853A (zh) 2015-09-09
EP2946287A4 (en) 2016-10-19
TW201439913A (zh) 2014-10-16
US20150355897A1 (en) 2015-12-10
US10101988B2 (en) 2018-10-16
WO2014112969A1 (en) 2014-07-24
JP2016503214A (ja) 2016-02-01
CN104903853B (zh) 2018-09-04
BR112015016953A2 (pt) 2017-07-11
JP6134390B2 (ja) 2017-05-24
EP2946287B1 (en) 2021-03-03

Similar Documents

Publication Publication Date Title
TWI567649B (zh) 動態韌體更新技術
US7457828B2 (en) System and method for synchronizing distributed buffers when committing data to a database
US11055180B2 (en) Backup management of software environments in a distributed network environment
WO2013059361A1 (en) Method and system for generating domain specific in-memory database management system
US10057273B1 (en) System and method for ensuring per tenant mutual exclusion of data and administrative entities with low latency and high scale
CN110162429B (zh) 系统修复方法、服务器及存储介质
US9229943B2 (en) Addressing cross-allocated blocks in a file system
US20160371298A1 (en) Method and system for executing an executable file
US20120221531A1 (en) Bottom-up optimistic latching method for index trees
US10114570B2 (en) Deleting disks while maintaining snapshot consistency in a virtualized data-center
CN112579307A (zh) 一种物理锁资源的分配检测方法、装置及电子设备
US9111114B1 (en) Method of transforming database system privileges to object privileges
CN110609731B (zh) 用于管理虚拟机的方法、设备和计算机程序产品
EP2153353A1 (en) Distributed search in a casual network of servers
US10534790B2 (en) Dynamic and predictive global temporary tables
US20230229419A1 (en) Tagging packages in an application ecosystem
JP5943753B2 (ja) 仮想マシン管理システム、仮想マシン管理方法およびプログラム
US9946480B2 (en) Disk image deletion with failure resistant data erasure
CN115617797A (zh) 一种业务元数据字段动态拓展方法、电子设备及存储介质
US20170262462A1 (en) Correcting a volume chain after a volume creation failure is detected
JP5832592B1 (ja) データ管理装置
US20170364451A1 (en) Operating system integrated application isolation
JP6230480B2 (ja) データ処理装置及びデータ処理方法及びプログラム
JP2013105349A (ja) 動的リンクライブラリの更新、実行方法
GB2537038A (en) Resilient programming frameworks for handling failures in parallel programs

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees