郝幸之
(江蘇無線電廠有限公司,江蘇南京210000)
計(jì)算機(jī)硬件測試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
郝幸之
(江蘇無線電廠有限公司,江蘇南京210000)
分析了計(jì)算機(jī)硬件測試系統(tǒng)的設(shè)計(jì)規(guī)范,研究了各測試功能模塊的實(shí)現(xiàn)。
計(jì)算機(jī);硬件測試;設(shè)計(jì)與實(shí)現(xiàn)
計(jì)算機(jī)硬件是計(jì)算機(jī)系統(tǒng)中各種物理裝置的總稱,并且按照系統(tǒng)結(jié)構(gòu)的要求可以將其形成一個(gè)統(tǒng)一的有機(jī)體,從而有利于實(shí)現(xiàn)對計(jì)算機(jī)內(nèi)各種軟件正常運(yùn)行的有效維護(hù)。因此,對數(shù)據(jù)和程序進(jìn)行輸入和存儲,按照程序加工數(shù)據(jù)是計(jì)算機(jī)硬件的主要功能。
1.1 通用設(shè)計(jì)方面的要求
1)基于XML文件對測試時(shí)間和次數(shù)等通用參數(shù)的支持,配置時(shí)所輸入的文件必須為該形式的文件,其中測試時(shí)間指的是測試所能夠持續(xù)的時(shí)長;測試次數(shù)則是在指定測試時(shí)間內(nèi)配置所完成的次數(shù),每個(gè)測試所包括的不同可選測試項(xiàng)目的配置都是由XML文件指定的。2)每個(gè)測試工具只要是硬件相關(guān),便都必須具備硬件顯示信息的基本功能,如硬件測試的廠商、端口號、型號以及驅(qū)動(dòng)的版本等,以UI模塊的設(shè)計(jì)為準(zhǔn)則實(shí)現(xiàn)對每個(gè)測試工具UI的設(shè)計(jì)。測試完成后,程序的返回值只有0與非0兩種情況,其中0代表的測試正常,非0則表示測試過程中程序出現(xiàn)自定義的錯(cuò)誤。3)測試模塊需要設(shè)計(jì)成自動(dòng)運(yùn)行,即不要安裝任何軟件便可以自動(dòng)運(yùn)行,在同一目錄內(nèi)使用測試所需要的非Windows自庫文件和相關(guān)執(zhí)行程序。同時(shí),編寫者在測試模塊要封裝成相關(guān)測試構(gòu)件的形式。
1.2 文檔需求
測試模塊在進(jìn)行交付和驗(yàn)收時(shí)需要提交完整的文檔:1)交檔的目錄需要經(jīng)過一定的交付流程;2)文檔在設(shè)計(jì)過程中會涉及到多種軟件的應(yīng)用,如高層設(shè)計(jì)、組織結(jié)構(gòu)、相關(guān)的文件關(guān)系圖、數(shù)據(jù)流圖以及流程圖等;3)代碼源程序,主要包括各種文件,如資源、程序代碼以及其他文件等;4)代碼所對應(yīng)的各種程序設(shè)計(jì)文檔,函數(shù)和全局變量的說明、函數(shù)輸入輸出以及關(guān)鍵數(shù)據(jù)的結(jié)構(gòu)等;5)編譯和使用過程中會用到相關(guān)的說明書,如各種執(zhí)行文件的編譯和生成、安裝包的部署和發(fā)行、測試模塊所使用的各種說明書以及要求Word和PDF所提供的各種格式以及眾多版本等。
1.3 測試構(gòu)件
測試構(gòu)件是由運(yùn)行測試機(jī)上眾多的個(gè)體模塊構(gòu)成的,而測試模塊主要是每個(gè)單獨(dú)測試項(xiàng)目所需要的各種文件的集合體以及按照各種要求完成對相關(guān)文件和數(shù)據(jù)的配置,如對處理器、內(nèi)存以及硬盤的測試等。同時(shí),在服務(wù)器或者PC等測試系統(tǒng)中,各種測試項(xiàng)目需要在同一個(gè)目錄內(nèi)進(jìn)行集中統(tǒng)一的存放和管理。但是,測試構(gòu)件可能是自行開發(fā)的也可能是集成第三方開發(fā)的,又或者是商業(yè)所集成的各種測試工具等。因此,測試構(gòu)件構(gòu)成的要求非常嚴(yán)格,不僅能夠直接運(yùn)行各種執(zhí)行程序文件,支持和滿足第三方程序的執(zhí)行,將各種測試結(jié)果的數(shù)據(jù)收集起來經(jīng)過整理確保其格式的統(tǒng)一性,并且對于各種商業(yè)測試還能實(shí)現(xiàn)自動(dòng)安裝以及完成相關(guān)的執(zhí)行處理操作等。
1.4 目錄結(jié)構(gòu)
定義測試流程是在測試構(gòu)件中所引用的最小測試單位,但是如果測試程序是相同的,測試流程和參數(shù)不同,則生成的測試構(gòu)件有很多個(gè)。但是這些測試構(gòu)件所指的測試程序都是相同的,只是所包含的測試和數(shù)據(jù)配置有所不同。同時(shí),測試構(gòu)件在系統(tǒng)中是以目錄文件的形式存在的,其名稱的區(qū)分主要是目錄名。
2.1 處理器測試
1)設(shè)計(jì)要求。處理器的測試往往分為功能和壓力測試,對功能的測試是對處理器廠商、型號、類別、當(dāng)前運(yùn)行的頻率、支持的指令集合以及標(biāo)稱頻率的測試;壓力測試則是對單核和多核并行壓力的測試。2)總體設(shè)計(jì)功能的實(shí)現(xiàn)。一方面,可以顯示CPU的各種信息,鼠標(biāo)相關(guān)信息的安裝,如驅(qū)動(dòng)等,左右鍵的調(diào)換以及具體移動(dòng)的數(shù)據(jù);另一方面,還能測試CPU的速度。3)部分代碼實(shí)現(xiàn)。CPU速度測試的原理原本就十分簡單,即在規(guī)定時(shí)間內(nèi)統(tǒng)計(jì)和記錄CPU運(yùn)行的次數(shù)以及變化情況,然后相應(yīng)地計(jì)算出其具體的速度。本模塊的模型是對話框形式,通過對各控件變量進(jìn)行一定的類向?qū)в成洌约岸x相關(guān)時(shí)間類,通過單擊相關(guān)事件按鈕便能夠測試速度的功能。另外,完成相應(yīng)的測試之后,還會在相應(yīng)的目錄下面生成result.txt文件,以此來對本次測試的相關(guān)信息進(jìn)行記錄。
2.2 存儲器測試
1)設(shè)計(jì)要求。硬盤是電腦重要的外部存儲器之一,不僅擁有超大的容量,并且運(yùn)行速度非??欤⑶移渥鳛闄C(jī)械部件的一種,指標(biāo)非常多,尋道時(shí)間、主軸轉(zhuǎn)速都存在,單碟容量和內(nèi)部所傳輸?shù)乃俾适切阅芊矫娴闹饕w現(xiàn)。其中性能被限制主要與硬盤的子系統(tǒng)有關(guān),雖然硬盤的外存很快,但是其速度相對于CPU內(nèi)存而言非常慢。另外,存儲器的測試主要包括對基本信息和讀寫的測試。2)總體設(shè)計(jì)。在Windows和Linux系統(tǒng)中都可以把設(shè)備當(dāng)作相關(guān)的文件來操作,對于Windows系統(tǒng)而言,可以將串口1、2當(dāng)作com1、2傳遞給CreateFile函數(shù)中,其中利用文件放路徑的形式將所需要進(jìn)行訪問和操作的硬件設(shè)備全部指明是參數(shù)COM1和COM2的根本目的。這在一定程度上與所要訪問的串行端口十分相似,并且還能實(shí)現(xiàn)對磁盤扇區(qū)的訪問。值得注意的是硬盤操作的標(biāo)識并不需要用disk1和disk2來標(biāo)識?;谶壿嬌葏^(qū)在邏輯分區(qū)的上面,在對磁盤邏輯分區(qū)進(jìn)行訪問的過程中需要指定某種特定的格式。3)算法實(shí)現(xiàn)。Windows磁盤本身具有相對較大的緩沖區(qū),在讀取相關(guān)的磁盤數(shù)據(jù)時(shí),系統(tǒng)實(shí)際讀取數(shù)據(jù)的長度可能會比指定數(shù)據(jù)長,這樣的好處便是當(dāng)你下次再讀取相關(guān)數(shù)據(jù)時(shí),如果緩沖區(qū)保留了你所要讀取的數(shù)據(jù),便不需要讀盤直接復(fù)制過去即可;在磁盤中寫入數(shù)據(jù)時(shí),系統(tǒng)會自動(dòng)提醒你將數(shù)據(jù)復(fù)制到緩沖區(qū),待寫入成功之后,系統(tǒng)后臺會逐漸在磁盤中寫入數(shù)據(jù)。若編寫程序時(shí)沒有對上述因素進(jìn)行考慮,則所測試的結(jié)果可能并不準(zhǔn)確。
本文通過對計(jì)算機(jī)硬件測試系統(tǒng)設(shè)計(jì)規(guī)范的探究,掌握其在通用設(shè)計(jì)、文檔、測試構(gòu)件以及目錄結(jié)構(gòu)方面的具體要求,在此基礎(chǔ)上從處理器和存儲器測試兩方面對各測試功能模塊的實(shí)現(xiàn)進(jìn)行了深入的研究和分析。
(編輯:賈娟)
Design and Implementation of Computer Hardware Testing System
Hao Xingzhi
(Jiangsu Wireless Power Plant Co.,Ltd.,Nanjing Jiangsu 210000)
This paper analyzes the design specifications of the computer hardware testing system,and studies the realization of each test functionmodule.
computer;hardware testing;design and Implementation
TP306
A
2095-0748(2016)24-0117-02
10.16525/j.cnki.14-1362/n.2016.24.50
2016-11-29
郝幸之(1988—),男,江蘇淮安人,本科,助理工程師,研究方向:計(jì)算機(jī)科學(xué)與技術(shù)、智能終端應(yīng)用。