日本欧美国产_视频一区在线_国产精品99久久久久_一区二区精品_精品自拍视频_色毛片

  • 全國 [切換]
  • 億企商貿(mào)

    掃一掃關(guān)注

    絕不只是堆砌閃存!SSD中的軟件算法你知多少

       2017-07-31 3180
    導(dǎo)讀

      SSD已經(jīng)日漸流行,現(xiàn)在買電腦不挑帶SSD的,都不好意思說自己真懂用戶體驗。  和傳統(tǒng)HDD相比,SSD由閃存構(gòu)成,閃存低延遲的

       SSD已經(jīng)日漸流行,現(xiàn)在買電腦不挑帶SSD的,都不好意思說自己真懂用戶體驗。

      和傳統(tǒng)HDD相比,SSD由閃存構(gòu)成,閃存低延遲的特性,令SSD在隨機(jī)讀寫性能方面大幅超越HDD,這也是SSD能帶來流暢操作體驗的關(guān)鍵。

      但是,SSD又不僅僅只是閃存的簡單組裝,僅僅把閃存堆砌起來,并不能稱作是SSD。調(diào)用閃存的軟件算法,同樣對SSD的壽命、穩(wěn)定性、性能等方方面面起著重大作用。

      SSD中的軟件算法你都了解嗎?今天,就一起來談?wù)凷SD中有哪些軟件算法吧!

      ↑↑↑SSD可不是把閃存焊在一起就能做出來的

      FTL:沒它SSD就無法識別

      我們都知道SSD的硬件構(gòu)成和HDD完全不同,因此操作系統(tǒng)識別HDD的很多機(jī)制,并不適用于SSD。

      例如,硬盤是由盤片來構(gòu)成的,盤片是同心圓,把圓分成一個個小小的扇形,數(shù)據(jù)在這些扇形中儲存,這些扇形就被稱之為扇區(qū)。

      操作系統(tǒng)把扇區(qū)組織起來,構(gòu)成FAT32、NTFS等文件系統(tǒng),用戶才得以訪問文件/文件夾而不是一個個的扇區(qū)物理地址。基本上,操作系統(tǒng)建立文件系統(tǒng)的基礎(chǔ)就是扇區(qū)。

      ↑↑↑HDD硬盤盤片上的扇區(qū),SSD沒有這個結(jié)構(gòu)

      SSD由閃存構(gòu)成,沒有盤片,自然也沒有扇區(qū)。

      SSD的閃存顆粒基礎(chǔ)單位是數(shù)據(jù)容量4KB的Page(頁),Page組成Block(區(qū)),Block組成Plane(平面),最后Plane組成Die(晶片),這就是閃存的硬件架構(gòu)。

      可見SSD沒有扇區(qū),怎么辦?這就得靠一些算法來進(jìn)行轉(zhuǎn)換了。

      ↑↑↑SSD使用的是閃存,閃存結(jié)構(gòu)和HDD不同,需要FTL層和文件系統(tǒng)對話

      把SSD的架構(gòu)虛擬成HDD的算法,叫做“FTL”(Flash Translation Lay)。

      FTL算法是由SSD主控提供的,比操作系統(tǒng)更加底層。FTL作為一個軟件中間層,可以把SSD基于Page的硬件架構(gòu)映射成HDD基于扇區(qū)的硬件架構(gòu)。

      操作系統(tǒng)為SSD建立文件系統(tǒng)的時候,有了FTL,操作系統(tǒng)看到的東西和HDD沒啥兩樣,就可以用傳統(tǒng)的方法對SSD進(jìn)行分區(qū)、格式化等操作,不需要使用專為SSD而生的文件系統(tǒng)。

      得益于FTL軟件算法,SSD才能無縫接班HDD,沒它SSD就無法識別。

      GC垃圾回收:沒它SSD就巨慢無比

      閃存的機(jī)制是比較獨特的,當(dāng)你向閃存寫入數(shù)據(jù)的時候,必須先把閃存中的數(shù)據(jù)擦除掉,才能寫入。

      同時,閃存的最小讀寫單位是Page,但最小的擦除單位是Block。一個Block中包含了多個Page,SSD工作一段時間后,就沒有哪個Block中的Page都是空白的了。

      如果要擦除某個Block,就必須先把這個Block中存在有效數(shù)據(jù)的Page復(fù)制備份到其他地方,接而進(jìn)行擦除,這樣一來才不會丟數(shù)據(jù)。

      ↑↑↑每個Page都可以寫入數(shù)據(jù),但覆蓋寫入需要先擦除原先的數(shù)據(jù),一擦除整個Block都會被擦除

      有效數(shù)據(jù)的Page要復(fù)制到什么地方進(jìn)行備份呢?

      一些比較爛的產(chǎn)品,會把這些Page的數(shù)據(jù)復(fù)制到緩存,待到Block擦除后,再把數(shù)據(jù)寫回去,這樣一來SSD的寫入速度就更加悲劇了——既要寫原來的數(shù)據(jù),又要寫新數(shù)據(jù)。

      解決這個問題的,就是SSD中的GC(Gabage Collection),也就是垃圾回收算法。

      GC垃圾回收算法看著有點類似碎片整理,它可以把某個Block中的存在有效數(shù)據(jù)的Page,移動到其他Block中,從而讓操作系統(tǒng)得以擦除這整一個Block。

      接著再往該Block寫數(shù)據(jù),就不需要把備份到其他地方的Page也寫回去了。

      CG發(fā)生在FTL層,不同的SSD的GC算法是不一樣的,GC算法的不同,深切影響著SSD的性能。

      Trim:大大提高垃圾回收效率

      Trim是一種用來增加GC垃圾回收效率的算法。

      沒有Trim的話,會出現(xiàn)這樣一種情況:在操作系統(tǒng)刪除一個文件,實際上數(shù)據(jù)在物理層面上并沒有被刪除。

      于是,SSD的某個Block所有Page都會被填滿,待到真正寫入數(shù)據(jù)的時候,才被迫進(jìn)行GC垃圾回收,主控才開始把有效數(shù)據(jù)的Page移動到其他Block上,進(jìn)而擦除該Block。

      如此一來,速度就很慢,SSD用久了每次寫入數(shù)據(jù)都得先GC,用戶體驗非常不好。

      ↑↑↑CMD中查詢“fsutil behavior QUERY DisableDeleteNotify”,如圖顯示就是開啟了Trim

      Trim就可以大大緩解這種情況。操作系統(tǒng)刪除數(shù)據(jù)后,Trim會告訴SSD主控哪些Page的數(shù)據(jù)對應(yīng)著刪除的數(shù)據(jù),這些Page會被標(biāo)記成為無效Page。

      接著,在閑暇時段,SSD主控就會主動進(jìn)行CG,把有效數(shù)據(jù)的Page移走,然后擦除這些Block的數(shù)據(jù),提前為操作系統(tǒng)的數(shù)據(jù)寫入準(zhǔn)備好足夠多的Block。

      如此一來,就算是長期使用,只要SSD不是裝得太滿,性能都不會有太過明顯的下滑,大大提升了用戶體驗。

      Trim算法是由操作系統(tǒng)提供的,Win7、Android 4.3以后的操作系統(tǒng)都支持Trim。

      磨損平衡:保證閃存壽命被均勻消耗

      我們知道閃存是有擦寫壽命的,例如MLC閃存只能夠擦寫數(shù)千次,TLC閃存只能夠擦寫數(shù)百次等等。

      其實以現(xiàn)在的SSD容量,總擦寫數(shù)據(jù)量是非常驚人的,例如256G的SSD,壽命是500次擦寫(P/E)的話,那么就需要寫入125TB的數(shù)據(jù),閃存才壽終正寢——就算你每天寫入10G數(shù)據(jù),也需要用三十多年才能把閃存給寫掛,更何況很少人每天往SSD中寫10G數(shù)據(jù)。

      ↑↑↑TLC的擦寫次數(shù)不盡如人意,但正常使用其實也很難掛掉

      但是很多朋友仍不信任SSD的壽命,理由是SSD的這個壽命,是根據(jù)全盤容量來估算的。

      有的朋友認(rèn)為,平時讀寫數(shù)據(jù),會集中讀寫SSD的其中一部分閃存,這部分的閃存壽命就會損耗得特別快。

      一旦這部分閃存掛了,那么整塊SSD也就掛了。然而事實真的是這樣嗎?

      事實當(dāng)然并非如此。實際上,SSD擁有磨損平衡(Wear Leveling)算法,令所有閃存磨損度盡可能保持一致。

      SSD的磨損平衡算法大致分為動態(tài)和靜態(tài)兩種。

      動態(tài)的算法就是當(dāng)寫入新數(shù)據(jù)的時候,會自動往比較新的Block中去寫,老的閃存就放在一旁歇歇。

      而靜態(tài)的算法就更加先進(jìn),就算沒有數(shù)據(jù)寫入,SSD監(jiān)測到某些閃存Block比較老,會自動進(jìn)行數(shù)據(jù)分配,讓比較老的閃存Block承擔(dān)不需要寫數(shù)據(jù)的儲存任務(wù),同時讓較新的閃存Block騰出空間,平日的數(shù)據(jù)讀寫就在比較新的Block中進(jìn)行——如此一來,各個Block的壽命損耗,就都差不多了。

      總結(jié)

      SSD絕不是把閃存堆在一起就能做成的,要讓SSD穩(wěn)定、快速地運行,還有賴于種種軟件算法。

      在選用SSD的時候,可以多關(guān)注一下該SSD所使用的主控方案,關(guān)注該主控的算法是否靠譜;在使用SSD時,要選擇適合的操作系統(tǒng),并及時更新SSD的固件和驅(qū)動。

      如此一來,才會得到更好的體驗。

     
    (文/小編)
     
    反對 0 舉報 0 收藏 0 打賞 0 評論 0
    0相關(guān)評論
    免責(zé)聲明
    本文為小編原創(chuàng)作品,作者: 小編。歡迎轉(zhuǎn)載,轉(zhuǎn)載請注明原文出處:http://m.iwhed.cn/news/show-24880.html 。本文僅代表作者個人觀點,本站未對其內(nèi)容進(jìn)行核實,請讀者僅做參考,如若文中涉及有違公德、觸犯法律的內(nèi)容,一經(jīng)發(fā)現(xiàn),立即刪除,作者需自行承擔(dān)相應(yīng)責(zé)任。涉及到版權(quán)或其他問題,請及時聯(lián)系我們。
     

    2B SYSTEM All Rights Reserved 本平臺由浙江到門口科技有限公司運營與監(jiān)管

    浙ICP備17023505號-1公網(wǎng)安備浙公網(wǎng)安備33100402331026號號

    主站蜘蛛池模板: 欧美综合自拍亚洲综合 | 色翁荡息又大又硬又粗又爽 | 中文字幕版免费电影网站 | 日本 黄 a | 久久精品韩国日本国产 | 国产成人亚洲精品影院 | 日韩资源在线 | 国偷自产一区二区免费视频 | 福利视频一区二区牛牛 | 国内精品视频免费观看 | 国产麻豆自拍 | 欧美成人精品一区二区三区 | 亚洲 欧美 成人日韩 | 看毛片的网站 | 亚洲综合久久久 | 日本美女一区二区 | 日韩亚洲欧美视频 | 精品欧美成人高清视频在线观看 | 国产国语高清在线视频二区 | 在线观看国产黄色 | 亚洲欧美国产日本 | 国产精品毛片久久久久久久 | 日韩高清在线观看 | 免费观看欧美一区二区三区 | 国产精品久久久久久久9999 | 免费看特级淫片日本 | 日韩一区二区免费视频 | 亚洲视频在线观看免费 | 最新国产精品视频免费看 | 国产女同一区二区三区五区 | 孕交videos小孕妇xx另类 | 99国产精品一区二区 | 国产毛片a | 免费一区二区 | 国产精品视频免费观看 | 国产成人精品一区二区 | 亚洲va欧美ⅴa国产va影院 | 欧美xxxbbb | 自拍偷自拍亚洲精品被多人伦好爽 | 2021国产精品成人免费视频 | 亚洲综合日韩 |