S3C2440:如何制作根文件系統(tǒng)?
我們知道2440開發(fā)流程為:移植uboot--》移植內(nèi)核---》掛接根文件系統(tǒng)。
我們移植完內(nèi)核需要掛接根文件系統(tǒng),那么首先我們必須擁有根文件系統(tǒng)。如何來制作我們的根文件系統(tǒng)呢?
第一步:在linux下建立一個文件夾 mkdir rootfs
第二步:在rootfs文件下建立以下目錄 mkdir bin dev etc lib proc sbin sys usr mnt tmp var
第三步:進入usr目錄,在該目錄下建立如下子目錄mkdir bin lib sbin modules
第四步:創(chuàng)建設(shè)備文件,設(shè)備文件在dev目錄中,進入dev目錄。mknod -m 666 console c 5 1
???????????????????????????????????????????????????????????????????????????????????????????????????????????????? mknod -m 666 null c 1 3
第五步:我們在linux下修改配置時經(jīng)常需要進入etc目錄,這里我們安裝etc,在網(wǎng)上下載etc.tar.gz文件,安裝到footfs目錄下的/etc目錄中:tar xvzf tar.etc.tar.gz -C /xxx/rootfs
第六步:在linux內(nèi)核源碼目錄下編譯內(nèi)核模塊,進入源碼根目錄 make modules ARCH=arm CROSS_COMPILE=arm-linux-
第七步:編譯好的內(nèi)核模塊,放到我們第一步建立的rootfs中.make modules_install ARCH=arm INSTALL_MOD_PATH=/XXX/rootfs
接下來就是busbox了,busybox還在學習,學好貼上。
附:我們?yōu)槭裁匆谱鲀?nèi)核模塊 然后放到我們的rootfs中,因為,所有內(nèi)核都編譯進zImage的話,內(nèi)存會裝很多東西,系統(tǒng)運行不流暢,我們將部分不常用的模塊制作成內(nèi)核模塊,放到文件系統(tǒng)中,以后需要用到的時候執(zhí)行install安裝就可以了,這樣可以極大釋放內(nèi)存的壓力。
另外,我們在使用linux時經(jīng)常要使用各種命令,命令也用文件的形式體現(xiàn),這些命令放在/bin目錄下,我們怎么制作這些命令文件呢,這里用到了busybox,用busybox制作好命令文件 路徑指向rootfs/bin下。?