10.8.3更新後ssd需要開啓trim

[size=medium]我的ssd更新10.8.3後trim要重新打開。用終端打開方法很簡單。


首先打開你的終端,
輸入以下指令:
1. 爲了安全,此步爲備份驅動 (可能需要輸入密碼)[/size]

sudo cp -r /System/Library/Extensions/IOAHCIFamily.kext/Contents/PlugIns/IOAHCIBlockStorage.kext/ /System/Library/Extensions/IOAHCIFamily.kext/Contents/PlugIns/IOAHCIBlockStorage.BACKUP

[size=medium]2.更新[/size]

sudo perl -pi -e 's|(\x52\x6F\x74\x61\x74\x69\x6F\x6E\x61\x6C\x00{1,20})[^\x00]{9}(\x00{1,20}\x54)|$1\x00\x00\x00\x00\x00\x00\x00\x00\x00$2|sg' /System/Library/Extensions/IOAHCIFamily.kext/Contents/PlugIns/IOAHCIBlockStorage.kext/Contents/MacOS/IOAHCIBlockStorage

[size=medium]3.開trim[/size]
sudo kextcache -system-prelinked-kernel

[size=medium]執行後會提示:[color=red]Kernel file /mach_kernel does not contain requested arch: i386[/color]
不用理會它。。。[/size]


[size=medium]4.清cache[/size]

sudo kextcache -system-caches


[size=medium]5. 重啓系統。


[color=blue][b]重啓之後,trim已經被打開了![/b][/color][/size]


[size=medium]
===================================================
附錄:SSD TRIM技術提升固態硬盤速度與壽命
===================================================
當一個文件被刪除後,操作系統其實並沒有刪除數據,事實上,它只是在硬盤前的索引區裏標記這塊文件佔用的區域爲可覆蓋的,所以下次數據將要再次寫入的時候,可以覆蓋寫入這塊被標記的區域。這也就是那些所謂的文件恢復軟件能恢復的道理。(因爲數據未被刪除依然存在)
這裏要注意一點:硬盤本身是不知道當前數據的狀態的,他只是被主控控制着做這做那,在普通的機械硬盤上工作起來非常完美,因爲他們可以直接覆寫舊的區域,但是當用到NAND閃存上就行不通了,在全部閃存被寫滿一遍後,沒有從未被寫過的塊可以被使用的情況下,閃存不會直接覆寫區域,而是需要經過複雜的步驟來進行覆寫。從而速度就慢下來了。在固態硬盤閃存內,數據存儲一般是以page爲最小單位存儲的(典型的爲4KB),而128個page組成了一個block,數據可以以4KB大小的頁來讀取和寫入,但卻只能以512KB(128 page)的塊大小來刪除。當讀取數據或者寫入到一個沒有被使用過的page上時,固態硬盤的速度是很快的,但是覆寫數據的話,就比較複雜了,需要許多步驟來完成。
當SSD的所有空閒塊都被使用後,再有寫入操作,它只能覆寫數據到之前被操作系統標記爲刪除的區域。這也是速度下降的開始:要覆寫一個4KB 頁的文件系統,首先要把整個512KB 塊複製進緩存裏。然後,在緩存裏刪除這個4KB頁,替換成新的數據。接下來,清空整個閃存內的這個512KB區域,並從緩存裏把新的數據寫回去。如果你需要同時覆寫很多的塊,例如是一系列小文件隨機寫入操作或者只是簡單的寫入一個大文件到SSD。這會讓你的SSD緩存快速過載,然後你的寫入速度就會直線下降。早期緩存少的SSD甚至會延遲接近1秒,爲了修復這個問題,SSD廠商一個個都在新主控制器上加入了越來越大的外置緩存,這雖然一定程度上解決了隨機寫入卡的問題,但是卻不能解決SSD在覆寫時速度下降的問題,這就是我們爲什麼需要SSD TRIM技術。
由於操作系統和文件系統不能和SSD的主控進行刪除文件的交流,所以如果之前有沒清除乾淨的數據,所有寫入頁的操作都要先清除塊再改寫,將嚴重影響寫入速度。有2種途徑來修復這個問題:第一個就是定期運行垃圾回收程序(GC)(這個操作有點像磁盤碎片整理,在SSD空閒時,全盤掃描有效的頁併合並整理起來變爲一個包含全部有效頁的塊,而那些無效的頁和塊都將被完全的清除)。第二個更好的途徑就是當數據刪除時候讓系統告訴SSD數據沒了,讓SSD立即擦掉那些數據佔用的塊,這就是SSD TRIM技術。當一個文件在支持TRIM的系統裏被刪除後,操作系統會發個命令給SSD,讓他知道這個數據所在的這個page可以直接被寫入,等於把控制權從操作系統變爲了SSD主控制器固件。
SSD一樣會複製整個包含刪除數據的塊到緩存,清空塊並寫入有效數據的頁回去,區別是這樣等於把這個延遲時間從覆寫數據的那個時間提前到了刪除數據的時候(這個時候對速度影響不大,如果你刪除了很大很大的數據,可以去觀察硬盤燈在你刪除之後幾秒內狂閃),所以就會顯得SSD的速度回來了,因爲你寫入的時候有可用的空塊。所以我們可以說,SSD TRIM技術保證速度不下跌的真正祕密是: 把將來要做的事提前做掉了。 但是這件事遲早要做,所以基本不會影響SSD原有的寫入次數(壽命)。這裏要說明一下TRIM不支持RAID而GC支持RAID。[/size]
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章