论述嵌入式linux根文件系统6,嵌入式linux内核和根文件系统

介绍嵌入式根文件系统的制作和根文件的制作。及嵌入式linux启动。(大部分与硬件有关的移植和修改都在bootloader中完成,内核修改较少。)

步骤:

一,嵌入式内核的制作

1,下载内核源代码,解压tar zxvf linux.2.6.29.tar.gz

2,清理中间文件和配置文件 make distclean

3,参考配置文件arch//configs/目录下,将config-文件拷贝到内核根目录下.config文件。

4,通过make menuconfig ARCH=arm CROSS_COMPILE=arm-linux- 生成配置菜单进行进一步的配置(包括硬件和需要内核启动后打开的服务如nfs等),保存退出

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

5,编译内核 make uImage ARCH=arm CROSS_COMPILE=arm-linux- ,在arch/arm/boot 目录下产生uImage原因:需要将uboot中的mkimage 拷贝到/bin目录下,制作uboot格式的uImage。

6,TFTP为下载内核,nfs起根文件系统

二,嵌入式根文件系统的制作

1,创建根文件系统的主目录,以及各个必需子目录 mkdir -p /xxx/rootfs, mkdir bin dev etc lib proc sbin sys usr mnt temp var, mkdir usr/bin usr/sbin usr/lib lib/modules

2,创建必需的设备文件 cd dev, mkdir -m 666 console c 5 1, mkdir -m 666 null c 1 3.

3,安装etc, etc目录主要是一些启动时的脚本文件,一般不需要修改。直接解压现有的etc目录的压缩包。

4,编译内核目录中的内核模块, make module ARCH=arm CROSS_MODULE=arm-linux-,make modules_install ARCH=arm INSTALL_MOD_PATH=/rootfs,模块将被安装到根文件系统的/lib/modules目录下。

5,bin和sbin目录下的命令的配置。使用busybox。配置、编译、安装busybox。

6,至此根文件系统已经做好,可以通过nfs的方式起kernel了。

你可能感兴趣的:(论述嵌入式linux根文件系统6,嵌入式linux内核和根文件系统)