日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
VB.NET測(cè)試硬盤速度代碼實(shí)解讀

VB.NET編程語(yǔ)言的用途相比其他語(yǔ)言來(lái)說(shuō),還是有些不同之處。其中最大的特點(diǎn)就是可以實(shí)現(xiàn)對(duì)移動(dòng)設(shè)備的操作。前日在用SiSoftware Sandra 2004測(cè)試硬盤性能時(shí)突發(fā)其想,用自己熟悉的VB.NET測(cè)試硬盤速度行不行呢?具體怎么做呢?#t#

創(chuàng)新互聯(lián)成都網(wǎng)站建設(shè)按需策劃設(shè)計(jì),是成都網(wǎng)站推廣公司,為成都輕質(zhì)隔墻板提供網(wǎng)站建設(shè)服務(wù),有成熟的網(wǎng)站定制合作流程,提供網(wǎng)站定制設(shè)計(jì)服務(wù):原型圖制作、網(wǎng)站創(chuàng)意設(shè)計(jì)、前端HTML5制作、后臺(tái)程序開發(fā)等。成都網(wǎng)站設(shè)計(jì)熱線:028-86922220

我們最感興趣的是硬盤在最大負(fù)荷下持續(xù)的讀取和寫入速度。為了能夠比較準(zhǔn)確的測(cè)出平均速度,我決定采用先寫入一個(gè)1GB的文件再讀取出來(lái)的辦法。考慮到不要讓更多的任務(wù)花在循環(huán)上,我首先建立起一個(gè)足夠大的緩沖區(qū),然后往磁盤寫入這個(gè)緩沖的內(nèi)容,從而使硬盤達(dá)到最大的負(fù)荷??紤]到Windows的讀取機(jī)制,硬盤測(cè)試不太準(zhǔn)確,此程序的讀取部分只能在第一次運(yùn)行時(shí)使用,運(yùn)行次數(shù)越多測(cè)試也不準(zhǔn)確,而寫入測(cè)試多次運(yùn)行以后依然能夠保持準(zhǔn)確性。現(xiàn)在就開始動(dòng)手。

在VB.NET測(cè)試硬盤速度中創(chuàng)建了一個(gè)控制臺(tái)工程TestHarddisk,然后在Sub Main中寫入下列程序。

  1. Sub Main()Sub Main()
  2. Dim I As Int32
  3. Dim f As New FileStream("E:\
    BigFile.big", FileMode.Create)
  4. Dim fw As New BinaryWriter(f)
  5. Dim fr As New BinaryReader(f)
  6. Dim Size As Int32 = 1024 * 
    1024 * 1024 - 1? 'File size = 1GB
  7. Dim bufSize As Int32 = 30 * 
    1024 * 1024???? 'Buffer Size = 30MB
  8. Dim jLast As Int32 = bufSize - 1
  9. Dim j As Int32
  10. Dim Bytes(bufSize) As Byte
  11. Dim StartWrite As DateDate = 
    Date.Now
  12. Console.WriteLine("Write Start at 
    {0}", StartWrite)
  13. Console.WriteLine("Creating")
  14. For I = 0 To Size Step bufSize '1GB
  15. fw.Write(Bytes)
  16. Next
  17. Dim EndWrite As DateDate = Date.Now
  18. Dim TimePassed As TimeSpan = EndWrite
    .Subtract(StartWrite)
  19. Console.WriteLine("Write End at 
    {0}", EndWrite)
  20. Console.WriteLine("Time passed:
    {0}", TimePassed)
  21. Console.WriteLine("Speed:{0}", 
    1000 / TimePassed.TotalSeconds)
  22. fw.Flush()
  23. Dim StartRead As DateDate = Date.Now
  24. Console.WriteLine("Read Start at 
    {0}", StartRead)
  25. Console.WriteLine("Reading")
  26. For I = 0 To Size Step bufSize
  27. Bytes = fr.ReadBytes(bufSize)
  28. Next
  29. Dim EndRead As DateDate = Date.Now
  30. TimePassed = EndRead.Subtract
    (StartRead)
  31. Console.WriteLine("Read End at {0}", 
    EndRead)
  32. Console.WriteLine("Time passed:
    {0}", TimePassed)
  33. Console.WriteLine("Read speed:{0}", 
    1000 / TimePassed.TotalSeconds)
  34. Console.ReadLine()
  35. fw.Close()

現(xiàn)在開始VB.NET測(cè)試硬盤速度。

硬件配置:

Athlon 2500+(running at 1.8G)

EPOX 8RDA3+ nForce2主板

512DDR 400(running at 400MHz)

ATA100 Seagate 7200.7 80GB 2MB

軟件配置:

Windows 2003 Server Standard Edition

全套最新的WHQL驅(qū)動(dòng)程序

Visual Studio 2003,編譯選擇Realse模式,打開所有優(yōu)化選項(xiàng)。

第一次運(yùn)行VB.NET測(cè)試硬盤速度得寫入速度43MB/s,第二次測(cè)得42MB/s,第三次41MB/s與Sisoftware測(cè)試得的結(jié)果43MB/s相差不大,達(dá)到了理想的效果。然而讀取測(cè)試就變態(tài)了,第一次64MB/s,與Sissoftware測(cè)試多了5MB/s左右,第二次達(dá)到了1096MB/s,第三次1123MB/s,這和Windows的磁盤緩沖機(jī)制有關(guān),看來(lái)作用還是蠻大的,當(dāng)然,建議讀取測(cè)試在重起電腦以后進(jìn)行。


網(wǎng)站名稱:VB.NET測(cè)試硬盤速度代碼實(shí)解讀
轉(zhuǎn)載來(lái)于:http://m.5511xx.com/article/dhsjich.html