天天看點

嵌入式系統制作

核心制作:

        清除配置檔案 make  distclean

        配置核心     make  menuconfig ARCH=arm

        編譯核心     make  uImage ARCH=arm  CROSS_COMPILE=arm-linux-

根檔案系統:

         檔案系統的含義 按照固定格式組織的目錄和檔案

                                   在特定的存儲媒體上管理這些目錄和檔案所需要的資料

         制作根檔案系統 建立檔案和目錄

                                   為建立好的檔案和目錄建立管理資料

         建立根檔案系統的目錄

                 mkdir rootfs

                 cd    rootfs

                 mkdir bin dev etc lib proc sbin sys usr mnt tmp var

                 mkdir usr/bin usr/lib usr/sbin lib/modules

         建立裝置檔案

                 cd dev/

                 mknod -m 666 console c 5 1

                 mknod -m 666 mull c 1 3

                 cd ..

        安裝/etc

                 tar ect.tar.gz -C /XXX/rootfs

        編譯核心子產品,進入linux核心目錄

                 make modules ARCH=arm CROSS_COMPILE=arm-linux-

        安裝核心子產品

                 make modules_install ARCH=arm INSTALL_MOD_PATH=/XXX/rootfs

        配置busybox

                 進入busybox目錄  make menuconfig 

                 進入busybox setting》build options》選擇build busybox as a satic binary  //靜态連

                  cross compiler prefix install options 選擇dont use /usr   //避免破壞主控端

                  busybox installation prefix      //編譯後的busybox安裝位置

       編譯安裝busybox

                   make ARCH=arm CROSS_COMPILE=arm-linux-

                   make install

檔案系統:

      JFFS2用于NOR型flash,可讀寫支援資料壓縮的日執型檔案系統,提供斷電保護。當檔案系統快滿時,因收集垃圾而使速度慢

      yaffs/yaffs2用于NAND型flash,功能較少,運作速度更快,挂載時間短

      cramfs  用于NOR或NAND,隻讀,以壓縮方式存儲

      ramdisk,基于ram的檔案系統,将一小部分固定大小記憶體當多塊裝置使用,将實際的檔案系統裝入記憶體

      initramfs  也是基于記憶體的,但大小不定,動态的

      NFS 共享檔案系統