成人在线你懂的-成人在线免费小视频-成人在线免费网站-成人在线免费视频观看-日韩精品国产一区二区-日韩精品国产一区

掃一掃
關(guān)注微信公眾號

如何制作和使用Jffs2文件系統(tǒng)
2007-07-28   網(wǎng)絡(luò)

本文主要介紹如何在AT91SAM9261EK板子上制作和使用jffs2文件系統(tǒng),使用的是linux-2.6.21內(nèi)核。

  首先:配置MTD

$ make menuconfig
進入 Memory Technology Devices (MTD) --->
      <*> Memory Technology Device (MTD) support
       [*] Debugging
       [*] MTD partitioning support
       [*]  Command line partition table parsing
       [*] Direct char device access to MTD devices
       [*] Caching block device access to MTD devices
       RAM/ROM/Flash chip drivers ----->
          <*> Detect non-CFI AMD/JEDEC-compatible flash chips
          <*> Support for AMD/Fujitsu flash chips
       Mapping drivers for chip access --->
           [*] Support non-linear mappings of flash chips
       Self-contained MTD device drivers --->
           [*] Support for AT45... DataFlash
       NAND Flash Device Drivers ---->
           [*] NAND Device Support
           [*] Support for NAND Flash /SmartMedia on AT91
                     
      File systems ---->
         <*> Second extended fs support
         [*] Inotify file change notification support
         [*] Inotify support for user space
         <*> Filesystem in Userspace support
         Miscellaneous filesystems
          <*> Journalling Flash File System v2 (JFFS2) support
          [*] JFFS2 write-buffering support
          <*> Compressed ROM file system support (cramfs)

  以上配置中沒有列出的,都沒選;其配置僅做參考,可根據(jù)自己的需要自行配置。

  $ make all

  其次:制作mtd-util工具

  從網(wǎng)上下載zlib-1.2.3.tar.gz 解壓縮 $ cd zlib-1.2.3

  $ ./configure –prefix=/usr/local/arm/3.4.1/arm-linux ——shared

  修改Makefile如下:

  CC=arm-linux-gcc

  LDSHARED=arm-linux-ld -shared

  $ make all

  $ make install

  注意:這里是安裝在/usr/local/arm/3.4.1/arm-linux目錄下

  由于交叉編譯mtd工具時需要zlib.h文件,所以在編譯之前先安裝zlib庫文件。

  從網(wǎng)上下載 mtd-snapshot-20050519.tar.bz2 解壓縮 $ cd mtd/util

  修改該目錄下的Makefile:

  CROSS=arm-linux-

  $ make all

  然后將該目錄下生成的 flash_erase,flash_eraseall, mkfs.jffs2工具放在ramdisk 文件系統(tǒng)中(我這里放在/bin目錄下),另外在 ramdisk文件系統(tǒng)的dev目錄下要保證有mtd0~mtd9,mtdblock0~mtdblock9這些設(shè)備,如果沒有可參考 ramdisk文件系統(tǒng)的制作,也可從pc機相同目錄下拷貝,要加上文件屬性。

  另外,需要將/arm-linux/lib目錄下的libz.so, libz.so.1, libz.so.1.2.3文件拷貝到ramdisk文件系統(tǒng)的/lib目錄下,否則mkfs.jffs2工具不能使用。

  最后將新生成的uImage和ramdisk文件下載到板子上,起動系統(tǒng),使用命令 cat /proc/mtd 可以看到

  dev: size erasesize name

  mtd0: 00040000 00020000 "Partition 1"

  mtd1: 0ffc0000 00020000 "Partition 2"

  mtd2: 00420000 00000210 "spi0.0-AT45DB321x"

  這里mtd0,mtd1是nandflash上的分區(qū); mtd2是dataflsh上的分區(qū),該分區(qū)上放有u-boot,uImage.img,ramdisk.img,所以我們這里可以使用空的nandflash上的兩個分區(qū)。使用之前要先用工具flash_erase或者flash_eraseall擦除nandflash,具體使用的步驟如下:

  # flash_erase /dev/mtd1

  制作jffs2映像

  # cd /var/tmp

  # mkdir jffs2 (jffs2下的目錄可以任意建)

  # mkfs.jffs2 –d jffs2/ -o jffs2.img

  # cp /var/tmp/jffs2/jffs2.img /dev/mtdblock1

  最后# mount -t jffs2 /dev/mtdblock1 /mnt/mtd即可,使用結(jié)束可使用$ umount /mnt/mtd 卸載.

  如果只是當作普通的jffs2 來使用dataflash或者nandflash,可不必制作 jffs2映像,只需要最后一步

  # mount -t jffs2 /dev/mtdblock1 /mnt/mtd即可。

熱詞搜索:

上一篇:系統(tǒng)備份與恢復(fù)技巧 Ghost程序參數(shù)四則
下一篇:Linux攻略 如何修改系統(tǒng)服務(wù)啟動和停止

分享到: 收藏
主站蜘蛛池模板: 山西影视频道| 金三角电影| 时尚购物| 黄姓的研究报告| 曹永廉| 久草电影| 纳恩| 河南电视台卫星频道| 外国小哥街头索吻狂魔| 荒笛子简谱| 3片| 抖音网页版登录官网| 过客图片| 监视韩国电影播放| 黑衣人| 做您的儿媳妇是我今生最大的幸福| 爱你的主题曲| 视频污污| 邓佳佳| 六年级下册语文书50页内容| 三年片观看免费完整版中文版| 河南卫视直播| 暴风雨的儿女| 玖色| 电视剧玫瑰的故事主演演员表| 爱情最美丽 电视剧| 男生丝袜| chaoporn| 心跳源计划演员表| 炙热电影| 全国城建培训中心| 布莱克·莱弗利身高体重| 狗狗交配视频全过程| 张艺宣| 王怀| 小头儿子大头爸爸| 少女模特电影| 巴戈| 我的公主| 成人免费黄色电影| free hd xxxx moms movie777|