關(guān)于cramfs文件系統(tǒng)的一些介紹
出處:互聯(lián)網(wǎng) 發(fā)布于:2011-09-04 13:17:04
1、cramfs的介紹
CRAMFS文件系統(tǒng)是專門針對閃存設(shè)計的只讀壓縮的文件系統(tǒng),其容量上限為256M,采用zlib壓縮,文件系統(tǒng)類型可以是EXT2或EXT3. cramfs文件系統(tǒng)并不需要性地將文件系統(tǒng)中的所有內(nèi)容解壓到ram中,而只是是系統(tǒng)需要訪問某個位置的數(shù)據(jù)時,馬上計算出該數(shù)據(jù)在cramfs中的位置,將其解壓到ram中,然后通過內(nèi)存訪問來獲取數(shù)據(jù),cramfs中的解壓縮之后的內(nèi)存中的數(shù)據(jù)存放位置都是由cramfs文件系統(tǒng)本身來管理,用戶并不需要實現(xiàn)過程,因此增加了透明度,給開發(fā)人員節(jié)約了時間。
cramfs擁有以下一些特性:
1、采用實時解壓縮方式,但解壓縮的時候有延遲。(時間效率)
2、cramfs的數(shù)據(jù)都是經(jīng)過處理、打包的,對其進先寫操作有一定困難。所以cramfs不支持寫操作,這個特性剛好適合嵌入式應(yīng)用中使用Flash存儲文件系統(tǒng)的場合。
3、在cramfs中,文件不能超過16MB。
4、支持組標(biāo)識(gid),但是mkcramfs只將gid的低8位保存下來,因此只有這8位是有效的。
5、支持硬鏈接。但是cramfs并沒有完全處理好,硬鏈接的文件屬性中,鏈接數(shù)仍然為1.
6、cramfs的目錄中,沒有“?!焙汀啊边@兩項。因此,cramfs中的目錄的鏈接數(shù)通常也僅有一個。
cramfs中,不會保存文件的時間戳(timestamps)信息。當(dāng)然,正在使用的文件由于inode保存在內(nèi)存中,因此其時間可以暫時地變更為時間,但是不會保存到cramfs文件系統(tǒng)中去。
當(dāng)前版本的cramfs只支持PAGE_CACHE_SIZE為4096的內(nèi)核。因此,如果發(fā)現(xiàn)cramfs不能正常讀寫的時候,可以檢查一下內(nèi)核的參數(shù)設(shè)置。
2、使用cramfs
可以從https://sourceforge.net/projects/cramfs/cramfs-1.1.tar.gz。然后執(zhí)行
tar zxvf cramfs-1.1.tar.gz
進入解包之后生成cramfs-1.1目錄,執(zhí)行編譯命令:
編譯完成之后,會生成mkcramfs和cramfsck兩個工具,其中cramfsck工具是用來創(chuàng)建cramfs文件系統(tǒng)的,而mkcramfs工具則用來進行cramfs文件系統(tǒng)的釋放以及檢查。
下面是mkcramfs的命令格式:
mkcramfs [-h] [-e edition] [-i file] [-n name] dirname outfile
mkcramfs的各個參數(shù)解釋如下:
-h:顯示幫助信息
-e edition:設(shè)置生成的文件系統(tǒng)中的版本號
-i file:將一個文件映像插入這個文件系統(tǒng)之中(只能在Linux2.4.0以后的內(nèi)核版本中使用)
-n name:設(shè)定cramfs文件系統(tǒng)的名字
dirname:指明需要被壓縮的整個目錄樹
outfile:終輸出的文件
cramfsck的命令格式:
cramfsck [-hv] [-x dir] file
cramfsck的各個參數(shù)解釋如下:
-h:顯示幫助信息
-x dir:釋放文件到dir所指出的目錄中
-v:輸出信息更加詳細
file:希望測試的目標(biāo)文件
版權(quán)與免責(zé)聲明
凡本網(wǎng)注明“出處:維庫電子市場網(wǎng)”的所有作品,版權(quán)均屬于維庫電子市場網(wǎng),轉(zhuǎn)載請必須注明維庫電子市場網(wǎng),http://m.58mhw.cn,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點或證實其內(nèi)容的真實性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個人從本網(wǎng)轉(zhuǎn)載時,必須保留本網(wǎng)注明的作品出處,并自負版權(quán)等法律責(zé)任。
如涉及作品內(nèi)容、版權(quán)等問題,請在作品發(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
- ARM技術(shù)架構(gòu)與應(yīng)用開發(fā)實踐指南2026/1/6 10:40:19
- 嵌入式實時操作系統(tǒng)(RTOS)選型與移植技術(shù)指南2025/12/31 10:42:31
- 工業(yè)嵌入式系統(tǒng):通信接口技術(shù)選型與抗干擾設(shè)計實踐2025/12/15 14:36:53
- 深入解析嵌入式 OPENAMP 框架:開啟異核通信新時代2025/7/22 16:27:29
- 一文快速了解OPENWRT基礎(chǔ)知識2025/7/14 16:59:04









