国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      存儲(chǔ)系統(tǒng)以及存儲(chǔ)控制方法_3

      文檔序號(hào):9240003閱讀:來源:國知局
      6示出實(shí)施例的CS區(qū)域管理表33的一例。
      [0107]CS區(qū)域管理表33在每個(gè)CS區(qū)域中均存在,是管理該CS區(qū)域的保存狀態(tài)的信息。CS區(qū)域管理表33具有數(shù)據(jù)狀態(tài)331、錯(cuò)誤狀態(tài)332、目錄前方指針333、目錄后方指針334、隊(duì)列前方指針335、隊(duì)列后方指針336、分配地址337、讀取面/寫入面標(biāo)志338以及傳送控制信息339。
      [0108]數(shù)據(jù)狀態(tài)331表示CS區(qū)域內(nèi)的數(shù)據(jù)狀態(tài)。作為數(shù)據(jù)的狀態(tài),例如存在自由數(shù)據(jù)、凈數(shù)據(jù)、奇偶校驗(yàn)位未生成臟數(shù)據(jù)以及奇偶校驗(yàn)位已生成臟數(shù)據(jù)?!白杂蓴?shù)據(jù)”是指CS區(qū)域?yàn)榭捎脜^(qū)域?!皟魯?shù)據(jù)”是指CS區(qū)域內(nèi)保存的數(shù)據(jù)保存在存儲(chǔ)設(shè)備單元20中的狀態(tài)?!捌媾夹r?yàn)位未生成臟數(shù)據(jù)”是指未生成與在CS區(qū)域內(nèi)保存的數(shù)據(jù)有關(guān)的奇偶校驗(yàn)位且該數(shù)據(jù)并未保存在存儲(chǔ)設(shè)備單元20中的狀態(tài)?!捌媾夹r?yàn)位已生成臟數(shù)據(jù)”是指生成了與在CS區(qū)域內(nèi)保存的數(shù)據(jù)有關(guān)的奇偶校驗(yàn)位且該數(shù)據(jù)并未保存在存儲(chǔ)設(shè)備單元20中的狀態(tài)。
      [0109]錯(cuò)誤狀態(tài)332表示是否為接收寫入數(shù)據(jù)時(shí)的數(shù)據(jù)傳送中斷狀態(tài)。關(guān)于與某個(gè)I/O目的地對(duì)應(yīng)的CS區(qū)域,在各控制器中的CS區(qū)域管理表33中,在錯(cuò)誤狀態(tài)332表示數(shù)據(jù)傳送中斷狀態(tài)的情況下,該狀態(tài)為第一數(shù)據(jù)傳送中斷狀態(tài)和第二數(shù)據(jù)傳送中斷狀態(tài)中的一個(gè)。也就是說,在一個(gè)控制器中的CS區(qū)域管理表33中,第一數(shù)據(jù)傳送中斷狀態(tài)與第二數(shù)據(jù)傳送中斷狀態(tài)雙方不會(huì)同時(shí)成立。但是,存在以下情況:關(guān)于與某個(gè)I/O目的地對(duì)應(yīng)的CS區(qū)域,在一個(gè)控制器中的CS區(qū)域管理表33中,錯(cuò)誤狀態(tài)332為第一數(shù)據(jù)傳送中斷狀態(tài),在另一控制器中的CS區(qū)域管理表33中,數(shù)據(jù)傳送狀態(tài)332為第二數(shù)據(jù)傳送中斷狀態(tài)?!暗谝粩?shù)據(jù)傳送中斷狀態(tài)”表示從主機(jī)計(jì)算機(jī)I對(duì)存儲(chǔ)系統(tǒng)2的數(shù)據(jù)傳送沒有完全進(jìn)行的狀態(tài)?!暗诙?shù)據(jù)傳送中斷狀態(tài)”是指從一個(gè)控制器向另一控制器的數(shù)據(jù)傳送沒有完全進(jìn)行的狀態(tài)。以下,將數(shù)據(jù)傳送中斷狀態(tài)簡(jiǎn)稱為“中斷狀態(tài)”。
      [0110]目錄前方指針333和目錄后方指針334表示所對(duì)應(yīng)的子目錄項(xiàng)或散列值相同的CS區(qū)域管理表33。具體地說,前方指針333與所對(duì)應(yīng)的子目錄項(xiàng)中的頭指針322或散列值相同的CS區(qū)域管理表33對(duì)應(yīng),后方指針334與所對(duì)應(yīng)的子目錄項(xiàng)中的尾指針323或散列值相同的CS區(qū)域管理表33對(duì)應(yīng)(參照?qǐng)D10)。
      [0111]隊(duì)列前方指針335和隊(duì)列后方指針336為用于與隊(duì)列頭35(凈數(shù)據(jù)、奇偶校驗(yàn)位生成前臟數(shù)據(jù)、奇偶校驗(yàn)位生成后臟數(shù)據(jù)以及自由數(shù)據(jù)中的任一個(gè))連接的信息。在后文中說明隊(duì)列前方指針335和隊(duì)列后方指針336。
      [0112]分配地址337是表示具有該地址337的CS區(qū)域管理表33的連接對(duì)象的緩存分配管理表34的地址的指針。分配地址337具有第一分配地址和第二分配地址。第一分配地址和第二分配地址中的一個(gè)與寫入面對(duì)應(yīng)且另一個(gè)與讀取面對(duì)應(yīng)。
      [0113]讀取面/寫入面標(biāo)志338是表示第一分配地址和第二分配地址中的哪一個(gè)為讀取面(保存凈數(shù)據(jù)和奇偶校驗(yàn)位已生成臟數(shù)據(jù)的CS區(qū)域)而哪一個(gè)為寫入面(保存奇偶校驗(yàn)位未生成臟數(shù)據(jù)的CS區(qū)域)的信息。具體地說,如果標(biāo)志338豎起,則讀取面與第一分配地址對(duì)應(yīng),如果標(biāo)志338倒下,則寫入面與第一分配地址對(duì)應(yīng)。
      [0114]為了根據(jù)當(dāng)前奇偶校驗(yàn)位和當(dāng)前數(shù)據(jù)來生成針對(duì)作為新數(shù)據(jù)的寫入數(shù)據(jù)的新奇偶校驗(yàn)位的情況,將相當(dāng)于當(dāng)前數(shù)據(jù)的凈數(shù)據(jù)(已經(jīng)寫入到存儲(chǔ)設(shè)備單元的數(shù)據(jù))、相當(dāng)于當(dāng)前數(shù)據(jù)的奇偶校驗(yàn)位生成后臟數(shù)據(jù)(未寫入到存儲(chǔ)設(shè)備單元且生成了奇偶校驗(yàn)位的(臟數(shù)據(jù)狀態(tài)的)寫入數(shù)據(jù))保持在讀取面上。這樣,以CS區(qū)域內(nèi)保存的數(shù)據(jù)的狀態(tài)(凈數(shù)據(jù)或臟數(shù)據(jù)),將CS區(qū)域作為寫入面或讀取面處理,由此能夠有效利用CS區(qū)域。
      [0115]傳送控制信息339表示寫入了數(shù)據(jù)的寫入范圍(緩存區(qū)域244中的地址范圍)以及控制器22對(duì)主機(jī)計(jì)算機(jī)I的數(shù)據(jù)傳送請(qǐng)求的重試次數(shù)。
      [0116]圖7示出實(shí)施例的緩存分配管理表34的一例。
      [0117]在每個(gè)CS區(qū)域中均存在緩存分配管理表34。緩存分配管理表34為用于管理緩存區(qū)域244 (CS區(qū)域)的分配的信息。
      [0118]緩存分配管理表34具有CS區(qū)域地址341、連接指針342、暫存塊映射(stagingblock map) 343以及臟數(shù)據(jù)塊映射(dirty block map) 344。CS區(qū)域地址341表示CS區(qū)域的地址。連接指針342為指向CS區(qū)域管理表33的指針、或者在向CS區(qū)域管理表33分配多個(gè)緩存分配管理表34的情況下指向緩存分配管理表34的指針。暫存塊映射343具有與構(gòu)成CS區(qū)域的多個(gè)子區(qū)域分別對(duì)應(yīng)的多個(gè)位,與保存了凈數(shù)據(jù)的區(qū)域?qū)?yīng)的位為ON(I)。臟數(shù)據(jù)塊映射344具有與構(gòu)成CS區(qū)域的多個(gè)子區(qū)域分別對(duì)應(yīng)的多個(gè)位,與保存了臟數(shù)據(jù)的區(qū)域?qū)?yīng)的位為ON⑴。也可以使用連接指針將不同的緩存分配管理表34與一個(gè)CS區(qū)域管理表33的讀取面或?qū)懭朊娓髯赃M(jìn)行連接。
      [0119]圖8示出實(shí)施例的隊(duì)列頭35的一例。
      [0120]隊(duì)列頭35在每個(gè)數(shù)據(jù)狀態(tài)331中均存在,是與該數(shù)據(jù)狀態(tài)對(duì)應(yīng)的管理表(例如,CS區(qū)域管理表33或緩存分配管理表34)的隊(duì)列的開頭。隊(duì)列頭35具有隊(duì)列屬性351、項(xiàng)數(shù)計(jì)數(shù)器352、頭指針353以及尾指針354。隊(duì)列屬性351表示所對(duì)應(yīng)的數(shù)據(jù)狀態(tài)。項(xiàng)數(shù)計(jì)數(shù)器352表示所連接的管理表的數(shù)量。頭指針353表示隊(duì)列開頭的管理表的地址。尾指針354表不隊(duì)列末端的管理表的地址。
      [0121]圖9示出實(shí)施例的緩沖區(qū)域的管理的一例。
      [0122]通過緩沖區(qū)域管理表30來管理緩沖區(qū)域242中的各BS區(qū)域的狀態(tài)。例如,CPU230能夠根據(jù)BS區(qū)域地址304來確定BS區(qū)域,或者根據(jù)分配位圖303來確定未使用狀態(tài)的BS區(qū)域,或者如果分配了未使用狀態(tài)的BS區(qū)域則將與該BS區(qū)域?qū)?yīng)的位的值變更為ON(I),或者如果從正在使用的BS區(qū)域中讀出了數(shù)據(jù)則將與該BS區(qū)域?qū)?yīng)的位的值變更為OFF(O)(釋放BS區(qū)域)。
      [0123]圖10示出實(shí)施例的緩存區(qū)域244的管理的一例。此外,在圖10中,“臟數(shù)據(jù)(前)”表示奇偶校驗(yàn)位生成前臟數(shù)據(jù),“臟數(shù)據(jù)(后)”表示奇偶校驗(yàn)位生成后臟數(shù)據(jù)。
      [0124]CS區(qū)域管理表33與緩存目錄表32中的子目錄項(xiàng)相連接。如上所述,一個(gè)子目錄項(xiàng)與I/O目的地信息的散列值對(duì)應(yīng)。
      [0125]另外,隊(duì)列頭35在CS區(qū)域管理表33和緩存分配管理表34各自中存在。另外,特別是,關(guān)于CS區(qū)域管理表33,存在與多個(gè)數(shù)據(jù)狀態(tài)分別對(duì)應(yīng)的多個(gè)隊(duì)列頭35。以下,有時(shí)將與對(duì)應(yīng)于數(shù)據(jù)狀態(tài)“AA”(例如自由數(shù)據(jù))的隊(duì)列頭連接的管理表的隊(duì)列稱為“AA隊(duì)列”(例如自由數(shù)據(jù)隊(duì)列)。CS區(qū)域管理表33與對(duì)應(yīng)于該管理表33所示的數(shù)據(jù)狀態(tài)的隊(duì)列頭35直接或間接地連接。間接連接例如是隔著一個(gè)以上的其他CS區(qū)域管理表33的連接。如上所述,隊(duì)列指針存在隊(duì)列前方指針335以及隊(duì)列后方指針336這兩個(gè)隊(duì)列指針。像這樣具備兩個(gè)指針的理由在于,實(shí)現(xiàn)保存在CS區(qū)域管理表33中的數(shù)據(jù)的LRU(Least RecentlyUsed:最近最少使用)控制、即將從訪問起經(jīng)過了時(shí)間后的數(shù)據(jù)優(yōu)先從緩存上丟棄的控制。具體地說,例如,在將與某個(gè)隊(duì)列頭35對(duì)應(yīng)的CS區(qū)域管理表33 (對(duì)象CS區(qū)域管理表33)移動(dòng)至開頭位置的情況下,需要從中途抽出該對(duì)象CS區(qū)域管理表33。而且,在進(jìn)行從中途抽出對(duì)象CS區(qū)域管理表33的動(dòng)作時(shí),為了維持隊(duì)列的連接狀態(tài),需要將對(duì)象CS區(qū)域管理表33的前方指針?biāo)赶虻腃S區(qū)域管理表與后方指針?biāo)赶虻腃S區(qū)域管理表進(jìn)行連接。
      [0126]CS區(qū)域管理表33經(jīng)由第一分配地址和第二分配地址中的至少一個(gè)與緩存分配管理表34連接。此外,有時(shí)對(duì)CS區(qū)域管理表33中的第一分配地址和第二分配地址各自分別分配緩存分配管理表34。例如,存在以下情況:對(duì)與CS區(qū)域管理表33對(duì)應(yīng)且保存有凈數(shù)據(jù)狀態(tài)的數(shù)據(jù)的讀取面產(chǎn)生寫入,關(guān)于該讀取面確保寫入面。在該情況下,除了讀取面以外還需要將寫入面分配至一個(gè)CS區(qū)域管理表33,在這種情況下,使用一個(gè)CS區(qū)域管理表33中的第一分配管理表地址和第二分配管理表地址雙方。
      [0127]凈數(shù)據(jù)僅被保存于一個(gè)控制器22,但是奇偶校驗(yàn)位未生成臟數(shù)據(jù)以及奇偶校驗(yàn)位已生成臟數(shù)據(jù)在一個(gè)控制器的緩存區(qū)域和另一控制器的緩存區(qū)域中被二重化。此外,緩存區(qū)域244具有易失性區(qū)域和非易失性區(qū)域,可以將凈數(shù)據(jù)保存于易失性區(qū)域,將臟數(shù)據(jù)保存于非易失性區(qū)域。
      [0128]CPU230判斷在接收來自主機(jī)計(jì)算機(jī)I的讀取或?qū)懭胝?qǐng)求時(shí),判斷在探索到與該請(qǐng)求所具有的I/O目的地信息的散列值對(duì)應(yīng)的緩存目錄表32的頭指針322之處是否存在與I/O目的地對(duì)應(yīng)的CS區(qū)域管理表33。在其判斷結(jié)果為假的情況下,這意味著對(duì)于該I/O目的地未確保CS區(qū)域這一情況。如果未確保CS區(qū)域,則CPU230確保CS區(qū)域。具體地說,CPU230從自由數(shù)據(jù)隊(duì)列(CS區(qū)域管理表組)中獲取一個(gè)CS區(qū)域管理表33,將獲取到的管理表33與子目錄項(xiàng)進(jìn)行連接,并且,從自由數(shù)據(jù)隊(duì)列(緩存分配管理表組)獲取一個(gè)或多個(gè)緩存分配管理表34,將該管理表34與上述獲取到的CS區(qū)域管理表33進(jìn)行連接。
      [0129]在接收到的請(qǐng)求為讀取請(qǐng)求的情況下,CPU230將CS區(qū)域確保為讀取面,將數(shù)據(jù)從成為按照I/o目的地信息的讀取源的RG暫存于該讀取面上,將數(shù)據(jù)狀態(tài)331從自由數(shù)據(jù)變更為凈數(shù)據(jù),將所對(duì)應(yīng)的CS區(qū)域管理表33與凈數(shù)據(jù)隊(duì)列進(jìn)行連接(例如,與凈數(shù)據(jù)的隊(duì)列頭35直接連接)。
      [0130]在接收到的請(qǐng)求為寫入請(qǐng)求的情況下,CPU230將CS區(qū)域確保為寫入面,在寫入面上保存寫入數(shù)據(jù),將數(shù)據(jù)狀態(tài)331從自由數(shù)據(jù)變更為奇偶校驗(yàn)位未生成臟數(shù)據(jù),將所對(duì)應(yīng)的CS區(qū)域管理表33與奇偶校驗(yàn)位未生成臟數(shù)據(jù)的隊(duì)列頭35進(jìn)行連接。
      [0131]在與來自主機(jī)計(jì)算機(jī)I的請(qǐng)求非同步地在存儲(chǔ)系統(tǒng)2內(nèi)執(zhí)行奇偶校驗(yàn)位生成的情況下,CPU230在讀取面上統(tǒng)合寫入面的臟數(shù)據(jù),丟棄寫入面的數(shù)據(jù),將數(shù)據(jù)狀態(tài)331變更為奇偶校驗(yàn)位已生成臟數(shù)據(jù),將所對(duì)應(yīng)的CS區(qū)域管理表33與奇偶校驗(yàn)位已生成臟數(shù)據(jù)隊(duì)列進(jìn)行連接。
      [0132]對(duì)應(yīng)于與奇偶校驗(yàn)位已生成臟數(shù)據(jù)隊(duì)列連接的CS區(qū)域管理表33的CS區(qū)域內(nèi)的數(shù)據(jù),與來自主機(jī)計(jì)算機(jī)I的請(qǐng)求非同步地,被轉(zhuǎn)儲(chǔ)至寫入目的地的RG。此外,也可以是,以來自主機(jī)計(jì)算機(jī)I的訪問為起因,在同一屬性的隊(duì)列內(nèi),與該訪問對(duì)應(yīng)的CS區(qū)域管理表33向開頭轉(zhuǎn)變。這是由于,該管理表33為與最近被訪問的CS區(qū)域?qū)?yīng)的管理表33。
      [0133]圖11至圖14示出FE-1/F210的數(shù)據(jù)傳送方式的概要。作為主機(jī)計(jì)算機(jī)I與緩存區(qū)域244之間的數(shù)據(jù)傳送方式,存在兩級(jí)傳送和直接傳送。兩級(jí)傳送為經(jīng)由緩沖區(qū)域242 (BS區(qū)域)而傳送數(shù)據(jù)的傳送方式。直接傳送為不經(jīng)由緩沖區(qū)域242 (BS區(qū)域)而傳送數(shù)據(jù)的傳送方式。作為兩級(jí)傳送,存在寫入兩級(jí)傳送和讀取兩級(jí)傳送。寫入兩級(jí)傳送為將來自主機(jī)計(jì)算機(jī)I的寫入數(shù)據(jù)經(jīng)由緩沖區(qū)域242 (BS區(qū)域)而傳送至緩存區(qū)域244 (CS區(qū)域)的兩級(jí)傳送。讀取兩級(jí)傳送為將緩存存儲(chǔ)器244內(nèi)的讀取數(shù)據(jù)經(jīng)由緩沖區(qū)域242 (BS區(qū)域)而傳送至主機(jī)計(jì)算機(jī)I的兩級(jí)傳送。另一方面,作為直接傳送,存在寫入直接傳送和讀取直接傳送。寫入直接傳送為將來自主機(jī)計(jì)算機(jī)I的寫入數(shù)據(jù)不經(jīng)由緩沖區(qū)域242(BS區(qū)域)而傳送至緩存區(qū)域244 (CS區(qū)域)的直接傳送。讀取直接傳送為將緩存區(qū)域244 (CS區(qū)域)內(nèi)的讀取數(shù)據(jù)不經(jīng)由緩沖區(qū)域242 (BS區(qū)域)而傳送至主機(jī)計(jì)算機(jī)I的直接傳送。
      [0134]圖11示出讀取直接傳送的一例。圖12示出讀取兩級(jí)傳送的一例。
      [0135]如圖11所示,能夠從接收到讀取請(qǐng)求的FE-1/F#0進(jìn)行讀取直接傳送的情況是FE-1/F#0、讀取數(shù)據(jù)存在于緩存區(qū)域#0的情況。在讀取直接傳送中,控制器#0的FE-1/F#0將保存在緩存區(qū)域#0中的讀取數(shù)據(jù)向主機(jī)計(jì)算機(jī)I傳送。詳細(xì)地說,F(xiàn)E-1/F#0檢查讀取數(shù)據(jù)所附帶的保證碼,如果在讀取數(shù)據(jù)中沒有發(fā)生位錯(cuò)誤,則CPU#0將讀取數(shù)據(jù)經(jīng)由FE-1/F#0(例如,在檢查讀取數(shù)據(jù)所附帶的保證碼的同時(shí))向主機(jī)計(jì)算機(jī)I傳送(11-1)。之后,CPU#0將讀取請(qǐng)求完成報(bào)告經(jīng)由FE-1/F#0發(fā)送至主機(jī)計(jì)算機(jī)I (11-2)。此外,也可以代替FE-1/F#0而由CPU#0進(jìn)行保證碼的檢查。
      [0136]另一方面,如圖12所示,在接收到讀取請(qǐng)求的FE-1/F#0所接收到的讀取數(shù)據(jù)被保存在緩存區(qū)域#1中的情況下,進(jìn)行讀取兩級(jí)傳送。在讀取兩級(jí)傳送中,CPU#0從緩沖區(qū)域#0中確保BS區(qū)域。以下,將從緩沖區(qū)域#1中確保的BS區(qū)域稱為“BS區(qū)域#1”,將從緩沖區(qū)域#0中確保的BS區(qū)域稱為“BS區(qū)域#0”。將緩存區(qū)域#1內(nèi)的讀取面41b的讀取數(shù)據(jù)傳送至所確保的BS區(qū)域#0。該傳送基于
      當(dāng)前第3頁1 2 3 4 5 6 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1