android sd卡 f2fs,F2FS保你18个月不卡?手机文件系统相关科普
原標(biāo)題:F2FS保你18個(gè)月不卡?手機(jī)文件系統(tǒng)相關(guān)科普
華為在mate9發(fā)布會(huì)上,標(biāo)榜能保持18個(gè)月不卡,頓時(shí)引起軒然大波,至于什么技術(shù)給了華為如此宣傳的底氣,大多論調(diào)都集中在了它所采取的F2FS文件系統(tǒng)上。我們這次就來說說Android文件系統(tǒng)相關(guān)的知識(shí),再分析一下這“18個(gè)月不卡”的宣傳到底有何玄機(jī)。
文件系統(tǒng):
文件系統(tǒng)這個(gè)詞不常說,普通數(shù)碼愛好者也不一定知道,但換成“硬盤分區(qū)格式”就明白了,我們更熟悉的FAT32、exFAT、NTFS、HFS+等其實(shí)都是同一層級(jí)的并列概念,不過文件系統(tǒng)才是更正式準(zhǔn)確的名稱,畢竟叫成分區(qū)格式總會(huì)和GPT、MBR代表的那些分區(qū)表格式相混淆。
具體來說,文件系統(tǒng)其實(shí)就是存儲(chǔ)器內(nèi)的數(shù)據(jù)組織形式,以及數(shù)據(jù)的索引尋址方式。更白話一點(diǎn),就類似一本書,它的內(nèi)容一般都是以章節(jié)或者章回來分節(jié),按照邏輯順序分頁排列,并建立目錄來實(shí)現(xiàn)部分標(biāo)志內(nèi)容和頁數(shù)的對(duì)應(yīng)來便于查閱,有些甚至自帶書簽,這種內(nèi)容的排列和找尋方式,其實(shí)就是文件系統(tǒng)。
MTP、大容量存儲(chǔ)模式和轉(zhuǎn)移應(yīng)用至SD卡:
說到這,倒是還可以先提幾點(diǎn)困擾很多用戶的東西,因?yàn)樗鼈冋镁秃臀募到y(tǒng)相關(guān)。
首先需要講的是,文件系統(tǒng)其實(shí)可以算是操作系統(tǒng)的一部分,不同操作系統(tǒng)的文件數(shù)據(jù)存儲(chǔ)器,都要使用其對(duì)應(yīng)支持的文件系統(tǒng)格式,否則要么無法讀寫,要么只能作為一些非系統(tǒng)和應(yīng)用關(guān)鍵文件的存儲(chǔ),比如音樂、視頻、圖片之類。
而現(xiàn)在,仍是以運(yùn)行Windows系統(tǒng)的PC機(jī)占據(jù)桌面設(shè)備的統(tǒng)治地位,但在移動(dòng)端,要么是基于Linux的Android,要么是基于Unix的iOS,這樣桌面和移動(dòng)端都需要不同且不兼容的文件系統(tǒng),互相之間不能直接讀寫。因此,iOS設(shè)備插到電腦上,都是被讀取為一個(gè)獨(dú)立的便攜設(shè)備,而不是一個(gè)U盤,再加上iOS自己的沙盒等特性,Windows自己只能把它當(dāng)成相機(jī)看圖片,想做些更高級(jí)的文件交換必須以iTunes為基礎(chǔ)來進(jìn)行。
Android這邊相對(duì)復(fù)雜一點(diǎn),上古時(shí)代,Android4.0之前,手機(jī)連到電腦上,都還是我們熟悉的大容量存儲(chǔ)模式,文件傳起來比現(xiàn)在的MTP順很多,老用戶們普遍都很懷念。但這也帶來了一些問題,一是PC掛載了sdcard分區(qū),導(dǎo)致手機(jī)無法正常讀取文件,二是因?yàn)椴捎么笕萘看鎯?chǔ),就意味著sdcard的文件系統(tǒng)必須和Windows相同,并不被Android本身足夠兼容,所以data、system、cache等分區(qū)必須和sdcard嚴(yán)格隔離,從而被固定大小不能調(diào)整,這樣閃存空間無法得到有效的利用,應(yīng)用也無法裝到用戶分區(qū),用戶們也經(jīng)常面臨存儲(chǔ)空間不足的問題。
而在Android2.2、2.3時(shí)谷歌曾采取過一些數(shù)據(jù)轉(zhuǎn)移手段來轉(zhuǎn)移應(yīng)用數(shù)據(jù)到SD卡,也是因?yàn)槲募到y(tǒng)的不同,這種數(shù)據(jù)轉(zhuǎn)移能支持的非常有限,無法治本,唯一更好的處理方式只有在SD卡建立EXT4分區(qū)強(qiáng)行增加Linux內(nèi)核可用空間而已。
谷歌最終的解決辦法在Android4.0、4.1時(shí)代被推出和完善,也就是現(xiàn)在看到的MTP設(shè)備,PC通過手機(jī)來讀取手機(jī)內(nèi)文件而非PC自己直接掛載,這樣整個(gè)閃存都可以使用Linux自己支持的文件系統(tǒng),data和sdcard也可以“二合一”共享閃存資源動(dòng)態(tài)調(diào)整解決數(shù)據(jù)空間問題,同時(shí)手機(jī)本身也不會(huì)失去對(duì)文件的讀取。當(dāng)然這樣PC讀文件就變得復(fù)雜,MTP傳輸效率低于大容量存儲(chǔ),各種失去響應(yīng)、出錯(cuò)和驅(qū)動(dòng)問題,也在所難免。
F2FS:
接下來我們就說說F2FS,這其實(shí)是和EXT4本質(zhì)同級(jí),都是Linux專屬的文件系統(tǒng)。它的全名叫Flash Friendly File System,顧名思義對(duì)閃存友好,自稱針對(duì)于NAND閃存有特別設(shè)計(jì)。最開始它是由三星電子在2012年秋季公布,開發(fā)者叫Jaegeuk Kim,彼時(shí)是三星員工,在后來被MOTO挖走,于是我們見到了用F2FS的MOTO X系列,去年又被挖到了華為,故而有了全線F2FS的EMUI5.0,號(hào)稱流暢度提升20%。當(dāng)然F2FS倒沒什么版權(quán)糾紛,Linux體系下的東西自然遵守開源協(xié)定,只是既然有大神坐鎮(zhèn),可能會(huì)有點(diǎn)別的改進(jìn)吧。
相比EXT4,F2FS理論上主要特性有兩點(diǎn),一個(gè)是能提升小文件的隨機(jī)讀寫性能,再就是降低回收數(shù)據(jù)塊,即碎片整理的開銷,這在華為的宣傳中也有所提及。不過也有缺點(diǎn),一是需要Linux內(nèi)核支持,二是占用存儲(chǔ)空間更多,另外還有說法認(rèn)為出錯(cuò)率更高并影響閃存的壽命,以及EXT4優(yōu)化好了完全不怕F2FS。
當(dāng)然剛才說的其實(shí)都有些虛無縹緲了,我們要知道的還是F2FS實(shí)際上比EXT4有多少優(yōu)勢(shì),筆者查閱到了Phoronix上于今年8月3日發(fā)表的測(cè)試成績(除了第一項(xiàng)都是越大越好),在Linux4.4-4.7內(nèi)核下,F2FS優(yōu)勢(shì)在于兩個(gè)規(guī)格的FS-Mark、BlogBench的讀取以及DBench,其他項(xiàng)目3項(xiàng)小負(fù),1項(xiàng)大敗,剩下4項(xiàng)打平,可見整體上和EXT4算互有勝負(fù),還談不上有明顯優(yōu)勢(shì),更別說20%了,遠(yuǎn)不如換一塊素質(zhì)更好的閃存顆粒來得實(shí)在。
此外,我們發(fā)現(xiàn),mate9的閃存也并非所有都是F2FS,diskinfo顯示只有data分區(qū)(包括data和sdcard)使用了F2FS,而系統(tǒng)和緩存都還是EXT4,這樣F2FS只會(huì)影響到第三方應(yīng)用一段時(shí)間內(nèi)首次讀寫文件時(shí)的速度,這只是使用流暢度的一部分而已。此外比較重要的系統(tǒng)和較小的緩存分區(qū)仍采用EXT4,似乎印證了F2FS出錯(cuò)率更高和占空間更多的問題。
真能18個(gè)月不卡?
說實(shí)話就憑借總體優(yōu)勢(shì)并不明顯的F2FS,想在流暢度上搞出什么大新聞顯然還是欠火候。當(dāng)然華為的原話并不是F2FS就流暢,還有權(quán)限控制和吹上天的智能學(xué)習(xí)。權(quán)限控制不用說,大家都有成熟的體系,Android6.0還標(biāo)配,而智能學(xué)習(xí)按照華為官方的解釋其實(shí)就是前后臺(tái)資源分配的問題,換成大白話就是殺掛后臺(tái)應(yīng)用的做法,看起來高大上,實(shí)際上也沒什么大不了的,別人把后臺(tái)管理做嚴(yán)格了,前臺(tái)應(yīng)用不會(huì)比它卡。
再講下去,其實(shí)卡不卡的概念根本沒有什么明確的定義和標(biāo)準(zhǔn),每個(gè)人都有不同的標(biāo)準(zhǔn)。如果設(shè)為2K16全高運(yùn)行,那很抱歉mate9現(xiàn)在的幀數(shù)就挺卡了,更別說18個(gè)月以后怎么樣;而若是設(shè)為普通人日常使用,那同樣抱歉,千元機(jī)都不卡,要是mate9過了18個(gè)月就變千元機(jī)那連mate8都不如,再說還有戰(zhàn)了40多個(gè)月的驍龍801在一旁偷笑。
所以,多久不卡什么的,只是營銷上吹的牛皮罷了,和3年前P6那句“PK iPhone6,領(lǐng)先友商一年”沒什么區(qū)別,大家都懂。返回搜狐,查看更多
責(zé)任編輯:
總結(jié)
以上是生活随笔為你收集整理的android sd卡 f2fs,F2FS保你18个月不卡?手机文件系统相关科普的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何下载spring sts
- 下一篇: Python实现四阶龙格库塔法求解Ric