你知道么是4K對(duì)齊嗎?究竟4K對(duì)齊意義何在?
對(duì)于硬盤來說,有兩個(gè)很重要的東西一個(gè)叫扇區(qū),一個(gè)叫簇。扇區(qū)是硬盤儲(chǔ)存數(shù)據(jù)的一個(gè)物理單位,而一個(gè)簇就是一個(gè)儲(chǔ)存單元,它可以包含不止一個(gè)扇區(qū),一個(gè)簇只能對(duì)應(yīng)一個(gè)文件。
??? 在傳統(tǒng)的機(jī)械硬盤,一個(gè)扇區(qū)是512字節(jié),但是現(xiàn)在流行的固態(tài)硬盤是用的新標(biāo)準(zhǔn)“4K扇區(qū)”,也就是4096個(gè)字節(jié),然而我們的系統(tǒng)只能識(shí)別512字節(jié)的扇區(qū)。為了能讓新標(biāo)準(zhǔn)的硬盤和系統(tǒng)兼容,硬盤廠商想了個(gè)辦法就是把扇區(qū)分成八份,也就是4096除以8等于512。這樣被分成八份的扇區(qū)我們叫它邏輯扇區(qū)。
? ??一個(gè)硬盤有無數(shù)個(gè)扇區(qū),每個(gè)扇區(qū)都有自己的地址,當(dāng)下最流行的硬盤格式一般是NTFS,NTFS分區(qū)的起始地址并不是從0開始,而是從LBA63開始,因?yàn)榍懊?-62扇區(qū)是存儲(chǔ)在引導(dǎo)區(qū)的,一個(gè)扇區(qū)512字節(jié)乘以63個(gè)扇區(qū)等于32256個(gè)字節(jié),也就是31.5K。但是我們存儲(chǔ)數(shù)據(jù)只能從LBA63開始,現(xiàn)在應(yīng)該能看出問題的所在了吧,如果我要存儲(chǔ)一個(gè)4K簇,它要占用31.5K-35.5K之間的扇區(qū),因一個(gè)簇只能對(duì)應(yīng)一個(gè)文件,這就就導(dǎo)致了每個(gè)4K的簇原本只要占用一個(gè)扇區(qū),確因?yàn)榍懊鏇]有對(duì)齊不得不占用了兩個(gè)扇區(qū)(物理扇區(qū)),這就是4K沒有對(duì)齊。
? ??如果4K沒有對(duì)齊對(duì)于機(jī)械硬盤來說還好,它的寫入是可以直接覆蓋的,所以影響不大。但是固態(tài)硬盤可就麻煩多了,因?yàn)楣虘B(tài)硬盤寫入前要先擦除數(shù)據(jù),原本只需要擦除一個(gè)扇區(qū)卻因?yàn)?K沒有對(duì)齊不得不擦除兩個(gè)扇區(qū)(物理扇區(qū)),如果有千千萬萬個(gè)扇區(qū)要操作呢?豈不要把系統(tǒng)累死??!所以我們就要想個(gè)辦法,這個(gè)辦法就是讓它4K對(duì)齊!
?? ?進(jìn)行4K對(duì)齊操作就是把硬盤扇區(qū)對(duì)齊到8的整數(shù)倍個(gè)邏輯扇區(qū),讓每一簇就正好對(duì)應(yīng)一個(gè)扇區(qū)(物理扇區(qū))也就是512字節(jié)乘以8等于4096字節(jié)(4K),只要是8的倍數(shù)就是4K對(duì)齊了。