TWI447712B - 可延伸軔體介面下的硬碟測試方法 - Google Patents

可延伸軔體介面下的硬碟測試方法 Download PDF

Info

Publication number
TWI447712B
TWI447712B TW098126654A TW98126654A TWI447712B TW I447712 B TWI447712 B TW I447712B TW 098126654 A TW098126654 A TW 098126654A TW 98126654 A TW98126654 A TW 98126654A TW I447712 B TWI447712 B TW I447712B
Authority
TW
Taiwan
Prior art keywords
test
hard disk
control code
document
read
Prior art date
Application number
TW098126654A
Other languages
English (en)
Other versions
TW201106345A (en
Inventor
Ge-Xin Zeng
Original Assignee
Hon Hai Prec Ind Co Ltd
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 Hon Hai Prec Ind Co Ltd filed Critical Hon Hai Prec Ind Co Ltd
Priority to TW098126654A priority Critical patent/TWI447712B/zh
Publication of TW201106345A publication Critical patent/TW201106345A/zh
Application granted granted Critical
Publication of TWI447712B publication Critical patent/TWI447712B/zh

Links

Landscapes

  • Debugging And Monitoring (AREA)

Description

可延伸韌體介面下的硬碟測試方法
本發明涉及一種硬碟測試方法,尤其涉及一種可延伸韌體介面下的硬碟測試方法。
硬碟為電腦的主要部件,其性能的好壞直接影響整個電腦的性能,因此硬碟的性能測試是決定硬碟性能好壞的關鍵環節。在可延伸韌體介面(Extensible Firmware Interface,EFI)出現以前,主機板生產商對主機板讀寫硬碟性能的測試主要是在DOS下或者Windows或者Linux下進行,在這些作業系統下進行測試,需要對測試時間進行一定的限制,而且在進行硬碟的塊設備的讀寫測試時,需要避開作業系統所在的區域進行,增加了測試難度,降低了測試效率。
鑒於以上內容,有必要提供一種可延伸韌體介面下的硬碟測試方法,實現在EFI下對硬碟性能的測試。
一種可延伸韌體介面下硬碟的測試方法,該方法包括:(a)獲取硬碟設備樹中所有可延伸韌體介面能夠識別的設備路徑;(b)根據所獲取的設備路徑獲取所述設備路徑所對應的控制碼;(c)查找每一個設備路徑所在結點的父結點,並獲取所述父結點 資訊中的控制碼;(d)判斷步驟(b)所獲取的控制碼中是否存在與步驟(c)所獲取的父結點資訊中的控制碼相同的控制碼,若步驟(b)所獲取的控制碼中存在與步驟(c)所獲取的父結點資訊中的控制碼相同的控制碼,則進入步驟(e),若步驟(b)所獲取的控制碼中不存與步驟(c)所獲取的父結點資訊中的控制碼相同的控制碼,則進入步驟(f);(e)獲取所述相同控制碼所在結點的父結點資訊中的控制碼,並轉至步驟(d);(f)查看最終得到的控制碼數量,該控制碼數量即為待測硬碟的數量;及(g)根據最終得到的控制碼找到對應的設備路徑,所述設備路徑即為待測硬碟的型號。
相較於習知技術,所述可延伸韌體介面下的硬碟測試方法,利用EFI的特性,實現在短時間內主機板讀寫硬碟性能的測試,提高工作效率。
1‧‧‧儲存設備
2‧‧‧主機
3‧‧‧待測硬碟
100‧‧‧硬碟性能測試系統
S30‧‧‧獲取設備樹中所有可延伸韌體介面下能夠識別的設備路徑
S31‧‧‧獲取所述設備路徑對應的控制碼
S32‧‧‧查找每一個獲取的設備路徑所在結點的父結點,並獲取所述父結點資訊中的控制碼
S33‧‧‧步驟S31所獲取的控制碼中是否存在所獲取的父結點資訊中控制碼相同的控制碼?
S34‧‧‧獲取所述相同控制碼所在結點的父結點資訊中的控制碼
S35‧‧‧查看最終得到的控制碼數量
S36‧‧‧根據該最終得到的控制碼找到對應的設備路徑
圖1係本發明可延伸韌體介面下的硬碟測試方法較佳實施例之運行環境圖。
圖2係待測硬碟3的設備樹之示意圖。
圖3係本發明可延伸韌體介面下的硬碟資訊的測試方法較佳實施例之流程圖。
圖4係本發明可延伸韌體介面下的硬碟塊設備的測試方法較佳實施例之流程圖。
圖5係本發明可延伸韌體介面下的硬碟文檔系統空閒空間讀寫的測試方法較佳實施例之流程圖。
如圖1所示,係本發明可延伸韌體介面下的硬碟測試方法較佳實施例之運行環境圖。硬碟性能測試系統100運行於儲存設備1中,該儲存設備1可以為U盤,移動硬碟等。該儲存設備1透過USB介面連接於主機2,該主機2透過讀取該儲存設備1中的硬碟性能測試系統100對待測硬碟3進行測試。本較佳實施例中,該待測硬碟3可以為一個,也可以為多個。每個待測硬碟3包括多個塊設備及文檔系統,每個塊設備是可獨立讀寫的。每個待測硬碟3分別可用一個設備樹來表示,設備樹的根結點表示該待測硬碟3,葉子結點表示該待測硬碟3的塊設備及文檔系統。本較佳實施例中,每個待測硬碟3至少包括2個格式化後的分區,假設格式化的分區分別為分區C和分區D,其中分區C為文檔配置表(File Allocation Table 32,FAT32)系統,分區D為New Technology File System(NTFS系統)。所述FAT32系統用於測試硬碟文檔系統的讀寫性能及塊設備的讀寫性能,所述NTFS系統用於測試塊設備的讀寫性能。本發明可延伸韌體介面下的硬碟測試包括三個部分的測試:待測硬碟3資訊的測試,待測硬碟3的塊設備的測試及待測硬碟3的文檔系統的測試。
如圖2所示為待測硬碟3的設備樹之示意圖。該設備樹的每個葉子結點表示一個塊設備或者一個文檔系統,每個結點資訊包括設備路徑(Device path)和控制碼(Handle),該設備路徑表示該塊設備或者文檔系統的路徑,控制碼表示該設備路徑對應的控制碼。如圖2所示的設備樹中包括兩個待測硬碟,該兩個待測硬碟的型號分別為:Hitachi HDT725025VLA380和ST380215AS,本發明透過該設備樹找出每個待測硬碟3中的所有塊設備和文檔系統 ,再透過這些塊設備和文檔系統查找到該待測硬碟3的資訊,該待測硬碟3的資訊包括待測硬碟3的數量,每個待測硬碟3的廠商,介面類型及固件(firmware)版本等。例如:標注201所指向的結點信息為:[170]FAT File System,該結點表示的是文檔系統,其中,“FAT File System”表示該結點的設備路徑,“170”表示該設備路徑所對應的控制碼。標注202所指向的結點信息為:[171]PciRoot(0x0)/Pci(0x1F,0x5)/ATA(Primary,Master,0x0)/HD(2,MBR,0x19EFD1A8,0x140249A,0xC80343F),該結點表示的是塊設備,其中,“PciRoot(0x0)/Pci(0x1F,0x5)/ATA(Primary,Master,0x0)/HD(2,MBR,0x19EFD1A8,0x140249A,0xC80343F)”表示該結點的設備路徑,“171”表示該設備路徑所對應的控制碼。
如圖3所示,係本發明可延伸韌體介面下的硬碟資訊的測試方法較佳實施例之流程圖。
步驟S30,硬碟性能測試系統100獲取設備樹中所有EFI能夠識別的設備路徑。如圖2所示,EFI能夠識別的設備路徑包括:標注201、202、203、204、301、302、303所對應的結點資訊中的設備路徑。
步驟S31,根據所獲取的設備路徑獲取該設備路徑所對應的控制碼。
步驟S32,查找所獲取的設備路徑所在結點的父結點,並獲取該父結點資訊中的控制碼。例如,如圖2所示,標注203指向的結點的父結點的控制碼為171,標注204指向的結點的父結點的控制碼 為171,標注303指向的結點的父結點的控制碼為175。
步驟S33,判斷步驟S31所獲取的控制碼中是否存在與所獲取的父結點資訊中的控制碼相同的控制碼。若步驟S31所獲取的控制碼中存在與所獲取的父結點資訊中的控制碼相同的控制碼,則進入步驟S34。若步驟S31所獲取的控制碼中不存在與所獲取的父結點資訊中的控制碼相同的控制碼,則進入步驟S35。
步驟S34,獲取所述相同控制碼所在結點的父結點資訊中的控制碼,並轉至步驟S33。例如圖2中,標注203和標注204所指向的結點的父結點的控制碼為171,與步驟S31中獲取的標注202所指向結點的控制碼相同,及標注303所指向的結點的父結點的控制碼為175,與步驟S31中獲取的標注302所指向結點的控制碼相同,則再繼續查找控制碼171及控制碼175所在結點的父結點資訊中的控制碼,得到的控制碼為16E及16F,轉至步驟S33,步驟S31所獲取的控制碼中不存在該控制碼16E及16F,則進入步驟S35。
步驟S35,查看最終得到的控制碼數量,該控制碼數量即為待測硬碟3的數量。如圖2所示,最終得到的控制碼為:16E與16F,即待測硬碟3的數量為2。
步驟S36,根據該最終得到的控制碼找到對應的設備路徑,該設備路徑即為該待測硬碟3的型號,從該型號中獲取該待測硬碟3的資訊。例如,控制碼16E為一個待測硬碟3的控制碼,該控制碼對應的設備路徑為Hitachi HDT725025VLA380,即為該待測硬碟3的型號,從該型號中可得知該待測硬碟3的資訊為:廠商:Hitachi,容量大小:250G,介面類型為SATAII 8M。
如圖4所示,係本發明可延伸韌體介面下的硬碟塊設備的測試方法較佳實施例之流程圖。
步驟S40,將EFI下識別的待測硬碟3的每個塊設備分成多個小塊,該小塊的數量可由測試人員自行設置,本較佳實施例中,每個小塊可以同時進行測試,也可以按照先後順序進行測試,該先後順序可由測試人員自行設定。每個小塊的大小必須是512位元組的整數倍。例如,假設每個塊設備大小為TotalSize MB,每個塊設備被分成N個小塊,則每個小塊的大小為TotalSize*1024*1024/N位元組。
步驟S41,於每個小塊中劃分一個測試空間,該測試空間用於小塊的讀寫測試。該測試空間的大小必須是512位元組的整數倍。本較佳實施例中,該測試空間為每個小塊的最前面的位元組。例如,若一個小塊的大小為10MB,該小塊的測試空間為1M,則該小塊的測試空間為該小塊的最前面的1024位元組。若分成的小塊數量大,測試的位元組大,則測試的時間長,待測硬碟3的測試面較大。若分成的小塊數量小,測試的位元組小,則測試的時間短,待測硬碟3的測試面較小。若每個小塊的測試空間等於每個小塊的大小,則表示測試整個待測硬碟3。
步驟S42,將每個測試空間內原本儲存的資料儲存到該測試空間所在小塊的緩衝區內,該緩衝區即為該小塊的記憶體。
步驟S43,往測試空間內寫入測試資料。
步驟S44,讀出測試空間內的資料。
步驟S45,判斷該讀出的資料是否與寫入的測試資料相同。若相 同,進入步驟S46。若不相同,進入步驟S47。
步驟S46,提示該小塊讀寫測試成功,並將儲存到緩衝區的資料恢復儲存到該測試空間內。
步驟S47,提示該小塊讀寫測試失敗。
如圖5所示,係本發明可延伸韌體介面下的硬碟文檔系統空閒空間讀寫的測試方法較佳實施例之流程圖。
步驟S50,列舉出待測硬碟3在EFI下支援的所有文檔系統分區。本較佳實施例中,可根據設備樹得出該待測硬碟3在EFI下支援的文檔系統分區。所述文檔系統分區可以同時測試,也可以按照先後順序測試,該先後順序可以由測試人員自行設定。
步驟S51,將標準文檔複製到每個文檔系統分區的空閒空間內,該標準文檔可複製多份以填滿該文檔系統分區的空閒空間。該標準文檔包括標準文檔的內容及該標準文檔的屬性,該標準文檔的屬性包括該標準文檔的大小,EFI下複製該標準文檔所需要的標準時間等。
步驟S52,讀出每個文檔系統分區內的文檔。
步驟S53,比較讀出的文檔與複製到每個文檔系統分區內的標準文檔是否相同。若相同,則進入步驟S54。若不相同,則進入步驟S56。
步驟S54,判斷讀出文檔的時間是否正常。根據該標準文檔屬性中的該標準文檔在EFI下複製的標準時間來判斷讀出該文檔的時間是否正常。若讀出文檔的時間正常,進入步驟S55。若讀出文 檔的時間不正常,進入步驟S56。
步驟S55,提示用戶該文檔系統分區測試成功。
步驟S56,提示用戶該文檔系統分區測試失敗。
最後所應說明的是,以上實施例僅用以說明本發明的技術方案而非限制,儘管參照以上較佳實施例對本發明進行了詳細說明,本領域的普通技術人員應當理解,可以對本發明的技術方案進行修改或等同替換,而不脫離本發明技術方案的精神和範圍。
S30‧‧‧獲取設備樹中所有可延伸韌體介面下能夠識別的設備路徑
S31‧‧‧獲取所述設備路徑對應的控制碼
S32‧‧‧查找每一個獲取的設備路徑所在結點的父結點,並獲取所述父結點資訊中的控制碼
S33‧‧‧步驟S31所獲取的控制碼中是否存在所獲取的父結點資訊中控制碼相同的控制碼?
S34‧‧‧獲取所述相同控制碼所在結點的父結點資訊中的控制碼
S35‧‧‧查看最終得到的控制碼數量
S36‧‧‧根據該最終得到的控制碼找到對應的設備路徑

Claims (9)

  1. 一種可延伸韌體介面下的硬碟測試方法,該方法包括步驟:(a)獲取硬碟設備樹中所有可延伸韌體介面能夠識別的設備路徑;(b)根據所獲取的設備路徑獲取所述設備路徑所對應的控制碼;(c)查找每一個設備路徑所在結點的父結點,並獲取所述父結點資訊中的控制碼;(d)判斷步驟(b)所獲取的控制碼中是否存在與所獲取的父結點資訊中的控制碼相同的控制碼,若步驟(b)所獲取的控制碼中存在與所獲取的父結點資訊中的控制碼相同的控制碼,則進入步驟(e),若步驟(b)所獲取的控制碼中不存與所獲取的父結點資訊中的控制碼相同的控制碼,則進入步驟(f);(e)獲取所述相同控制碼所在結點的父結點資訊中的控制碼,並轉至步驟(d);(f)查看最終得到的控制碼數量,該控制碼數量即為待測硬碟的數量;及(g)根據最終得到的控制碼找到對應的設備路徑,所述設備路徑即為待測硬碟的型號。
  2. 如申請專利範圍第1項所述之可延伸韌體介面下的硬碟測試方法,該方法還包括步驟:從所獲取的待測硬碟的型號中得到待測硬碟的資訊,該待測硬碟的資訊包括廠商,硬碟容量大小,及介面類型。
  3. 如申請專利範圍第1項所述之可延伸韌體介面下的硬碟測試方法,所述設備樹的每個結點表示一個塊設備或者一個文檔系統。
  4. 如申請專利範圍第3項所述之可延伸韌體介面下的硬碟測試方法,該方法 還包括塊設備的測試步驟,所述塊設備的測試步驟包括:將可延伸韌體介面下識別的待測硬碟的每個塊設備分成數個小塊;於每個小塊中劃分一個測試空間;將每個測試空間內原本儲存的資料儲存到測試空間所在小塊的緩衝區內;往測試空間內寫入測試資料;讀出測試空間內的資料;當讀出的資料與寫入的測試資料相同時,提示該小塊讀寫測試成功,並將儲存到緩衝區的資料恢復儲存到該測試空間內;及當讀出的資料與寫入的測試資料不同時,提示該小塊讀寫測試失敗。
  5. 如申請專利範圍第4項所述之可延伸韌體介面下的硬碟測試方法,所述每個小塊的大小是512位元組的整數倍。
  6. 如申請專利範圍第4項所述之可延伸韌體介面下的硬碟測試方法,所述測試空間的大小是512位元組的整數倍,且該測試空間為每個小塊的最前面的位元組。
  7. 如申請專利範圍第3所述之可延伸韌體介面下的硬碟測試方法,該方法還包括文檔系統空閒空間的讀寫測試步驟,所述文檔系統空閒空間的讀寫測試步驟包括:列舉出待測硬碟在可延伸韌體介面下支援的所有文檔系統分區;將標準文檔複製到每個文檔系統分區的空閒空間內;讀出每個文檔系統分區內的文檔;若讀出的文檔與複製到每個文檔系統分區內的標準文檔不同,則提示該文檔系統分區空閒空間的讀寫測試失敗;若讀出的文檔與複製到每個文檔系統分區內的標準文檔相同,則判斷所述讀出文檔的時間是否正常; 若讀出文檔的時間正常,則提示該文檔系統分區空閒空間的讀寫測試成功;及若讀出文檔的時間不正常,則提示該文檔系統分區空閒空間的讀寫測試失敗。
  8. 如申請專利範圍第7所述之可延伸韌體介面下的硬碟測試方法,所述標準文檔包括標準文檔的內容及該標準文檔的屬性,該標準文檔的屬性包括該標準文檔的大小、可延伸韌體介面下複製該標準文檔所需要的標準時間。
  9. 如申請專利範圍第8所述之可延伸韌體介面下的硬碟測試方法,所述讀出文檔的時間正常是指讀出該文檔的時間與複製該標準文檔所需要的標準時間一致。
TW098126654A 2009-08-10 2009-08-10 可延伸軔體介面下的硬碟測試方法 TWI447712B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW098126654A TWI447712B (zh) 2009-08-10 2009-08-10 可延伸軔體介面下的硬碟測試方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW098126654A TWI447712B (zh) 2009-08-10 2009-08-10 可延伸軔體介面下的硬碟測試方法

Publications (2)

Publication Number Publication Date
TW201106345A TW201106345A (en) 2011-02-16
TWI447712B true TWI447712B (zh) 2014-08-01

Family

ID=44814316

Family Applications (1)

Application Number Title Priority Date Filing Date
TW098126654A TWI447712B (zh) 2009-08-10 2009-08-10 可延伸軔體介面下的硬碟測試方法

Country Status (1)

Country Link
TW (1) TWI447712B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI461906B (zh) * 2011-09-09 2014-11-21 Hon Hai Prec Ind Co Ltd 硬碟測試資料分析方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6889340B1 (en) * 2000-10-13 2005-05-03 Phoenix Technologies Ltd. Use of extra firmware flash ROM space as a diagnostic drive
TW200825719A (en) * 2006-12-07 2008-06-16 Inventec Corp Method for testing hard disk of extensible firmware interface
US20090113257A1 (en) * 2007-10-30 2009-04-30 Inventec Corporation Device and method for testing sas channels
US7546487B2 (en) * 2005-09-15 2009-06-09 Intel Corporation OS and firmware coordinated error handling using transparent firmware intercept and firmware services

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6889340B1 (en) * 2000-10-13 2005-05-03 Phoenix Technologies Ltd. Use of extra firmware flash ROM space as a diagnostic drive
US7546487B2 (en) * 2005-09-15 2009-06-09 Intel Corporation OS and firmware coordinated error handling using transparent firmware intercept and firmware services
TW200825719A (en) * 2006-12-07 2008-06-16 Inventec Corp Method for testing hard disk of extensible firmware interface
US20090113257A1 (en) * 2007-10-30 2009-04-30 Inventec Corporation Device and method for testing sas channels

Also Published As

Publication number Publication date
TW201106345A (en) 2011-02-16

Similar Documents

Publication Publication Date Title
US7873885B1 (en) SSD test systems and methods
US8230160B2 (en) Flash memory storage system and flash memory controller and data processing method thereof
TWI432987B (zh) 記憶體儲存裝置、其記憶體控制器與病毒掃描方法
US8850114B2 (en) Storage array controller for flash-based storage devices
US20170212814A1 (en) Accelerated data recovery in a storage system
US9037541B2 (en) Metadata for data storage array
JP2014513338A5 (ja) 仮想ディスクの最適圧縮のための方法、コンピュータ可読記憶媒体及びシステム
US8473787B2 (en) Intelligent LUN generation and management
TW201205288A (en) Data protecting method, memory controller and portable memory storage device
US20140101106A1 (en) Log server and log file storage method
CN105468482B (zh) 一种硬盘盘位识别和故障诊断方法及其服务器设备
US20120117367A1 (en) Electronic apparatus and booting method thereof
KR20170023734A (ko) 플래시 메모리 플러싱을 개선하는 방법 및 시스템
US8255656B2 (en) Storage device, memory controller, and data protection method
CN112084070B (zh) L2p映射数据恢复方法、装置、存储介质及电子设备
WO2017143843A1 (zh) 元数据修复方法及装置
US20140365824A1 (en) Method for recovering hard disk data, server and distributed storage system
US20140164845A1 (en) Host computer and method for testing sas expanders
CN101963931A (zh) 可扩展固件接口下的硬盘测试方法
GB2538621A (en) Verification of storage media upon deployment
TW201504937A (zh) 由實體儲存裝置中所選分區所構成的虛擬儲存裝置
CN104133640B (zh) 从休眠快速恢复
TWI447712B (zh) 可延伸軔體介面下的硬碟測試方法
US20110153674A1 (en) Data storage including storing of page identity and logical relationships between pages
US10108537B2 (en) Mechanisms for reproducing storage system metadata inconsistencies in a test environment

Legal Events

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