<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    常用鏈接

    統(tǒng)計(jì)

    最新評論

    cramfs文件系統(tǒng)(轉(zhuǎn))

    1、cramfs的特點(diǎn)

    在嵌入式的環(huán)境之下,內(nèi)存和外存資源都需要節(jié)約使用。如果使用RAMDISK方式來使用文件系統(tǒng),那么在系統(tǒng)運(yùn)行之后,首先要把外存(Flash)上的映像文件解壓縮到內(nèi)存中,構(gòu)造起RAMDISK環(huán)境,才可以開始運(yùn)行程序。但是它也有很致命的弱點(diǎn)。在正常情況下,同樣的代碼不僅在外存中占據(jù)了空間(以壓縮后的形式存在),而且還在內(nèi)存中占用了更大的空間(以解壓縮之后的形式存在),這違背了嵌入式環(huán)境下盡量節(jié)省資源的要求。

    使用cramfs就是一種解決這個問題的方式。cramfs是一個壓縮式的文件系統(tǒng),它并不需要一次性地將文件系統(tǒng)中的所有內(nèi)容都解壓縮到內(nèi)存之中,而只是在系統(tǒng)需要訪問某個位置的數(shù)據(jù)的時侯,馬上計(jì)算出該數(shù)據(jù)在cramfs中的位置,將其實(shí)時地解壓縮到內(nèi)存之中,然后通過對內(nèi)存的訪問來獲取文件系統(tǒng)中需要讀取的數(shù)據(jù)。cramfs中的解壓縮以及解壓縮之后的內(nèi)存中數(shù)據(jù)存放位置都是由cramfs文件系統(tǒng)本身進(jìn)行維護(hù)的,用戶并不需要了解具體的實(shí)現(xiàn)過程,因此這種方式增強(qiáng)了透明度,對開發(fā)人員來說,既方便,又節(jié)省了存儲空間。

    cramfs擁有以下一些特性:

    采用實(shí)時解壓縮方式,但解壓縮的時侯有延遲。

    cramfs的數(shù)據(jù)都是經(jīng)過處理、打包的,對其進(jìn)先寫操作有一定困難。所以cramfs不支持寫操作,這個特性剛好適合嵌入式應(yīng)用中使用Flash存儲文件系統(tǒng)的場合。

    在cramfs中,文件最大不能超過16MB。

    支持組標(biāo)識(gid),但是mkcramfs只將gid的低8位保存下來,因此只有這8位是有效的。

    支持硬鏈接。但是cramfs并沒有完全處理好,硬鏈接的文件屬性中,鏈接數(shù)仍然為1.

    cramfs的目錄中,沒有“.”和“..”這兩項(xiàng)。因此,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

    可以從
    http://sourceforge.net/projects/cramfs/下載cramfs-1.1.tar.gz。然后執(zhí)行

    tar zxvf cramfs-1.1.tar.gz

    進(jìn)入解包之后生成cramfs-1.1目錄,執(zhí)行編譯命令:

    make

    編譯完成之后,會生成mkcramfs和cramfsck兩個工具,其中cramfsck工具是用來創(chuàng)建cramfs文件系統(tǒng)的,而mkcramfs工具則用來進(jìn)行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:輸出信息更加詳細(xì)

    file:希望測試的目標(biāo)文件

    posted on 2008-08-14 15:43 九寶 閱讀(503) 評論(0)  編輯  收藏 所屬分類: Linux

    主站蜘蛛池模板: 亚洲国产成人91精品| 免费在线看片网站| 免费国产成人午夜私人影视 | 色欲色欲天天天www亚洲伊| 性xxxx视频免费播放直播| 日本一道一区二区免费看 | 亚洲欧洲日本天天堂在线观看| fc2免费人成在线视频| 成人免费视频一区二区三区| 亚洲人成网www| 人人玩人人添人人澡免费| 亚洲精品视频在线看| 国产精品亚洲一区二区三区| 日韩免费观看的一级毛片| 亚洲伊人久久大香线蕉啊| 99久久久国产精品免费牛牛| 好看的亚洲黄色经典| 在线视频网址免费播放| 亚洲色欲久久久综合网| 亚洲精品视频免费| 亚洲午夜激情视频| 免费人人潮人人爽一区二区 | 日韩大片在线永久免费观看网站| 免费看美女被靠到爽| 亚洲人成网站免费播放| 免费a级毛片无码a∨蜜芽试看| 亚洲精品综合久久中文字幕 | 国产成人无码区免费A∨视频网站| 人妻仑刮八A级毛片免费看| 亚洲人成色7777在线观看| 麻豆成人久久精品二区三区免费 | 91亚洲自偷手机在线观看| 最近的中文字幕大全免费版| 亚洲AV无码一区二区三区性色 | 思思久久99热免费精品6| 国产亚洲精品va在线| 在线视频免费观看爽爽爽| 国产精品久久久久久亚洲小说| 国产亚洲A∨片在线观看| 成全高清视频免费观看| 看免费毛片天天看|