[發明專利]存儲介質讀寫錯誤的檢測方法有效
| 申請號: | 201010595387.1 | 申請日: | 2010-12-10 |
| 公開(公告)號: | CN102034516A | 公開(公告)日: | 2011-04-27 |
| 發明(設計)人: | 王志波 | 申請(專利權)人: | 創新科存儲技術有限公司;創新科軟件技術(深圳)有限公司 |
| 主分類號: | G11B20/18 | 分類號: | G11B20/18 |
| 代理公司: | 北京德琦知識產權代理有限公司 11018 | 代理人: | 王一斌;王琦 |
| 地址: | 100191 北京市海*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 存儲 介質 讀寫 錯誤 檢測 方法 | ||
技術領域
本發明涉及存儲技術,特別涉及一種存儲介質讀寫錯誤的檢測方法。
背景技術
圖1為現有技術中存儲介質讀寫過程的原理示意圖,如圖1所示,當對存儲介質103進行寫操作時,主機端101向存儲端102下發寫命令,存儲端102內部的各個處理模塊(圖未示出)對寫命令所包括的地址和數據進行一系列的處理后,向存儲介質103相應的地址寫入所要求的數據。所述各個處理模塊進行的處理是復雜多樣的,例如,有的處理模塊負責地址轉換。
類似地,當對存儲介質103進行讀操作時,主機端101向存儲端102下發讀命令,存儲端102內部的各個處理模塊(圖未示出)對讀命令所包括的地址進行一系列的處理后,從存儲介質103相應的地址取出數據,然后存儲端102內部的各個處理模塊(圖未示出)對數據進行一系列的處理后返回至主機端101。
需要說明的是,上述存儲介質103通常為磁盤或由若干磁盤構成的磁盤組。
在實際應用中,當出現數據一致性問題時,即讀取的數據與所要求的數據不一致時,需要進行檢測,以確定錯誤類型到底是讀錯誤還是寫錯誤,甚至更進一步確定具體哪個環節出現了問題才導致出現讀錯誤或者寫錯誤。
在現有技術中,通常采用以下方法對磁盤的讀寫錯誤進行檢測:將磁盤的數據導出,判斷磁盤上的數據是否為所要求的數據,如果不是,則說明出現了寫錯誤,如果磁盤上的數據確實為所要求的數據,則判斷出現了讀錯誤。進一步地,如果錯誤類型為寫錯誤,則依次通過人工方式在存儲端102中負責寫操作的各個處理模塊上增加關鍵點,并檢測關鍵點的輸出信息,以檢查具體在哪個處理模塊上出現了問題。類似地,如果錯誤類型為讀錯誤,則依次通過人工方式在存儲端102中負責讀操作的各個處理模塊上增加關鍵點,并檢測關鍵點的輸出信息,以檢查具體在哪個處理模塊上出現了錯誤。
可見,現有技術中主要是通過人工方式來進行存儲介質讀寫錯誤的檢測,整個檢測過程必須依靠人工方式一步一步地執行,檢測效率比較低。
發明內容
有鑒于此,本發明提供一種存儲介質讀寫錯誤的檢測方法,能夠快速地檢測存儲介質的讀寫錯誤。
為解決上述技術問題,本發明的技術方案是這樣實現的:
一種存儲介質讀寫錯誤的檢測方法,該方法包括:
A、主機端構造寫命令,所述寫命令用于確定存儲介質中測試扇區的地址;
B、主機端在所述寫命令中添加邏輯塊地址LBA和測試用例編號ID,然后將所述寫命令發送至存儲端,其中,不同寫命令中添加的測試用例ID相同,LBA各不相同;
C、主機端判斷是否收到存儲端返回的寫命令完成響應,如果是,則執行步驟D;否則,返回執行步驟A;
D、主機端構造讀命令,然后將所述讀命令發送至存儲端,所述讀命令用于在所述確定的測試扇區的地址上讀回數據;
E、主機端判斷存儲端返回的讀回數據中的LBA是否和步驟B中所述寫命令中添加的LBA相同,讀回數據中的測試用例ID是否和步驟B中所述寫命令中添加的測試用例ID相同,如果讀回數據中的LBA和所述寫命令中添加的LBA相同,且讀回數據中的測試用例ID和所述寫命令中添加的測試用例ID相同,則返回執行步驟A;否則,執行步驟F;
F、主機端重新將步驟D中所述讀命令發送至存儲端;
G、主機端判斷存儲端返回的讀回數據中的LBA是否和步驟B中所述寫命令中添加的LBA相同,讀回數據中的測試用例ID是否和步驟B中所述寫命令中添加的測試用例ID相同,如果讀回數據中的LBA和所述寫命令中添加的LBA相同,且讀回數據中的測試用例ID和所述寫命令中添加的測試用例ID相同,則確定錯誤類型為讀錯誤;否則,確定錯誤類型為寫錯誤;
H、主機端記錄步驟G中所述確定的錯誤類型。
步驟H進一步包括:主機端記錄錯誤類型對應的寫命令中的測試扇區的地址、LBA和測試用例ID。
所述記錄的內容以錯誤日志的形式保存在主機端中。
所述存儲介質為磁盤。
一種存儲介質讀寫錯誤的檢測方法,該方法包括:
A、存儲端接收來自主機端的寫命令,并判斷所述寫命令是否為接收到的第一個寫命令,如果是,則保存所述寫命令中的測試用例編號ID,然后執行步驟B;否則,直接執行步驟B;
B、存儲端按照所述寫命令確定的存儲介質中測試扇區的地址,將所述寫命令中的邏輯塊地址LBA和測試用例ID保存至所述測試扇區上,并在保存完畢后向主機端返回寫命令完成響應;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于創新科存儲技術有限公司;創新科軟件技術(深圳)有限公司,未經創新科存儲技術有限公司;創新科軟件技術(深圳)有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201010595387.1/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:墊高的廚房地面泡沫混凝土體系
- 下一篇:復合結構的大理石板材





