为什么要4k对齐
機(jī)械硬盤(pán)物理上分出一個(gè)個(gè)扇區(qū),每個(gè)扇區(qū)512字節(jié),因此文件系統(tǒng)也是按照一個(gè)扇區(qū)512字節(jié)來(lái)操作硬盤(pán)。
固態(tài)硬盤(pán)沒(méi)有扇區(qū)的概念,只有頁(yè)的概念,一頁(yè)常見(jiàn)大小是4KB。為了和以前的文件系統(tǒng)兼容(win8以后NTFS支持4K扇區(qū),以前的只支持512扇區(qū)),固態(tài)硬盤(pán)的驅(qū)動(dòng)還是按照一個(gè)扇區(qū)512字節(jié)編寫(xiě),相當(dāng)于用4KB的頁(yè)模擬出512字節(jié)的扇區(qū)。
文件系統(tǒng)的默認(rèn)分配單元是簇,是文件系統(tǒng)管理的最小單位,一次讀寫(xiě)最少一個(gè)簇,大小小于簇大小的文件也要占據(jù)一個(gè)簇。默認(rèn)簇大小為4K。小簇省空間,讀寫(xiě)費(fèi)時(shí),大簇反之。
問(wèn)題就出在這個(gè)模擬扇區(qū)上。當(dāng)4K的簇和4K的頁(yè)中間隔了一個(gè)扇區(qū)的概念后,就可能出現(xiàn)4K的簇和4K的頁(yè)地址不對(duì)齊的情況。NTFS片偏偏是從第63個(gè)扇區(qū)開(kāi)始存儲(chǔ)數(shù)據(jù),也就是63*512=31.5K的地方。于是對(duì)應(yīng)的第一個(gè)簇地址是31.5~35.5K,剛好跨兩個(gè)頁(yè)。于是寫(xiě)入和讀取小于一個(gè)簇的文件的時(shí)候,都要寫(xiě)入和讀取兩個(gè)頁(yè),加速存儲(chǔ)介質(zhì)損耗。如果第一個(gè)簇從32K開(kāi)始,那么對(duì)應(yīng)的物理上的頁(yè)是第8頁(yè),剛好一個(gè)簇對(duì)應(yīng)一個(gè)頁(yè)。這就是4K對(duì)其。當(dāng)然也不一定要從32K開(kāi)始,只要是4的倍數(shù)都可以。disk genius默認(rèn)是從2048扇區(qū)開(kāi)始,也就是1024K,不知道為什么是這樣。網(wǎng)上有說(shuō)法是“微軟給2048個(gè)扇區(qū)對(duì)齊是為了保證多盤(pán)raid0時(shí)也足夠?qū)R”,還不了解磁盤(pán)陣列的知識(shí),就不評(píng)論了。
要徹底解決這個(gè)問(wèn)題,需要文件系統(tǒng)和硬盤(pán)廠商兩邊解決。硬盤(pán)廠商不再提供512字節(jié)的模擬扇區(qū),直接提供4K頁(yè)的驅(qū)動(dòng)程序。文件系統(tǒng)按照4K扇區(qū)(頁(yè))來(lái)操作硬盤(pán)。簇和頁(yè)一一對(duì)應(yīng),完美。
總結(jié)
- 上一篇: VO快速搜索 宝马VO 宝马VO翻译 V
- 下一篇: 记录女士出差一周必备物品清单用哪个便签比