内核制作:
清除配置文件 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 共享文件系统