專利名稱:信息存儲(chǔ)系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種信息存儲(chǔ)系統(tǒng),尤其涉及在動(dòng)作保證環(huán)境外向硬盤那樣的大容量存儲(chǔ)器存取數(shù)據(jù)的技術(shù)。
背景技術(shù):
以往,當(dāng)作為信息存儲(chǔ)媒體的大容量存儲(chǔ)器存在缺陷區(qū)域的時(shí)候,把該缺陷區(qū)域相關(guān)的信息存儲(chǔ)在大容量存儲(chǔ)器本身的一部分,當(dāng)發(fā)生向缺陷區(qū)域的存取的時(shí)候,根據(jù)該信息對(duì)能否向大容量存儲(chǔ)器存取進(jìn)行控制。
作為對(duì)這樣的有缺陷區(qū)域的大容量存儲(chǔ)器進(jìn)行存儲(chǔ)的技術(shù),已知有一種即使存在多個(gè)缺陷區(qū)域、也能向信息記錄媒體進(jìn)行穩(wěn)定的連續(xù)記錄的對(duì)信息記錄媒體的信息記錄方法、信息記錄裝置以及再生方法(例如,參考專利文獻(xiàn)1)。該技術(shù)中,在信息記錄媒體上以文件為單位記錄信息,同時(shí)減少光學(xué)頭的訪問頻率,并且定義了可以向信息存儲(chǔ)媒體連續(xù)記錄用的連續(xù)記錄區(qū)域、即連續(xù)數(shù)據(jù)區(qū)域(ContiguousData Area)。該連續(xù)數(shù)據(jù)區(qū)域跨越信息存儲(chǔ)媒體上已經(jīng)記錄的不同的文件記錄區(qū)域或者信息存儲(chǔ)媒體上的缺陷區(qū)域來設(shè)定,對(duì)被不同的文件記錄區(qū)域或者信息存儲(chǔ)媒體上的缺陷區(qū)域分割的區(qū)域設(shè)定信息記錄地點(diǎn)、即盤區(qū)(extent)。
專利文獻(xiàn)1專利第3376364號(hào)對(duì)于現(xiàn)有的以硬盤為代表的大容量存儲(chǔ)器,規(guī)定了該制造商為保證動(dòng)作的溫度、濕度、振動(dòng)等條件,即動(dòng)作保證環(huán)境。在動(dòng)作保證環(huán)境內(nèi)發(fā)生錯(cuò)誤的情況下,這樣的大容量存儲(chǔ)器具有把錯(cuò)誤相關(guān)的信息記錄在大容量存儲(chǔ)器內(nèi)部設(shè)置的記錄(log)區(qū)域的功能(稱為智能功能)。因此,與大容量存儲(chǔ)器連接的主機(jī)裝置根據(jù)記錄區(qū)域,可以知道是否發(fā)生錯(cuò)誤和發(fā)生錯(cuò)誤時(shí)的大容量存儲(chǔ)器的狀態(tài)。
然而,在動(dòng)作保證環(huán)境外發(fā)生錯(cuò)誤的情況下,現(xiàn)有的大容量存儲(chǔ)器不把錯(cuò)誤相關(guān)的信息記錄在log區(qū)域上。因此,大容量存儲(chǔ)器在動(dòng)作保證環(huán)境外的動(dòng)作中發(fā)生錯(cuò)誤的情況下,主機(jī)裝置無法知道該事實(shí)。
另一方面,近年來,例如像汽車導(dǎo)航系統(tǒng)這樣的在惡劣環(huán)境下使用的系統(tǒng)采用了大容量存儲(chǔ)器,正力圖提高該系統(tǒng)的功能和性能。這樣的系統(tǒng)即使在動(dòng)作保證環(huán)境外,也經(jīng)常需要把數(shù)據(jù)寫入大容量存儲(chǔ)器。通常,很多情況下大容量存儲(chǔ)器對(duì)寫入設(shè)計(jì)了具有規(guī)定的余量,即使在動(dòng)作保證環(huán)境外,也能成功地寫入數(shù)據(jù)。
然而,在動(dòng)作保證環(huán)境外把數(shù)據(jù)寫入大容量存儲(chǔ)器的情況下存在的問題是,由于即使發(fā)生錯(cuò)誤也不知道該事實(shí),所以主機(jī)裝置不能把握大容量存儲(chǔ)器是否正常動(dòng)作,從而可靠性下降。
本發(fā)明是為消除上述問題而完成的,目的是提供一種即使在動(dòng)作保證環(huán)境外、也能正常把數(shù)據(jù)寫入大容量存儲(chǔ)器而提高可靠性的信息存儲(chǔ)系統(tǒng)。
發(fā)明內(nèi)容
本發(fā)明相關(guān)的信息存儲(chǔ)系統(tǒng)包括對(duì)大容量存儲(chǔ)器的數(shù)據(jù)的寫入進(jìn)行控制的主機(jī)裝置,該主機(jī)裝置包括存儲(chǔ)大容量存儲(chǔ)器的寫入不允許區(qū)域的地址的NG表;判斷現(xiàn)在的環(huán)境是否在不能保證大容量存儲(chǔ)器的動(dòng)作的動(dòng)作保證環(huán)境外的動(dòng)作保證環(huán)境判斷裝置;當(dāng)動(dòng)作保證環(huán)境判斷裝置判斷為是在動(dòng)作保證環(huán)境外時(shí),把數(shù)據(jù)寫入根據(jù)沒有存儲(chǔ)在NG表的地址來指定的大容量存儲(chǔ)器的區(qū)域的控制裝置。
另外,本發(fā)明相關(guān)的信息存儲(chǔ)系統(tǒng)的控制裝置包括在判斷為是在動(dòng)作保證環(huán)境外的情況下,獲得沒有存儲(chǔ)在NG表的大容量存儲(chǔ)器的地址的地址獲得裝置;獲得應(yīng)寫入大容量存儲(chǔ)器的數(shù)據(jù)的數(shù)據(jù)獲得裝置;把通過數(shù)據(jù)獲得裝置獲得的數(shù)據(jù)寫入由通過地址獲得裝置獲得的地址指定的大容量存儲(chǔ)器的區(qū)域的數(shù)據(jù)寫入裝置;核對(duì)通過數(shù)據(jù)寫入裝置寫入的數(shù)據(jù)和通過數(shù)據(jù)獲得裝置獲得的數(shù)據(jù),當(dāng)判斷為不一致的情況下把通過地址獲得裝置獲得的地址寫入NG表的核對(duì)檢驗(yàn)裝置。
按照本發(fā)明,把存儲(chǔ)寫入不允許區(qū)域的地址的NG表設(shè)置在主機(jī)裝置內(nèi),在動(dòng)作保證環(huán)境外向大容量存儲(chǔ)器的進(jìn)行數(shù)據(jù)寫入時(shí),根據(jù)該NG表,在以寫入不允許區(qū)域的地址以外的地址指定的區(qū)域?qū)懭霐?shù)據(jù),由于這樣構(gòu)成,所以即使在動(dòng)作保證環(huán)境外,主機(jī)裝置也可以正常把數(shù)據(jù)寫入大容量存儲(chǔ)器,而提高可靠性。
另外,按照本發(fā)明,由于控制裝置核對(duì)寫入大容量存儲(chǔ)器的數(shù)據(jù)和從大容量存儲(chǔ)器獲得的數(shù)據(jù),當(dāng)不一致的情況下,把寫入數(shù)據(jù)的大容量存儲(chǔ)器的地址寫入NG表,并且進(jìn)行更新,所以總是可以正常把數(shù)據(jù)寫入大容量存儲(chǔ)器。
圖1是表示本發(fā)明實(shí)施形式1相關(guān)的信息存儲(chǔ)系統(tǒng)的整體結(jié)構(gòu)方框圖。
圖2是表示本發(fā)明實(shí)施形式1相關(guān)的信息存儲(chǔ)系統(tǒng)的存儲(chǔ)器中存儲(chǔ)寫入大容量存儲(chǔ)器的對(duì)象、即寫入對(duì)象數(shù)據(jù)的狀態(tài)圖。
圖3是表示設(shè)置在本發(fā)明實(shí)施形式1相關(guān)的信息存儲(chǔ)系統(tǒng)的主機(jī)裝置內(nèi)部的存儲(chǔ)器訪問地址表的結(jié)構(gòu)圖。
圖4是表示設(shè)置在本發(fā)明實(shí)施形式1相關(guān)的信息存儲(chǔ)系統(tǒng)的主機(jī)裝置內(nèi)部的數(shù)據(jù)量表的結(jié)構(gòu)圖。
圖5是表示設(shè)置在本發(fā)明實(shí)施形式1相關(guān)的信息存儲(chǔ)系統(tǒng)的主機(jī)裝置內(nèi)部的NG表的結(jié)構(gòu)圖。
圖6是表示在本發(fā)明實(shí)施形式1相關(guān)的信息存儲(chǔ)系統(tǒng)中寫入結(jié)束后的大容量存儲(chǔ)器的結(jié)構(gòu)示意圖。
圖7是表示在本發(fā)明實(shí)施形式1相關(guān)的信息存儲(chǔ)系統(tǒng)中發(fā)生將數(shù)據(jù)寫入大容量存儲(chǔ)器的事件時(shí)的處理流程圖。
圖8是表示在本發(fā)明實(shí)施形式1相關(guān)的信息存儲(chǔ)系統(tǒng)中發(fā)生動(dòng)作保證環(huán)境外判斷事件時(shí)的處理流程圖。
圖9是表示在本發(fā)明實(shí)施形式1相關(guān)的信息存儲(chǔ)系統(tǒng)中發(fā)生簇事件時(shí)的處理流程圖。
圖10是表示在本發(fā)明實(shí)施形式1相關(guān)的信息存儲(chǔ)系統(tǒng)中發(fā)生讀入要求事件時(shí)的處理流程圖。
圖11是表示在本發(fā)明實(shí)施形式1相關(guān)的信息存儲(chǔ)系統(tǒng)中發(fā)生寫入要求事件時(shí)的處理流程圖。
圖12是表示在本發(fā)明實(shí)施形式1相關(guān)的信息存儲(chǔ)系統(tǒng)中發(fā)生驗(yàn)證事件時(shí)的處理流程圖。
圖13是表示在本發(fā)明實(shí)施形式1相關(guān)的信息存儲(chǔ)系統(tǒng)中發(fā)生錯(cuò)誤事件時(shí)的處理流程圖。
具體實(shí)施例方式
下面,為了更詳細(xì)地說明本發(fā)明,根據(jù)
實(shí)施本發(fā)明的最優(yōu)形式。
實(shí)施形式1圖1是表示本發(fā)明實(shí)施形式1相關(guān)的信息存儲(chǔ)系統(tǒng)的整體結(jié)構(gòu)方框圖。該信息存儲(chǔ)系統(tǒng)由主機(jī)裝置1、存儲(chǔ)器2和大容量存儲(chǔ)器3構(gòu)成。
主機(jī)裝置1例如由微計(jì)算機(jī)構(gòu)成,并控制整個(gè)信息存儲(chǔ)系統(tǒng)。該主機(jī)裝置1的詳細(xì)結(jié)構(gòu)和動(dòng)作在后面描述。
存儲(chǔ)器2是用來臨時(shí)存儲(chǔ)主機(jī)裝置1在各種處理中使用的數(shù)據(jù)。圖2是表示在存儲(chǔ)器2中存儲(chǔ)寫入大容量存儲(chǔ)器3的對(duì)象、即寫入對(duì)象數(shù)據(jù)的狀態(tài)圖。即,表示寫入對(duì)象數(shù)據(jù)的起始地址P為地址0000、寫入對(duì)象數(shù)據(jù)區(qū)域大小D為16k字節(jié)、最優(yōu)簇大小S為4k字節(jié)時(shí)的存儲(chǔ)器2上的數(shù)據(jù)配置。另外,實(shí)施形式1中,1個(gè)字由32個(gè)比特(4個(gè)字節(jié))構(gòu)成,對(duì)各字節(jié)附加地址。另外,地址用16進(jìn)制數(shù)表示。
寫入對(duì)象數(shù)據(jù)區(qū)域大小D為16k字節(jié)的情況下,如果最優(yōu)簇大小S為4k字節(jié),則寫入對(duì)象數(shù)據(jù)區(qū)域由從地址0000開始的4k字節(jié)、從地址1000開始的4k字節(jié)、從地址2000開始的4k字節(jié)以及從地址3000開始的4k字節(jié)等4個(gè)簇構(gòu)成。
圖3是表示設(shè)置在主機(jī)裝置1的內(nèi)部的存儲(chǔ)器訪問地址表Ak(k=0,1,2,…,n-1,n)的結(jié)構(gòu)圖。尾標(biāo)“k”表示對(duì)各簇附加的簇號(hào)碼,“n”是把寫入對(duì)象數(shù)據(jù)區(qū)域大小D用最優(yōu)簇大小S除而得到的商,以下也相同。
上述圖2和圖3是n=16÷4=4的情況的例子。當(dāng)最優(yōu)簇大小S為4k字節(jié)的情況下,存儲(chǔ)器訪問地址表Ak的A0中存儲(chǔ)簇0的起始地址(與寫入對(duì)象數(shù)據(jù)的起始地址P相同)、即地址0000,A1中存儲(chǔ)簇1的起始地址、即地址1000,A2中存儲(chǔ)簇2的起始地址、即地址2000,A3中存儲(chǔ)簇3的起始地址、即地址3000,最后的An中存儲(chǔ)END記號(hào)。
圖4是表示設(shè)置在主機(jī)裝置1的內(nèi)部的寫入數(shù)據(jù)量表Rk(k=0,1,2,…,n-1,n)的結(jié)構(gòu)圖。當(dāng)寫入對(duì)象數(shù)據(jù)區(qū)域大小D為16k字節(jié)的情況下,如果n為4,則R0、R1、R2、R3中存儲(chǔ)的寫入數(shù)據(jù)量是最優(yōu)簇大小S的4k字節(jié)。另外,寫入數(shù)據(jù)量表Rk的最后的Rn是把寫入對(duì)象數(shù)據(jù)區(qū)域大小D用最優(yōu)簇大小S除的情況下的余數(shù),這時(shí),Rn是0k字節(jié)。
圖5表示設(shè)置在主機(jī)裝置1的內(nèi)部的NG表10的結(jié)構(gòu)。NG表10對(duì)根據(jù)最優(yōu)簇大小S決定的大容量存儲(chǔ)器3的每個(gè)簇區(qū)域,存儲(chǔ)表示能否對(duì)該簇區(qū)域進(jìn)行寫入的信息。該NG表10在初始狀態(tài)下,對(duì)全部簇區(qū)域?qū)懭氡硎緦懭朐试S狀態(tài)的○記號(hào),在通過后述的處理判斷為寫入不允許的情況下,重寫表示寫入不允許狀態(tài)的×記號(hào)。圖5表示只有從地址2000開始的簇區(qū)域存儲(chǔ)表示寫入不允許狀態(tài)的的×記號(hào)的例子。
大容量存儲(chǔ)器3由例如硬盤(HDD)、CD(Compact Disc,小型光盤)、DVD(DigitalVersatile Disc,數(shù)字通用光盤)等構(gòu)成。圖6是大容量存儲(chǔ)器3的結(jié)構(gòu)示意圖,為了簡(jiǎn)化說明,用簡(jiǎn)化的結(jié)構(gòu)來描述。即,該大容量存儲(chǔ)裝置3由多個(gè)軌道構(gòu)成,各軌道被分割為8個(gè)扇區(qū)。各軌道對(duì)應(yīng)于1個(gè)簇(4k字節(jié))。
主機(jī)裝置1除上述的存儲(chǔ)器訪問地址表Ak、數(shù)據(jù)量表Rk和NG表10外,還由動(dòng)作保證環(huán)境判斷裝置11、簇大小計(jì)算裝置12、存儲(chǔ)器數(shù)據(jù)讀入裝置13、數(shù)據(jù)寫入裝置14以及核對(duì)檢驗(yàn)裝置15構(gòu)成。本發(fā)明的控制裝置由簇大小計(jì)算裝置12、存儲(chǔ)器數(shù)據(jù)讀入裝置13、數(shù)據(jù)寫入裝置14以及核對(duì)檢驗(yàn)裝置15構(gòu)成。
動(dòng)作保證環(huán)境判斷裝置11判斷現(xiàn)在的環(huán)境是否在制造商不保證大容量存儲(chǔ)器3的動(dòng)作的動(dòng)作保證環(huán)境外。具體來說,動(dòng)作保證環(huán)境判斷裝置11接收來自沒有圖示的溫度傳感器、濕度傳感器、G(加速度)傳感器等各種傳感器的信號(hào),然后判斷這些信號(hào)表示的值是否表示在動(dòng)作保證環(huán)境外。根據(jù)動(dòng)作保證環(huán)境判斷裝置11的判斷結(jié)果,作為簇事件傳輸?shù)酱卮笮∮?jì)算裝置12。
簇大小計(jì)算裝置12對(duì)應(yīng)于本發(fā)明的地址獲得裝置,執(zhí)行與簇事件相應(yīng)的處理。如后面所詳述,該簇大小計(jì)算裝置12算出最優(yōu)簇大小S,生成寫入數(shù)據(jù)量表Rk,生成存儲(chǔ)器訪問地址表Ak,并根據(jù)這些發(fā)生讀入要求事件。通過簇大小計(jì)算裝置12發(fā)生的讀入要求事件傳輸?shù)酱鎯?chǔ)器數(shù)據(jù)讀入裝置13。
存儲(chǔ)器數(shù)據(jù)讀入裝置13對(duì)應(yīng)于本發(fā)明的數(shù)據(jù)獲得裝置,執(zhí)行與讀入要求事件對(duì)應(yīng)的處理。如后面所詳述,該存儲(chǔ)器數(shù)據(jù)讀入裝置13對(duì)在簇大小計(jì)算裝置12發(fā)生的讀入要求事件進(jìn)行響應(yīng),從存儲(chǔ)器2讀入數(shù)據(jù),然后發(fā)生要求向大容量存儲(chǔ)器3寫入的寫入要求事件。通過該存儲(chǔ)器數(shù)據(jù)讀入裝置13發(fā)生的寫入要求事件傳輸?shù)綌?shù)據(jù)寫入裝置14。
數(shù)據(jù)寫入裝置14執(zhí)行與寫入要求事件對(duì)應(yīng)的處理。如后面所詳述,該數(shù)據(jù)寫入裝置14對(duì)在存儲(chǔ)器數(shù)據(jù)讀入裝置13發(fā)生的寫入要求事件進(jìn)行響應(yīng),把存儲(chǔ)器數(shù)據(jù)讀入裝置13讀入的數(shù)據(jù)寫入大容量存儲(chǔ)器3,然后發(fā)生驗(yàn)證事件。該數(shù)據(jù)寫入裝置14發(fā)生的驗(yàn)證事件傳輸?shù)胶藢?duì)檢驗(yàn)裝置15。
核對(duì)檢驗(yàn)裝置15執(zhí)行與驗(yàn)證事件對(duì)應(yīng)的處理。如后面所詳述,該核對(duì)檢驗(yàn)裝置15對(duì)在數(shù)據(jù)寫入裝置14發(fā)生的驗(yàn)證事件進(jìn)行響應(yīng),讀出數(shù)據(jù)寫入裝置14寫入大容量存儲(chǔ)器3的數(shù)據(jù),并進(jìn)行核對(duì)檢驗(yàn)。如果寫入大容量存儲(chǔ)器3之前的數(shù)據(jù)和寫入后的數(shù)據(jù)不同,則再發(fā)生寫入事件。該核對(duì)檢驗(yàn)裝置15發(fā)生的寫入事件再次傳輸?shù)綌?shù)據(jù)寫入裝置14,再嘗試數(shù)據(jù)寫入。如果再嘗試次數(shù)超過NG寫入允許次數(shù)N,則發(fā)生錯(cuò)誤事件。
下面,參照?qǐng)D7~圖13所示的流程圖說明如上所述構(gòu)成的本發(fā)明實(shí)施形式1相關(guān)的信息存儲(chǔ)系統(tǒng)的動(dòng)作。本信息存儲(chǔ)系統(tǒng)采用事件起動(dòng)方式,各處理根據(jù)事件的發(fā)生而起動(dòng)。
圖7是表示發(fā)生把存儲(chǔ)器2內(nèi)的數(shù)據(jù)寫入大容量存儲(chǔ)器2的事件時(shí)的處理流程圖。如果發(fā)生利用沒有圖示的應(yīng)用程序把存儲(chǔ)器2內(nèi)的數(shù)據(jù)寫入大容量存儲(chǔ)器3的事件時(shí),則主機(jī)裝置1發(fā)生動(dòng)作保證環(huán)境外判斷事件(步驟ST1),并結(jié)束處理。
圖8是表示發(fā)生動(dòng)作保證環(huán)境外判斷事件時(shí)的處理流程圖。如果發(fā)生動(dòng)作保證環(huán)境外判斷事件,則主機(jī)裝置1的動(dòng)作保證環(huán)境判斷裝置11檢驗(yàn)是否在動(dòng)作保證環(huán)境外(步驟ST2)。具體來說,動(dòng)作保證環(huán)境判斷裝置11根據(jù)來自沒有圖示的溫度傳感器、濕度傳感器、G(加速度)傳感器等的信號(hào),檢驗(yàn)現(xiàn)在的環(huán)境是否在制造商不保證大容量存儲(chǔ)器3的動(dòng)作的動(dòng)作保證環(huán)境外。
如果該步驟ST2判斷為不在動(dòng)作保證環(huán)境外、即在動(dòng)作保證環(huán)境內(nèi),則與以往一樣,管理大容量存儲(chǔ)器3的文件的原有的文件系統(tǒng)把存儲(chǔ)器2內(nèi)的數(shù)據(jù)寫入大容量存儲(chǔ)器3(步驟ST3)。另一方面,如果上述步驟ST2中判斷為在動(dòng)作保證環(huán)境外,則動(dòng)作保證環(huán)境判斷裝置11發(fā)生簇事件(步驟ST4)。通過以上步驟,結(jié)束對(duì)動(dòng)作保證環(huán)境外判斷事件的處理。
圖9是表示發(fā)生簇事件時(shí)的處理流程圖。如果發(fā)生簇事件,則主機(jī)裝置1的簇大小計(jì)算裝置12執(zhí)行以下的處理。即,首先根據(jù)大容量存儲(chǔ)器3的全部容量算出最優(yōu)簇大小S(步驟ST5)。然后,生成寫入數(shù)據(jù)量表Rk(步驟ST6)。具體來講,把寫入對(duì)象數(shù)據(jù)區(qū)域大小D用最優(yōu)簇大小S除而得到的商設(shè)為n,把最優(yōu)簇大小S寫入R0~Rn-1,把余數(shù)MOD寫入Rn。通過這樣,生成寫入數(shù)據(jù)量表Rk。
然后,生成存儲(chǔ)器訪問地址表Ak(步驟ST7)。具體來講,根據(jù)寫入對(duì)象數(shù)據(jù)的起始地址P和寫入數(shù)據(jù)量表Rk,生成存儲(chǔ)器訪問地址表Ak(k=0,1,3,…,n-1,n)。該情況下,A0=P。
然后,將變量i的初始值置為“0”(步驟ST8),檢驗(yàn)Ai是否為END記號(hào)(步驟ST9)。這里,如果判斷為是END記號(hào),則結(jié)束對(duì)簇事件的處理。另一方面,如果判斷為不是END記號(hào),則把Ai代入存儲(chǔ)器訪問目的地址J,把Ri代入寫入用數(shù)據(jù)量Q(步驟ST10)。然后,把沒有圖示的NG寫入循環(huán)計(jì)數(shù)器的初始值置為“0”(步驟ST11)。然后,把存儲(chǔ)器訪問目的地址J和寫入用數(shù)據(jù)量Q作為變量,發(fā)生讀入要求事件(步驟ST12)。然后,將變量i加1(步驟ST13)。然后,流程回到步驟ST9,重復(fù)上述的處理。
圖10是表示發(fā)生讀入要求事件時(shí)的處理流程圖。如果發(fā)生讀入要求事件,則主機(jī)裝置1的存儲(chǔ)器數(shù)據(jù)讀入裝置13執(zhí)行以下的處理。即,從存儲(chǔ)器2的由存儲(chǔ)器訪問目的地址J指定的位置讀入由寫入用數(shù)據(jù)量Q指定的字節(jié)數(shù)的數(shù)據(jù)(步驟ST14)。然后,把存儲(chǔ)器訪問目的地址J和寫入用數(shù)據(jù)量Q作為變量,發(fā)生寫入要求事件(步驟ST15)。通過以上裝置,結(jié)束對(duì)讀入要求事件的處理。
圖11是表示發(fā)生寫入要求事件時(shí)的處理流程圖。如果發(fā)生寫入要求事件,則主機(jī)裝置1的數(shù)據(jù)寫入裝置14執(zhí)行以下的處理。首先,獲得寫入目的地址Z(步驟ST16)。具體來講,數(shù)據(jù)寫入裝置14調(diào)用原有的文件系統(tǒng),根據(jù)NG表提供可以寫入的大容量存儲(chǔ)器3的地址,并把該提供的地址代入大容量存儲(chǔ)器3的寫入目的地址Z。
然后,把通過以存儲(chǔ)器訪問目的地址J和寫入用數(shù)據(jù)量Q作為變量的讀入要求事件來讀入的數(shù)據(jù)寫入大容量存儲(chǔ)器3的由寫入目的地址Z指定的區(qū)域(步驟ST17)。然后,把存儲(chǔ)器訪問目的地址J、寫入用數(shù)據(jù)量Q和大容量存儲(chǔ)器3的寫入目的地址Z作為變量,發(fā)生驗(yàn)證事件(步驟ST18)。通過以上步驟,結(jié)束對(duì)寫入要求事件的處理。
圖12是表示發(fā)生驗(yàn)證事件時(shí)的處理流程圖。如果發(fā)生驗(yàn)證事件,則主機(jī)裝置1的核對(duì)檢驗(yàn)裝置15執(zhí)行以下的處理。首先,從大容量存儲(chǔ)器3的寫入目的地址Z讀入由寫入用數(shù)據(jù)量Q指定的字節(jié)數(shù)的數(shù)據(jù)(步驟ST19)。然后,檢驗(yàn)步驟ST19讀入的數(shù)據(jù)是否與響應(yīng)上述讀入要求事件而從存儲(chǔ)器2讀出并寫入大容量存儲(chǔ)器3的數(shù)據(jù)相同(步驟ST20)。如果該步驟ST20判斷為相同,則結(jié)束對(duì)驗(yàn)證事件的處理。
另一方面,如果步驟ST20判斷為不相同,則把該寫入目的地址Z追加到NG表10中(步驟ST21)。具體來講,如圖6所示,在NG表10的該位置上寫入表示寫入不允許的×記號(hào)。然后,將NG寫入循環(huán)計(jì)數(shù)器L加1(步驟ST22)。然后檢驗(yàn)NG寫入循環(huán)計(jì)數(shù)器L是否超過NG寫入允許次數(shù)N(步驟ST23),如果判斷為超過時(shí),發(fā)生錯(cuò)誤事件(步驟ST24)。另一方面,如果判斷為沒有超過,則把存儲(chǔ)器訪問目的地址J、寫入用數(shù)據(jù)量Q和NG寫入循環(huán)計(jì)數(shù)器L作為變量,發(fā)生寫入要求事件(步驟ST25)。通過以上步驟,結(jié)束驗(yàn)證事件的處理。
另外,在對(duì)步驟ST25發(fā)生的寫入要求事件的處理中,由于NG表10的該位置上寫入表示寫入不允許的×記號(hào),所以對(duì)大容量存儲(chǔ)器3的由其他的地址指定的區(qū)域進(jìn)行寫入。因此,依次改變大容量存儲(chǔ)器3的地址的同時(shí),再嘗試寫入,當(dāng)嘗試次數(shù)超過NG寫入允許次數(shù)N時(shí),識(shí)別為對(duì)大容量存儲(chǔ)器3的寫入不允許,并發(fā)生錯(cuò)誤事件。
圖13是表示發(fā)生錯(cuò)誤事件時(shí)的處理流程圖。如果發(fā)生錯(cuò)誤事件,則核對(duì)檢驗(yàn)裝置15中斷全部處理,把錯(cuò)誤代碼傳輸?shù)街鳈C(jī)裝置1(步驟ST26),結(jié)束處理。這樣,主機(jī)裝置1識(shí)別核對(duì)檢驗(yàn)中發(fā)生了錯(cuò)誤的情況,執(zhí)行錯(cuò)誤處理。
通過以上的處理,例如如圖2所示,當(dāng)把存儲(chǔ)在存儲(chǔ)器2的寫入對(duì)象數(shù)據(jù)存儲(chǔ)到大容量存儲(chǔ)器3的情況下,如果存在如圖5所示那樣設(shè)定可否寫入的NG表10,則如圖6所示,寫入對(duì)象數(shù)據(jù)避開用虛線表示的軌道,寫入到用粗實(shí)線表示的軌道上。
如以上所述,按照本發(fā)明實(shí)施形式1相關(guān)的信息存儲(chǔ)系統(tǒng),把存儲(chǔ)寫入不允許區(qū)域的地址的NG表10設(shè)置在主機(jī)裝置1內(nèi),在動(dòng)作保證環(huán)境外進(jìn)行向大容量存儲(chǔ)器3的數(shù)據(jù)寫入時(shí),參考該NG表10,對(duì)以寫入不允許區(qū)域的地址以外的地址指定的區(qū)域?qū)懭霐?shù)據(jù),由于這樣構(gòu)成,所以即使在動(dòng)作保證環(huán)境外,主機(jī)裝置1也可以正常把數(shù)據(jù)寫入大容量存儲(chǔ)器3而提高可靠性。
另外,由于核對(duì)寫入大容量存儲(chǔ)器3的數(shù)據(jù)和從大容量存儲(chǔ)器3獲得的數(shù)據(jù),當(dāng)不一致的情況下,把寫入數(shù)據(jù)的大容量存儲(chǔ)器3的地址寫入NG表10來進(jìn)行更新,所以總是可以正常把數(shù)據(jù)寫入大容量存儲(chǔ)器3。
另外,從存儲(chǔ)器2的數(shù)據(jù)讀出和向大容量存儲(chǔ)器3的數(shù)據(jù)寫入是以簇為單位進(jìn)行,由于這樣構(gòu)成,所以在完全寫入完成寫入對(duì)象數(shù)據(jù)之前可以判斷寫入錯(cuò)誤。其結(jié)果,由于可以盡早知道可否向大容量存儲(chǔ)器3的寫入,所以可以避免花費(fèi)長(zhǎng)時(shí)間進(jìn)行無用的寫入動(dòng)作,可以高效率地使信息存儲(chǔ)系統(tǒng)工作。
工業(yè)上的實(shí)用性如以上所述,即使在動(dòng)作保證環(huán)境外,本發(fā)明相關(guān)的信息存儲(chǔ)系統(tǒng)也能正常把數(shù)據(jù)寫入大容量存儲(chǔ)器而提高可靠性。
權(quán)利要求
1.一種信息存儲(chǔ)系統(tǒng),其特征在于,包括大容量存儲(chǔ)器、和對(duì)所述大容量存儲(chǔ)器的數(shù)據(jù)寫入進(jìn)行控制的主機(jī)裝置,所述主機(jī)裝置包括存儲(chǔ)所述大容量存儲(chǔ)器的寫入不允許區(qū)域的地址的NG表;判斷現(xiàn)在的環(huán)境是否在不能保證所述大容量存儲(chǔ)器的動(dòng)作的動(dòng)作保證環(huán)境外的動(dòng)作保證環(huán)境判斷裝置;以及當(dāng)所述動(dòng)作保證環(huán)境判斷裝置判斷為是在動(dòng)作保證環(huán)境外時(shí),把數(shù)據(jù)寫入根據(jù)沒有存儲(chǔ)在所述NG表的地址來指定的所述大容量存儲(chǔ)器的區(qū)域的控制裝置。
2.如權(quán)利要求1所述的信息存儲(chǔ)系統(tǒng),其特征在于,控制裝置包括在用動(dòng)作保證環(huán)境判斷裝置判斷為是在動(dòng)作保證環(huán)境外的情況下,獲得沒有存儲(chǔ)在NG表的大容量存儲(chǔ)器的地址的地址獲得裝置;獲得應(yīng)寫入所述大容量存儲(chǔ)器的數(shù)據(jù)的數(shù)據(jù)獲得裝置;把通過所述數(shù)據(jù)獲得裝置獲得的數(shù)據(jù)寫入由通過所述地址獲得裝置獲得的地址指定的所述大容量存儲(chǔ)器的區(qū)域的數(shù)據(jù)寫入裝置;核對(duì)通過所述數(shù)據(jù)寫入裝置寫入的數(shù)據(jù)和通過所述數(shù)據(jù)獲得裝置獲得的數(shù)據(jù),當(dāng)判斷為不一致的情況下把通過所述地址獲得裝置獲得的地址寫入所述NG表的核對(duì)檢驗(yàn)裝置。
3.如權(quán)利要求2所述的信息存儲(chǔ)系統(tǒng),其特征在于,地址獲得裝置通過要求管理大容量存儲(chǔ)器的文件的文件系統(tǒng)獲得沒有存儲(chǔ)在NG表的地址,來從所述文件系統(tǒng)獲得所述大容量存儲(chǔ)器的地址。
4.如權(quán)利要求2所述的信息存儲(chǔ)系統(tǒng),其特征在于,數(shù)據(jù)獲得裝置以簇為單位從存儲(chǔ)器獲得數(shù)據(jù)。
全文摘要
主機(jī)裝置1包括存儲(chǔ)大容量存儲(chǔ)器3的寫入不允許區(qū)域的地址的NG表10;判斷現(xiàn)在的環(huán)境是否在不能保證大容量存儲(chǔ)器3的動(dòng)作的動(dòng)作保證環(huán)境外的動(dòng)作保證環(huán)境判斷裝置11;以及當(dāng)動(dòng)作保證環(huán)境判斷裝置11判斷為是在動(dòng)作保證環(huán)境外時(shí),把數(shù)據(jù)寫入根據(jù)沒有存儲(chǔ)在NG表10的地址來指定的大容量存儲(chǔ)器的區(qū)域的控制裝置12、13、14和15,這樣即使在動(dòng)作保證環(huán)境外,也能正常把數(shù)據(jù)寫入大容量存儲(chǔ)器,提高可靠性。
文檔編號(hào)G06F3/06GK1723503SQ200480001830
公開日2006年1月18日 申請(qǐng)日期2004年10月27日 優(yōu)先權(quán)日2003年12月5日
發(fā)明者三次達(dá)也, 竹內(nèi)千香子 申請(qǐng)人:三菱電機(jī)株式會(huì)社