TWI342516B - Apparatus, system, and method for adapter code image update - Google Patents

Apparatus, system, and method for adapter code image update Download PDF

Info

Publication number
TWI342516B
TWI342516B TW094139986A TW94139986A TWI342516B TW I342516 B TWI342516 B TW I342516B TW 094139986 A TW094139986 A TW 094139986A TW 94139986 A TW94139986 A TW 94139986A TW I342516 B TWI342516 B TW I342516B
Authority
TW
Taiwan
Prior art keywords
code image
update
communication adapter
data
code
Prior art date
Application number
TW094139986A
Other languages
English (en)
Other versions
TW200636568A (en
Inventor
Mark Steven Bayus
Roger Gregory Hathorn
Original Assignee
Ibm
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 Ibm filed Critical Ibm
Publication of TW200636568A publication Critical patent/TW200636568A/zh
Application granted granted Critical
Publication of TWI342516B publication Critical patent/TWI342516B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Description

1342516 九、發明說明: 【發明所屬之技術領域】 碼,且更特定言之,本發 碼影像而無需執行主機復 本發明係關於諸如微碼之礙人 明係關於更新一通訊配接器上之 原0 【先前技術】 使用者不斷地要求電腦系統及電腦子系統之高可用性。
期望網站㈣器 '倾庫伺服器、應心式健器及1類 似物日以繼夜地可用。對於此等“之維護及更新應最小 化糸統之離線時間(若不可完全消除)。 電腦系統或子系統包括一用於執行操作之基本指令組。 此基本指令組包含-類似於—操作系統之主要電腦指令 組,其界定電腦系統或子系統如何作用。通常,此基本指 令組稱為碼影像、微碼、嵌入碼或類似物。碼影像通常: 括為一特㈣處理器及/或硬體集而最佳化之組合碼指令 或原機器語言二進位碼指令。 通常,當開啟電腦系統時,—基本輸入輸出系統(bi〇s) 程式將碼影像載人揮發性RAM。或者,料影像儲存於非 揮發性RAM或其它形式記憶體中…旦電腦系統適當初始 化’即開始執行碼影像中之指令。 Λ、〃員週期性地更新碼影像以提供改良功能性,解決程式 2計錯誤及/或支援新硬體。希望以新碼影像來更新舊= 心像’其中在執行舊瑪影像之同時具有電H統之最小中 斷。碼影像更新應要求最小時間’包含最小複雜性之操作 I06246.doc 及一旦更新完成則提供重新開始正常操作之最小延遲。 習知地’藉由已知為啟動碼之—段舊碼影像來執行碼影 像更新。回應一發送碼影像更新操作訊號之中斷來執行啟 動馬。複本操作以新碼影像來部分地或全部地覆寫舊碼影 像。已知此程序為碼覆蓋。 以 圖1描述一習知碼覆蓋方法。用於執行習知碼覆蓋及重 新初始化通訊配接器之標準技術包括使通訊配接器離線且 # #此停頓1/〇。通訊配接器接著關燈,該燈為光纖通訊通 道上所使用之光學傳輸訊號。當通訊配接器離線時,將新 碼衫像載入通訊配接器上,從而替代舊碼影像。藉由一 (例如)儲存於舊碼或㈣影像巾之啟動碼來習知地執行碼 覆蓋。在載入新碼影像之後,通訊配接器接著開燈。 為重新初始化通訊配接器,新碼影像接著可初始化任意 碼結構且使主機匯流排配接器恢復線上狀態。遺憾的是, 在習知碼覆蓋期間通訊配接器之離線時間為足夠重要的, • 即來自一遠端主機之1/0請求將被拒絕。為繼續】/〇,該遠 端主機需重登入且建立與通訊配接器之新路徑及連接。 另一較新之碼更新方法使用一降低通訊配接器之離線時 f量的碼覆蓋操作。在此方法中,在使通訊配接器離線之 前執行許多相關碼覆蓋操作。本文中可稱此技術為"快速 載0,,以使其與其它習知技術區分。然而,執行快速載入 覆蓋及在使配接器離線之後重新開燈所需之時間對於主機 重登入及建立與通訊配接器之新路徑及連接仍可必要。 在主機匯流排配接器離線之時期中,其中定位有主機匯 106246.doc 1342516 流排配接器之主機可番 风』s忒發达I/O請未。若在重試期間主 機不能發送I/O,則哕人入π ^^古 士 u J D哀叩令可暫停一時期,該時期可視特 殊硬體或應用程式矣且能& _儿 0 „ ± 、,·且態而變化。只要—暫停,遠端主機可 假設通訊配接器為不作用 ,a _ _ ^ Λ 勺个作用的、標不該埠為"壞的"且自路徑 組中移除該路徑。如以 k 4 二 如Μ上所述’為重新建立路徑,遠端主 機很可此必需執行—復原序列。 如以上所述,一典型碼覆蓋程序要求受影響之硬體器件 離線一相對較大之時間晋力 t间里在一诸如主機配接器或主機匯 流排配接器之通訊配接器之情況下,該程序可花費若干分 鐘來完成’在該時間内主機可判定配接器已失敗且可切換 至 替代路。在益替抑8^似六—>3* 你…朁代路徑存在之情況,整個系統在此 ,長程序期間可被停止。不論在暫停及故障復原期間系統 是否停止’或不論在碼覆蓋程序期間系統是否完全離線, 對於使用者而言I /〇路經及备试ια 砂仫及糸統可用性之中斷可具有成本 高之影響。 自以上論述’應瞭解對於-裝置、系統及方法存在更新 -通訊配接器上之碼影像而無需主機重新登入及重新建立 連接路徑的需要。此裝置、系統及方法將有利地克服與習 知碼覆蓋技術相關聯之當前難題。 【發明内容】 需求,已開發出本發明之若干實施例。 明以提供一克服此項技術中許多或全部 回應於此項技術之當前狀態 項技術中未完全由當前可用妈 ’且更特定言之,回應於此 影像更新系統解決之問題及 因此,已開發本發 上文所論述之缺點 106246.doc 1342516 之用於更新配接器碼影像的裝置、系統及方法。 用以更新碼影像之裝置具有一含有經組態以功能地執行 用於碼影像更新之必錢作之複數龍㈣邏輯單元。 描述實施例中之此等模組包括一更新模組、—健存模租、 -還原模組、一快速載入模組、一登入模組及一路和 組。 二供 在一實施例中’更新模組更新通訊配接器上之一碼办 像。在另-實施例中,更新模組可實施一快速載入更新^ 更新碼影像。 在-實施例中,儲存模組储存與通訊配接器處之連 關聯之組態資料。在另 ^ ^ ^ 叶在另一實施例中,儲存模組可回應於一 配接器快速載入操作而储存組態資料。在一實施例中W且 態資料可包括登入資料及/或路徑連接資料。或者,㈣ 資料可包括描述主機與储存系統之間之通訊通道的:、 個態樣的其它組態資料。 夕 在實施例中,還原模組回應於一碼影像更新而還原 接資料。特定言之,摄;§指3 逻原模組可還原在碼影像更新之前由 儲存模組儲存之登入資料'路徑連接資料或其它資料。更 具體言之’還原模組可以與碼影像更新之前之大體相同次 序向一通訊配接器上之各_ 士办 设兑上(母本機埠重新註冊主機。此外, 還原模組可以與碼影像更新之前之大體相同邏輯路徑邏輯 地重新連接主機與通訊配接器。換言之,在通訊配接器上 之馬’“象更新之後’還原模組可將通訊系統還原至與碼影 像更新之前之大體相同組態。 I06246.doc -9· 1342516 在實施例中,快速載入模組實施一快速載入碼更新。 士本文所撝述,一快速載入碼更新可與其它習知碼更新技 術不同目為快速載入碼更新可減少一通訊配接器在碼覆 蓋操作期間之離線時間量。 在實轭例中,登入模組在碼影像更新之前以登入資料 、’。構,儲存登入資料。登入模組可將登入資料儲存至通訊 配接β之電子記憶體器件中或儲存至耗接至通訊配接器之 另一資料儲存器件中。 實%例中,路把模組在碼影像更新之前以路徑資料 冓來餘存路徑連接資料。路徑模组可將路徑連接資料儲 存至,訊配接器之電子記憶體器件中或儲存至耗接至通訊 配接器之另一資料儲存器件中。 亦提供本發明之―系統以更新碼影像。在—實施例中, 可將該系統實施於—包括一儲存 ι柘保存系統及耦接至該儲存系統 之一或多個主機的通訊系統中。 碎存系統可具有複數個電 子資料儲存器件。在一實施例中, 針“ 貫加例中,一通訊配接器耦接至該 儲存系統,且該配接器可儲存1 ,、上之碼衫像。該主機經組 t、以將I/O請求發送至儲在备站 “ 儲存糸統。此外’-更新裝置耦接 至配接器。該更新裝置可在碼覆 ^ B 復盍之削儲存與通訊配接器 相關聯之組態資料且可回應於該碼覆蓋而還原組態資料。 該系統之另一實施例可包括一輕接至通訊配接号
記憶體器件。另外,系統可包括 D -牯Ή Λ心《 目耦接至通訊配接器之 決遠载入棋組及-更新模組。此外,舊碼影像 像可儲存於電子記憶體器件上。 〜 106246.doc •10· 1342516 亦可提供一訊唬承載媒體以儲存一程式,當執行該程式 時其執行一或多個操作以更新碼影像,在一實施例中,該 等操作包括儲存與通訊配接器處之一連接相關聯之組態資 料、更新通訊配接器上之碼影像及回應於碼影像更新而還 原組態資料。 在另一實施例中,該等操作亦可包括在碼影像更新之前 儲存以登入資料結構來儲存登入資料,及/或在碼影像更 新之後根據該登入資料以一大體類似於碼影像更新之前之 次序的次序來向複數個本機埠重新註冊複數個遠端埠。在 另一實施例中,該等操作亦可包括在碼影像更新之前以路 徑資料結構來儲存路徑連接資料,及/或在碼影像更新之 後根據路徑連接資料以大體類似於碼影像更新之前之複數 個邏輯路徑的複數個邏輯路徑來邏輯地重新連接複數個遠 端埠與複數個本機埠。 亦提七、用於佈署運算基礎結構之方法。該運算基礎結 構包括整合於運算系統中之電腦可讀碼。在一實施例中, 電細可#馬連同4運算系統能夠更新碼影像。特定言之, 所揭示實施例中之方、土 — a , τι方法大體包括佈署使得該等操作必須相 對於所描述裝置刀糸^ ^ 系統之彳呆作進行上述功能的碼。此外, S亥碼之某些或全部摔 舟作大體可類似於當執行訊號承載媒體 上之程式時所執行的操作。 貫穿此說明蚩料杜Μ 句對特谜、優勢或類似語言引 可使用本發明實)丨用卫非思。月 所有特徵及優勢應處於本發明之任何 早一 :¾她例中。而β 疋將涉及特徵及優勢之語言理解為 106246.doc 1342516 意謂連同-實施例所描述之特殊特徵 4- s ^ 笟劳次特性包括於 本發明之至少一實施例中。因此,貫穿此說明書,特 優勢之論述及類似語言可(但非必需)係指同一實施例。 此外,可以任-適當方式將本發明之所描料徵、優勢 及特性組合於-或多個實施例中。熟習相關技術者將認可 可貫施本發明而無需特定實施例之一或多個特殊特徵或優 勢。在其它實例中,可在本發明之某些實施例中認可其它 特徵及優勢而非出現於所有實施例中。 本發明之此等特徵及優勢可自以下描述及附加之申 利範圍變得較顯而易見,或可藉由如下文所閣述來 發明而學習。 【實施方式】 已將此說明書中所描述之許多功能單元標示為模组以 便更明確強調其實施獨立性。舉例而言,可將一模组實施 為-包含常規VLSI(超大型積體)電路或閘極陣列' 諸如邏 輯晶片之成品半導體、電晶體或其它離散組件的硬體電 路。亦可在諸如場可程式化閘極陣列、可程式化陣列邏 輯、可程式化邏輯器件或類似物之可程式硬體器件中實施 一模組。 亦可在用於由多種類型處理器執行之軟體中實施模组。 可執行石_別模組(例如)可包含(例士。)可經組織為一對 象、程序或功能的電腦指令之_或多個實體或邏輯塊。然 而,不需要將-識別模組之可執行實體地定位在一起,但 其可包含儲存於不同位置之不同指令,當該等指令邏輯地 106246.doc •12- 結合到一起時,其包含該模組且 眘 逹成忒楨組之規定目的。 :八,可執行碼之模组可為單—指令或多個指令,且 甚至可分佈於若干不同碼段上、 3!杜 不同程式中及若干記憶體 =件=類似地,此處可在模組内識別及制可操作資 :二其可以任一適當形式來具體表現並組織於任一適當 里資料結構中。可操作資料可集合為單-資料集,或可 分佈於不同位置上包括分佈於不同儲存器件上,且可僅作 為一系統或網路上之電子訊號而至少部分地存在。 圖2描述-通訊系統之一實施例。所說明之通訊系統 2〇〇包括連接至一儲存系統208之三個主機2〇2、2〇4、 206。在一實施例中,儲存系統2〇8為一經組態以儲存資料 之儲存伺服器。第一及第二主機2〇2、2〇4經由一交換器 210冗餘地連接至儲存系統2〇8。第三主機2〇6直接連接至 儲存系統208。為清晰起見,省略了其它潛在連接性設 備0 儘官在所描述之實施例中展示了三個主機2〇2、2〇4、 206,但是通訊系統200用更少或更多之主機2〇2、2〇4 ' 206及儲存系統208運作。此外,可以用變化之冗餘及直接 之替代組態’將主機202、204、206連接至儲存系統208。 此外’所說明之電纜連接可包含光纖通道、企業系統連接® (ESCON)、光纖連接(FICON)通道、小型電腦系統介面 (SCSI)及類似物。此外’可組態通訊系統200以支援多種 拓撲’其包括點對點、光纖交換(Fabric Switched)、光纖 通道仲裁迴路(FC-AL)等等。此外,通訊系統2〇〇可支援多 106246.doc 13 1342516 種上層協定(ULP),其包括光纖通道協定(Fcp)及 FIC0N(FC-SB-2)。 所描述主機202、2〇4、206中之每一者包括一或多個主 機匯流排配接器(HB A)212、2 14、2 16。組態各HB A 212、 214、216以管理用於傳送對應主機202、204、206與儲存 系統208之間之資料所需的大部分1/〇操作。特定言之,可 最佳化各主機匯流排配接器212、214、216以極快速地執 行許多I/O操作’而很少或不涉及主機202、204、206,從 而最小化主機202、204、206之工作負荷。亦可將主機匯 流排配接器2 1 2、2 14、2 1 6稱為通訊配接器。 所描述之儲存系統208包括多個、冗餘主機配接器21 8、 22〇及叢集222、224。主機配接器218、220大體類似於如 上文所描述之主機匯流排配接器2 1 2、2 14、2 1 6,且其亦 可稱為通訊配接器。各叢集222、224可包括一或多個多處 理器226、228及至若干邏輯單元號碼(lun)230、232、 234、236之連接。在一特定實例中,一叢集222可主要存 取偶數LUN 230、234,而另一叢集224可主要存取奇數 LUN 232、236。主機配接器218、220與叢集222、224之間 及多處理器226、228與LUN 230、232、234、23 6之間的冗 餘路徑’允許在一諸如硬體故障之故障的情況下進行資料 儲存及存取。此外,儲存系統208可使用獨立磁碟冗餘陣 列(RAID) ’從而可能鏡射(mirroring)及等量分配(stHping) 所儲存資料以及計算及儲存同位檢查資料(parity data)。 對所說明之主機202、204、206其中之一的任何參考應 106246.doc f解為參考任—或全部主機202、2G4、206,除非另外明 確說明。同找,拟& 對所說明之主機匯流排配接器2 12、2 14、 2 16 其中 _ iJL· ,N 一的任何參考應理解為參考任一或全部通訊配 接器(其包括主機匯流排配接器212、214、216及/或主機配 接器21 8、220),除非另外明確說明。類似地,對冗餘說 明之叢集 222、224,多處理器 226、2284LUN 23〇、232、 234 ' 236其中之一的參考應理解為分別參考任一對應器 件’除非另外明確說明。 貫穿此說明書’為簡明及清晰描述本發明之目的,將描 述關於特定用於主機匯流排配接器212、214、216及主機 配接器218、220中之處理器及記憶體的多種實施例。本文 所描述之實施例為代表性實例且並非意欲限制如藉由申請 專利範圍所界定之本發明的範疇。熟習此項技術者將瞭解 可在包括一諸如微處理器、特殊應用積體電路(ASIC)或類 似物之處理器的任一電腦或電力系統中實施某些實施例, 該任一電腦或電力系統執行碼影像且允許使用碼覆蓋來更 新碼影像。 圖3描述一大體類似於圖2之主機配接器218、220之通訊 配接器300的一實施例。所說明之通訊配接器3〇〇包括一處 理器(CPU)302、一或多個快閃記憶體器件304、一或多個 可程式化邏輯陣列(PLA)306、一 I/O埠308、一本機記憶體 益件310及一更新裝置312。在另一貫施例中,通訊配接号 300可包括多個I/O淳308。參看圖4更詳細地描述更新裝置 312之一實例。 106246.doc -15· 1342516 在-實施例中’將一現有喝影像3ι增存於本機記情體 器件3H)上。現有碼影像314稱為舊碼影像314,因為:可 由新碼影像3丨6替代或廢除。可將新碼影像316載入並儲广 於本機記憶體器件310,最後覆蓋舊碼影像314。 子 組態CPU 302以執行舊碼影像3U中之可操作指令。在— 實施例中’組態舊碼影像314以允許通訊配接器则執行諸 如主機202與儲存系統208之間的高速1/〇操作。快閃飞 體器件綱及PLA 306與CUP 3G2互動以適當地執行_操 作。此外,I/O埠308允許通訊配接器3〇〇與諸如主機加之 其它器件通訊資料及控制資訊。此等連接可經由—集線 器、一交換器210及/或其它連接性設備。在一實施例中, 本機記憶體器件31〇可為諸如隨機存取記憶體(ram)、非 揮發性隨機存取記憶體(NVRAM)或類似物之高速主記憶 It ° ° 圖4描述一可大體類似於圖3之更新裝置312之更新裝置 400的一實施例。所說明之更新裝置4〇〇包括—更新模植 402、-儲存模組4G4、—還原模組楊、—快速載入模組 408、一登入模組410及一路徑模組412。儘管更新裝置”2 之一實施例描述於通訊配接器3⑽之内,但是更新裝置· 或-或多個模組可轉接至通訊裝置3〇〇且可儲備於储存系 統208内之處理器226或其它器件上。 在貫施例中,更新模組402更新通訊配接器3〇〇上之一 碼影像。舉例而言,更新模組4〇2可使一新碼影像316覆蓋 於舊碼影像314上。或者,更新模組術可以可引起通訊配 I06246.doc 16 1342516 接器3—00離線—段時間之另—方式來更新碼影像。 j —實施例中,料模組4G4儲存與通訊配接1|3_之 連接相關聯之组態資料。舉例而言,健存模組4〇4可回應 碼影像更新請求而儲存組態:諸,但在執行碼影像覆 η。之"另-實施例中,儲存模組4〇4可回應於一配接 盗快速载入操作而儲存組態資料。 組態資料可包括登入資料及/或路徑連接資料。或者, 組態資料可包括描述了主機2 0 2與儲存系統期之間之通訊 通道的一或多個態樣的其它組態資料。參看圖5更詳細地 描述登入資料之-實例。參看圖6更詳細地描述路徑連接 資料之一實例。 在一實施例中,還原模組4〇6回應於一碼影像更新而還 原連接資料。特定言之,還原模組褐可還原在碼影像更 新之前由儲存模組404所儲存之登入資料、路徑連接資料 或其它資料。舉例而言,還原模組4〇6可以與碼影像更新 之刖之大體相同的次序向一通訊配接器3〇〇上之每一本機 埠重新註冊主機202 ' 204、206。此外,還原模組4〇6可用 與碼影像更新之前大體相同之邏輯路徑來重新連接主機 202、204、206與通訊配接器。換言之,在通訊配接器3〇〇 上之碼影像更新之後,還原模組404可將通訊系統2〇〇還原 為與碼影像更新之前大體相同之組態。 在一實施例中,快速載入模組408實施一快速載入碼更 新。如以上所描述’一快速載入碼更新可與其它習知碼更 新技術不同,因為快速載入碼更新可降低在碼覆蓋操作期 I06246.doc •17· 1342516 間通讯配接器3〇〇之離線時間量。 在一實施例中’登人模組4IG在媽影像更新之前儲存一 以登入資料結構來儲存登入資料。登入模組41〇可儲存連 同儲存模組姻或(替代地)與儲存模組術無關之登入資 料。儘管圖6中說明一其中可藉由登入模組41〇储存登入資 料之實例資料結構’但是如以上所描述登入模組41〇可以 允許還原模組406稱後還原登入資料的任意格式或資料結 構來儲存登入資料。此外,登入模組梢可將登入資料儲 存至通訊配接器300之電子記憶體器件31()中或儲存至耗接 至通訊配接器300之另一資料儲存器件中。 在一實施例中’路徑模組412在碼影像更新之前以路徑 資料結構來儲存路徑連接資料。路徑模組412可儲存連同 儲存模組404或(替代地)與儲存模組4〇4無關之路徑連接資 料。儘管圖5中說明—其中可藉由路徑模組412館存路徑連 接資料之實例資料結構,但是如以上所描述,路徑模組 412可以允許還原模組4〇6稍後還原路徑連接資料的任意格 式或資料結構來儲存路徑連接資料。此外,路徑模組 可將路控連接資料儲存至通訊配接器300之電子記憶體器 件310中或儲存至耦接至通訊配接器3〇〇之另一資料儲存器 件中。 ° 圖5描述一可由路徑模組4 12使用以儲存路徑連接資料之 路徑資料結構500的一實施例。更具體言之,所說明之路 徑資料結構500包括一邏輯路徑號碼5〇2、通道之邏輯$像 號碼504(例如,Fic〇n主機2〇2)及控制單元(例如, 诨存糸 106246.doc •18· 1342516 統208)之邏輯影像號碼506。所說明之路徑資料結構5〇〇亦 包括·一由通訊配接1§300指派之遠端蜂指示器(Rpj)5〇8、 一光纖通道NPort識別符606及指示對應邏輯連接路徑之狀 態的一或多個旗標512。 儘管所說明之路徑資料結構500包括許多特殊屬性棚 位’但是路徑資料結構500之替代實施例可包括更少或更 多之屬性欄位,且在本文所描述之每一屬性棚位中可含有 更多或更少之資料或元資料。此外’所描述之路徑資料結 構5 0 0用以儲存資料或元資料之格式僅為一例示性格式, 且在其它實施例中,可使用其它格式來儲存相同或大體相 同之資訊。路徑資料結構500之一特定實例為一含有關於 所建立邏輯路徑之資訊的FICON邏輯路徑表。 圖6描述一可由登入模組412使用以儲存登入資料之登入 資料結構600的一實施例。更具體言之,所說明之登入資 料結構6 0 0包括一由通訊配接器3 0 0指派之遠端埠指示器 (RPI)602、一用以指示遠端埠狀態之遠端埠狀態指示器 604及一光纖通道NPort識別符606。所說明之登入資料結 構600亦包括一用以識別I/O埠308之全球埠名稱 (WWPN)608、一用以識別通訊配接器300之全球節點名稱 (WWNN)610、一類服務參數612及其它類別服務參數 614(例如,二類、三類等)。 儘管所說明之登入資料結構600包括許多特殊屬性攔 位,但是登入資料結構600之替代實施例可包括更少或更 多之屬性欄位,且在本文所描述之每一屬性攔位中可含有 J06246.doc
I 1342516 更多或更少之資料或元資料。此外,所描述之登入資料結 構600用以儲存資料或元資料之格式僅為—例示性格式了 同之資訊。登入資料結構600之一特 通道登入資訊之遠端埠表。 圓7描述可用於通訊系統200以更新通訊配接器3〇〇上之 碼影像的更新方法700的一實施例。所說明之更新方法7〇〇 可回應於一碼影像更新請求或(替代地)一諸如將新碼影像 3 1 6載入記憶體3丨〇之相關操作而開始。 儲存模組404然後將登入資料儲存至登入資料結構 600(702)。| -實施例中,儲存模組4〇4可調用登入模組 410以創建登入資料結構6〇〇及/或將登入資料儲存於登入 資料結構600中。類似地,儲存模組4〇4將路徑連接資料儲 存至路徑資料結構500中(7〇4)。在一實施例中,儲存模組 404可調用登入模組41〇以創建路徑資料結構5〇〇及/或將路 徑連接資料儲存於路徑資料結構5〇〇中。 若新碼影像316還未載入,則更新模組4〇2接著將其載入 記憶體3 1 0(706)。更新模組402隨後使通訊配接器3〇〇離線 且使通訊配接器300上之I/O停頓(7〇8)。一旦通訊配接器 300離線且關燈(710),則更新模組4〇2可用新碼影像μ 6覆 蓋舊碼影像314(7〗2)。 ¥ 且在其它實施例中,可使用其它格式來儲存相同或大體相 定實例為一含有光纖 在更新碼影像(712)之後,但在試圖重新開始經由通訊 配接器300之通訊之前,還原模組4〇8重新載入來自登入資 料結構600之登入資料(714卜類似地,還原模組4〇8重新載 106246.doc •20· 1342516 入來自路徑資料結構500之路徑連接資料(716) 藉由重新 載入登入資料(714)及重新載入路徑連接資料(716),不必 要求遠端主機202重新登入或重新建立與更新通訊配接器 300之連接路徑。 在重新載入登入資料(7Μ)及重新載入路徑連接資料 (716)之後,更新模組402接著打開通訊配接器3〇〇處之燈, 通訊配接器300隨後再次允許來自主機2〇2之1/〇(72〇)。在 一實施例中,此更新方法700(與許多習知碼影像更新技術 不同)可由更新裝置400在較小之時間窗内執行,該較小之 時間窗不足以要求遠端主機2〇2重新登入或重新建立與更 新通訊配接器3 0 0之連接路徑。 圖8描述一可用於通訊系統200以更新通訊配接器3〇〇上 之碼衫像的更新方法8 0 0的另一實施例。所說明之更新方 法800藉由將路徑資料結構5〇〇及登入資料結構6〇〇儲存至 持續記憶體(802)而開始。在—實施例中,儲存模組4〇4將 _ 資料結構500、600儲存至儲存系統208内之持續記憶體。 隨後,更新模組402將新碼影像316載入8〇4至通訊配接 器300上之記憶體310中並更新碼影像。還原模組4〇6接著 可將路徑資料結構500及登入資料結構600自持續記憶體位 置複本至通訊配接器300上之電子記憶體器件31〇(8〇6)。在 一實施例中’可將路徑資料結構5〇〇及登入資料結構6〇〇個 別地複本至配接器記憶體3 ] 〇。 還原模組406接著設定一計數器(例如,η=1)及一計數器 臨限值(例如,MAX_RPI=登入資料結構6〇〇中之最高非零 106246.doc -21 - 1342516 遠端蜂指示器(RPI))(808)以準備還原預更新配接器組態。 還原模組406接著自登入資料結構500讀取對應於計數器之 元素(例如,對於n=1之第一元素、對於n=2之第二元素 等)(810)。還原模組406接著判定所選擇之元素是否為一空 項目或為一保留光纖NPort識別符(8 12),倘若如此則標記 該元素為一”虛設"項目(814)。還原模組406亦將一唯一”虛 sit NPort識別符指派給所選擇之元素(8丨4) ^另外,或在將 所選擇之元素標記為一 ”虛設"元素(8 14)之後,還原模組 406向光纖通道槔註冊(例如)Np〇rt識別符(8 16) ^在一實施 例中’所選擇元素之遠端埠指數(RPI)與計數器值相同。 還原模組406接著遞增計數器(8 1 8)且,若計數器小於臨 限值(820),則返回以讀取登入資料結構5〇〇中之下一元素 (820)。更新方法goo如以上所描述繼續,直到來自登入資 料結構500之所有元素已被讀取且計數器遞增(8丨8)超過臨 限值為止。還原模組406接著註銷登入資料結構500中之所 有”虛設"元素(822)且所描述之更新方法800結束。 圖9描述在一對應通訊配接器300之碼影像更新期間可在 一主機202上採用之主機通訊方法9〇〇的一實施例。所說明 之更新方法900藉由主機202將1/〇請求經由通訊配接器3〇〇 發送至儲存系統208(902)而開始。若通訊配接器3〇〇可用 (904) ’則根據儲存系統208之正常操作來處理〖/ο請求 (906) ° 然而,右通§札配接器300不可用(904)(意即,由於藉由更 新裝置400之碼影像更新而離線),則將不處理1/〇請求。而 106246.doc •22- 1342516 且主機202可發送—狀態改變通知請求(908),以判定通 訊配接器300是否仍可用或是否需建立—新連接(諸如經由 一冗餘連接路徑)。舉例而t,在FCP通訊之情況下,主機 202可發送-蟑搜索(PDISC)請求(9〇8)。或者在ρι⑽通 訊之情況下,主機202可發送一測試初始化(TIN)請求 (908) 〇 因為對應通訊配接器300離線之時間長度為最小,且因 為登入資料結構600及路徑資料結構5〇〇與其更新之前相 同,所以主機202隨後接收一指示通訊配接器3〇〇仍可用之 狀態改變通知回應(910)。換言之,不要求主機2〇2重新登 入或重新建立路徑及連接,原因係在碼影像更新之後以與 其在碼影像更新之前組態之相同方式來重新組態通訊配接 器300。因此,如同通訊配接器3〇〇從未離線一樣,主機 202可重新發送待由儲存系統2〇8處理(9〇6)之1/〇請求 (912)。然後所描述之主機通訊方法900結束。 因此,提供具有一最小化通訊配接器3〇〇為碼影像更新 而離線之時間的更新裝置400的通訊配接器3〇〇可為有利 的。如以上所描述’此更新裝置400有助於主機202與儲存 糸統2 0 8之間的通訊而無需主機2 0 2重新登入或重新建立與 儲存系統208之連接(儘管進行碼影像更新)。 本文所包括之示意性流程圖通常陳述為邏輯流程圖。因 而’所描述之次序及所標示操作表示所提出方法之一實施 例。可構想在功能、邏輯或效應上等效於所說明方法之一 或多個操作或其部分的其它操作及方法。此外,提供所使 106246.doc •23· 1342516 用之格式及符號以解釋該方法之邏輯摔作 為限制該方法之範嗜1管在流程圖中可使用:將其理解 型及線類型’但不應將其理解為 ^^類 作7:的未指明持續時間的等待或監: = :特定方法之次序可或可不嚴格遵猶所示對應㈣:: 貝穿此,兒月θ ’對—實施例"或類似語言之引用音 同該實施例-起描述之特定特徵、結構或特 = 明之至少-實施例+。因此,貫穿此說明書詞組,,Π 施例中"及類似語言之出現可(但非必需)全 施例。 ^ u貫 對訊號承載媒體之參考可採用任何能夠產生—訊號、促 使-訊號被產生或促使在數位處理裝置上執行機器可讀指 令之程式之形式。可藉由一傳輸線、一壓縮光碟、數心 Α碟片、磁▼、一柏努利(Bernoulli)驅動器、一磁碟、 -穿孔卡片、快閃記憶體、積體電路或其它數位處理裝置 記憶體器件來實施訊號承載媒體。 此外,可以任一適當方式將本發明所描述之特徵、結構 或特性組合於一或多個實施例中。在下文描述中,提供諸 如程式設計、軟體模組、使用者選擇、網路異動、資料庫 查询、資料庫結構、硬體模組 '硬體電路、硬體晶片等實 例的眾多特殊細節,以提供本發明之實施例的全面瞭解。 I06246.doc •24- 1342516 然而,熟習相關技術者將認可可實施本發明而 個特殊細節或可使用其它方法、組件、材料等:二它; 例中,未詳細展示或描述熟知之 混淆本發明之態樣。 材科或細作以避免 =偏離本發明之精神或本質特性情況下可以其它特殊 〇實細本發明。所描述之實施例應在各方面僅理解為 說明性的而非限制性的…匕,藉由附加之申請專利範圍 而非以上指述來指示本發明之範鳴。I申請專利範圍之内 涵及等效範圍内之所有改變將包含於其範_之内。 【圖式簡單說明】 胃1 ^ _習知更新方法的示意性流程圖; 圖2為一今明_—少 °月一通訊糸統之一實施例的示意性方塊圖; 器之一實施例的示意性方塊 圖3為一說明—通訊配接 圖; 圖4為一·^明—a 。兄月—更新裝置之一實施例的示意性方塊圖; 圖5為—· '^日η . 。兄明—路徑資料結構之一實施例的示意性方塊 |^| 6 說明—登入資料結構之一實施例的示意性方塊 圖; 圖7為一說明—更新方法之一實施例的示意性流程圖; 更新方法之另一實施例的示意性流程 圖;及 圖9為一說明—主機通訊方法之一實施例的示意性流程 圖0 106246.doc -25· 1342516 【主要元件符號說明】 200 通訊系統 202 主機 204 主機 206 主機 208 儲存系統 210 交換器 212 主機匯流排配接器
214 主機匯流排配接器 216 主機匯流排配接器 218 主機配接器 220 主機配接器 222 叢集 224 叢集 226 多處理器
228 多處理器 230 邏輯單元號碼 232 邏輯單元號碼 234 邏輯單元號碼 236 邏輯單元號碼 300 通訊配接器 302 處理器(CPU) 304 快閃記憶體器件 306 可程式化邏輯陣列(PLA) 106246.doc -26- 1342516 308 I/O埠 3 10 本機記憶體器件 3 12 更新裝置 314 舊碼影像 316 新碼影像 400 更新裝置 402 更新模組 404 儲存模組 406 還原模組 408 快速載入模組 410 登入模組 412 路徑模組 500 路徑資料結構 502 邏輯路徑號碼 504 通道之邏輯影像號碼 506 控制單元之邏輯影像號碼 508 遠端埠指示器(RPI) 512 旗標 600 登入資料結構 602 遠端埠指示器(RPI) 604 遠端埠狀態指示器 606 光纖通道NPort識別符 608 全球埠名稱(WWPN) 610 全球節點名稱(WWNN) -27- 106246.doc j 1342516 612 一類服務參數 614 其它類別服務參數
106246.doc 28-

Claims (1)

1342516 十、申請專利範圍: 1. 一種用以更新一碼影像之裝置,該裝置包含: 一儲存模組’其經組態以儲存與一通訊配接器處之〆 連接相關聯之組態資料; 一更新模組,其經組態以更新該通訊釔接器上之一碼 影像;及 還原模組,其經組態以回應於該碼影像更新而 該組態資料 2·如請求項1之裝置,其中該組態資料包含對應於一耦接 至該通訊配接器之主機的登入資料。 3.如清求項2之裝置,其中該登入資料包含一次序,其中 在該碼影像更新之前,複數個遠端主機以該次序向該配 接器處之對應複數個本機埠註冊。 4’如β求項2之裝置,其進一步包含一登入模組,該登入 «組經組態以在該碼影像更新之前以—登人資料結構來 儲存該登入資料。 ▲月长項4之裝置’其中該還原模組進_步經組態以在 ::影像更新之後’以與該碼影像更新之前的該大體相 Z次序’來向該複數個本機埠重新註冊該複數個遠端 碑0 2永項1之裝置’其中該組態f料包含對應於耗接至 7 ^、訊配接器之複數個主機的路徑連接資料。 像::項6之裝置’其中該路徑連接資料包含在該碼影 更新之前複數個遠端埠與該配接器處之對應複數個本 1 〇6246.<JOC 8. 機痒之間的一邏輯連接路徑。 如請求項ό之裝置,且 模組經植態以在該二:步包含一路徑模組’該路徑 儲存該路㈣m 冑紅構來 9. 10. 11. 12. 13. 如請求項8之裝置,甘+ 哕珥&你 u中该還原模組進一步經組態以在 碼衫像更新之後, 與该碼影像更新之前之該等大體 才同邏輯路徑,來邏輯 複數個本_。 ^地重新連接該複數個遠端埠與該 項1之裝置,其中該儲存模組進-步經組態以回 :、—配接器快速載人操作而健存該組態資料。 -種用以更新一碼影像之系統,該系統包含: —健存系統’其具有複數個電子資料儲存器件; ^接至該儲存系統之通訊配接器,該配接器具有— 位於其上之碼影像; 該主機經組態以將一 一耦接至該通訊配接器之主機 】/0請求發送至該儲存系統;及 一耦接至該通訊配接器 態以更新該通訊配接器上 之前儲存與該通訊配接器 該碼影像更新而還原該組 之更新裝置,該更新裝置經組 之該媽影像,在該碼影像更新 相關聯之組態資料,及回應於 態資料。 交換器,該主機經 耦接至該通訊配接 器件經組態以在該 如請求項11之系統,其進一步包含一 由該交換器耦接至該通訊配接器。 如請求項11之系統,其進一步包含— 器之電子記憶體器件’該電子記德體 106246.doc 馬’v像更新期間儲存該組態資料β 如6月求項11之系統,i中嗜 押、i4i "干。亥組態資料包括登入資料及路 A連接資料中之至少一者。 種用Μ更新一碼影像之系統’該系統包含 =位於-通訊配接器内之電子記憶體器件 —館存於該電子記憶體器件上之舊碼影像 一儲存於該電子記憶體器件上之新碼影像 —經組態以使用該新碼影像覆蓋該舊碼影像之快速載 入模組;及 料 用乂在4碼覆蓋之别儲存與該通訊配接器相關聯之 組態資料及回應於該碼覆蓋而還原該組態資料的更新裝 置。 、 16.如請求項15之系統,其中該組態資料包含對應於—麵接 =該通訊配接器之主機的登人請,該登人資料包含— 人序,其中在該碼覆蓋之前,複數個遠端主機以該次序 向該通訊配接器處之對應複數個本機埠註冊。 1 7.如请求項15之系統’其中該組態資料包含對應於耦接至 該通訊配接器之複數個主㈣路徑連接資料,該路徑連 j資料包含在該石馬影像更新《前複數個遠端蟑與該配接 器處之對應複數個本機埠之間的一邏輯連接路徑。 1 8· —種訊號承載媒體,其有實體地具體化可由一數位處理 裝置執行之機器可讀指令的一程式以執行用以更新一碼 衫像之彳呆作,該等操作包含: 儲存與一通訊配接器處之一連接相關聯之組態資料; I06246.doc 1342516 更新該通訊配接器上之—碼影像;及 回應於該碼影像更新而還原該組態資料。 19·如請求項18之訊號承載媒體,其中該等指令進一步包含 一用以在該碼影像更新之前以一登入資料結構來儲存登 入資料的操作。 2〇‘如請求項19之訊號承載媒體,其中該等指令進一步包含 一操作,該操作用於在該碼影像更新之後,根據該登入 資料’以一大體類似於該碼影像更新之前之一次序的次 序’來向複數個本機埠重新註冊複數個遠端埠。 2 1.如請求項1 8之訊號承載媒體,其中該等指令進一步包含 一用以在該碼影像更新之前以一路徑資料結構來儲存路 控連接資料的操作。 22.如請求項21之訊號承載媒體,其中該等指令進一步包含 一操作’該操作用於在該碼影像更新之後,根據該路徑 連接資料,以大體類似於該碼影像更新之前之複數個邏 輯路徑的複數個邏輯路徑,來邏輯地重新連接複數個遠 端埠與複數個本機埠。 種用於佈署電腦基礎結構之方法,其包含將電腦可讀 馬整σ於-運4系統中,其中該碼連同該運算系統能夠 藉由執行以下步驟來更新一碼影像: 儲存與一通訊配接器處之一連接相關聯之組態資料; 更新該通訊配接器上之一碼影像;及 回應於該碼景;;像更新而還原該組態資料。 24‘如請求項23之方法,苴 宁6玄碼連同έ玄運昇系統進一步能 I06246.doc 1342516 夠在該碼影像更新之前以—登人資料結構來儲存登入資 料。 25. 如清求項23之方法,其中該碼連同該運算系統進一步能 夠在該碼影像更新之後,以一大體類似於該碼影像更新 之前之-次序的次序,來向複數個本機㈣新註冊複數 個遠端埠。 26. 如请求項23之方法,其中該媽連同該運算系統進一步能 夠在該瑪影像更新之前以一路徑資料結構來儲存路徑連 接資料。 27. 如凊求項23之方法,其中該碼連同該運算系統進一步能 夠在該碼影像更新之後,以大體類似於該碼影像更新之 前之複數個邏輯路徑的複數個邏輯路徑,來邏輯地重新 連接複數個遠端埠與複數個本機埠。 28. 一種用以更新一碼影像之裝置,該裝置包含: 用於儲存與一通訊配接器處之一連接相關聯之組態資 料的構件; 用於更新該通訊配接器上之一碼影像的構件;及 用於回應於該碼影像更新而還原該組態資料之構件。 29. 如6月求項28之裝置,其進一步包含用於更新該通訊配接 H上之該碼景Μ象而不必需__藉由_搞接至該通訊配接器 之主機電腦的登入的構件。 3 0. U項28之裝置’其進一步包含用於更新該通訊配接 器上之該碼影像而不必需一藉由一耦接至該通訊配接器 之主機電腦之-邏輯連接路徑的重新建立的構件。 106246.doc
TW094139986A 2004-11-18 2005-11-14 Apparatus, system, and method for adapter code image update TWI342516B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/991,736 US7454605B2 (en) 2004-11-18 2004-11-18 Method for adapter code image update

Publications (2)

Publication Number Publication Date
TW200636568A TW200636568A (en) 2006-10-16
TWI342516B true TWI342516B (en) 2011-05-21

Family

ID=36462326

Family Applications (1)

Application Number Title Priority Date Filing Date
TW094139986A TWI342516B (en) 2004-11-18 2005-11-14 Apparatus, system, and method for adapter code image update

Country Status (3)

Country Link
US (2) US7454605B2 (zh)
CN (1) CN100421083C (zh)
TW (1) TWI342516B (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7454605B2 (en) * 2004-11-18 2008-11-18 International Business Machines Corporation Method for adapter code image update
TWI263143B (en) * 2004-12-31 2006-10-01 Inventec Corp World wide port name embedding method and interface for network transmission control chip
US7921431B2 (en) * 2006-01-20 2011-04-05 Emulex Design & Manufacturing Corporation N-port virtualization driver-based application programming interface and split driver implementation
US8352933B2 (en) * 2009-03-26 2013-01-08 International Business Machines Corporation Concurrent patching of operating systems
US8578148B2 (en) * 2010-01-22 2013-11-05 Broadcom Corporation Method and system to transmit code to a system on a chip (SOC)
US8819672B2 (en) * 2010-09-20 2014-08-26 International Business Machines Corporation Multi-image migration system and method
US8751549B2 (en) * 2012-01-06 2014-06-10 International Business Machines Corporation Persistent data management in multi-image code load systems
US20150281001A1 (en) * 2014-03-25 2015-10-01 Emulex Corporation System and method for managing storage transactions in a network interface
US10353834B2 (en) * 2016-02-11 2019-07-16 International Business Machines Corporation Adapter configuration for a storage area network
CN106027634B (zh) * 2016-05-16 2019-06-04 白杨 消息端口交换服务系统

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6151609A (en) * 1996-08-16 2000-11-21 Electronic Data Systems Corporation Remote editor system
US6301661B1 (en) * 1997-02-12 2001-10-09 Verizon Labortories Inc. Enhanced security for applications employing downloadable executable content
JP2000010911A (ja) 1998-06-18 2000-01-14 Hitachi Ltd Ioバス専用に記憶装置を持つ情報処理システム
US6912276B1 (en) * 1999-04-12 2005-06-28 Silicon Laboratories, Inc. Modem on hold
US20020186249A1 (en) * 1999-10-28 2002-12-12 Qi Lu Method and system of facilitating automatic login to a web site using an internet browser
MXPA02006716A (es) * 2000-01-07 2002-09-30 Thomson Licensing Sa Metodo y aparato para respaldar un codigo de aplicacion despues de una falla de energia durante una actualizacion de codigo.
JP2001216146A (ja) * 2000-02-04 2001-08-10 Nec Commun Syst Ltd 無中断ファイル更新処理方式および方法
JP2002289768A (ja) 2000-07-17 2002-10-04 Rohm Co Ltd 半導体装置およびその製法
US6853617B2 (en) * 2001-05-09 2005-02-08 Chiaro Networks, Ltd. System and method for TCP connection protection switching
US7062515B1 (en) * 2001-12-28 2006-06-13 Vignette Corporation System and method for the synchronization of a file in a cache
JP4189570B2 (ja) * 2001-12-28 2008-12-03 コニカミノルタビジネステクノロジーズ株式会社 画像処理装置、ファームウェアの送信方法、及び画像処理装置の管理システム
CA2383881A1 (en) * 2002-04-29 2003-10-29 Ibm Canada Limited-Ibm Canada Limitee Generic control interface with multi-level status
US7181512B1 (en) * 2002-05-06 2007-02-20 Accenture Global Services Gmbh Workstation deployment
KR20030092459A (ko) 2002-05-29 2003-12-06 박치민 자동 로그인 시스템
US20030233361A1 (en) * 2002-06-13 2003-12-18 Cady C. Conrad Resumption of user authentication and restoration of interrupted virtual sessions in a stateless network
US6996673B2 (en) * 2003-08-21 2006-02-07 International Business Machines Corporation Method and apparatus for managing inventory and door status during firmware update of an automated data storage library
US7313681B2 (en) * 2003-11-20 2007-12-25 International Business Machines Corporation Apparatus, system, and method for adapter fastload
CN100373333C (zh) * 2004-05-19 2008-03-05 寺泽阳一郎 信息处理设备、软件更新系统、更新软件的方法以及其程序
US7454605B2 (en) * 2004-11-18 2008-11-18 International Business Machines Corporation Method for adapter code image update

Also Published As

Publication number Publication date
TW200636568A (en) 2006-10-16
US7454605B2 (en) 2008-11-18
CN1776639A (zh) 2006-05-24
US7870375B2 (en) 2011-01-11
CN100421083C (zh) 2008-09-24
US20060112381A1 (en) 2006-05-25
US20090271598A1 (en) 2009-10-29

Similar Documents

Publication Publication Date Title
TWI342516B (en) Apparatus, system, and method for adapter code image update
US6757778B1 (en) Storage management system
US6598174B1 (en) Method and apparatus for storage unit replacement in non-redundant array
TWI378349B (en) Computer system, storage virtualization subsystem, storage virtualization controller, and method for storage virtualization
US8756454B2 (en) Method, apparatus, and system for a redundant and fault tolerant solid state disk
US11099953B2 (en) Automatic data healing using a storage controller
US7607035B2 (en) Disk array apparatus and method for controlling the same
JP5185483B2 (ja) ストレージネットワーク内のクォーラムリソースアービタ
JP5336729B2 (ja) サポート・プロセッサによる最適化されたデータ・マイグレーションのための方法、システム、およびプログラム
JP2008516343A (ja) 冗長データストレージの再構成
US11573737B2 (en) Method and apparatus for performing disk management of all flash array server
US20090049160A1 (en) System and Method for Deployment of a Software Image
US11275599B1 (en) Hypervisor remote offload for VM data migration between storage devices
WO2014193695A1 (en) Method and system for migrating a virtual storage system
TWI322356B (en) Apparatus, system, and method for adapter fastload
US9781201B2 (en) Multicast transport
JP2008225616A (ja) ストレージシステム、リモートコピーシステム、及びデータ復元方法
JP2005533318A (ja) ストレージ・サービスおよびストレージ・システム
WO2011051075A1 (en) Facilitating data compression during replication
US11226746B2 (en) Automatic data healing by I/O
US20200174683A1 (en) Method and system for delivering message in storage system
US7216253B2 (en) Methods and systems for management of systems metadata
US11543973B2 (en) Techniques for software recovery and restoration
US7328318B1 (en) System and method for atomic multi-volume operations
US10855522B2 (en) Dual port storage device emulation

Legal Events

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