uboot的目的是启动内核,内核的目的是为了启动应用程序,应用程序位于根文件系统上面。
一、使用busybox制作根文件系统
busybox下载地址:http://www.busybox.net/downloads/
这里使用busybox-1.7.0(包名:busybox-1.7.0.tar.bz2 )
解压命令:tar xjf busybox-1.7.0.tar.bz2
busybox目录下的INSTALL文件中部分代码:
1、配置busybox
在busybox-1.7.0目录下,执行:“make menuconfig”命令进入配置界面
(1)设置“TAB”键补全
Busybox Settings--->
Busybox Library Tuning--->
[*] Tab completion
2、编译与安装Busybox
(1)修改busybox顶层目录的Makefile文件,修改如下两行:
ARCH ?= arm
CROSS_COMPILE ?= arm-linux-
(2)然后执行make命令进行编译。
(3)编译完成后执行:"make CONFIG_PREFIX=dir_path install"就可以将busybox安装到目录dir_path下。
在目录/work/nfs_root/下创建一个second_fs目录:“mkdir -p /work/nfs_root/second_fs”。
执行以下命令:make CONFIG_PREFIX= /work/nfs_root/second_fs install,在 /work/nfs_root/second_fs目录下安装Busybox.
在上面指定的目录下生成如下文件、目录:bin、linuxrc、sbin、usr。
3、创建/dev目录,静态创建节点
(1) mknod console c 5 1
mknod null c 1 3
(2)创建etc目录,并在目录下创建etc_inittab文件。
etc_inittab文件中的内容是:console::askfirst:-/bin/sh
(3)拷贝C库
首先创建lib目录:mkdir /work/nfs_root/second_fs/lib
使用命令拷贝动态链接库:cp *.so* /work/nfs_root/second_fs/lib -d。
以上完成了最小根文件系统的制作,
下面如何把最小根文件系统烧写到开发板中去呢?----------->通过制作yaffs2文件系统映像文件
二、通过制作yaffs2文件系统映像文件
(1)解压yaffs_source_util_larger_small_page_nand.tar.bz2
解压命令:tar xjf yaffs_source_util_larger_small_page_nand.tar.bz2,解压后得到Development_util_ok目录,然后进入
/Development_util_ok/yaffs2/utils目录下执行make命令,然后得到一些工具,我们要用到mkyaffs2image这个工具,
然后将mkyaffs2image拷贝到系统的/usr/local/bin/目录中去,然后赋予可执行权限。
sudo cp mkyaffs2image /usr/local/bin
sudo chmod +x /usr/local/bin/mkyaffs2image
工具列表如下:
(2)制作文件系统
mkyaffs2image命令可以查看使用说明
制作文件系统命令:mkyaffs2image second_fs second_fs.yaffs2。则生成了文件系统。
生成的second_fs.yaffs2则可以通过以前的烧写文件系统方法进行烧写。
三、进一步完善
1、在/work/nfs_root/second_fs/目录下创建proc目录:mkdir proc
修改/work/nfs_root/second_fs/etc/下的inittab文件,将内容改为:
console::askfirst:-/bin/sh
::sysinit:/etc/init.d/rcS
然后在etc目录下创建init.d目录,并在此目录下创建rcS文件。
mkdir init.d
vim etc/init.d/rcS
rcS文件中的内容为:
mount -t proc none /proc
给文件赋予执行权限:
chmod +x /etc/init.d/rcS
上一篇:OpenCV2.0.0移植到ARM9(五)(JZ2440----S3c2440)
下一篇:汇编指令(ARM体系机构)
推荐阅读最新更新时间:2024-11-03 03:40
设计资源 培训 开发板 精华推荐
- NCP1247USBPDGEVB:固定频率电流模式 PWM 控制器评估板
- TM4642IY 1MHz 4 相、四路输出(3.3V、2.5V、1.2V、0.9V)的典型应用电路,可跟踪至 3.3V 输出
- 16 位、500KSPS、4CH 用于仪表
- #第五届立创电子设计大赛#usb2.0集线器
- 使用 STMicroelectronics 的 UC3843N 的参考设计
- 面向汽车网络处理的S32G参考设计2
- LTC3555EUFD-3 按钮启动的典型应用电路,具有自动排序、反向输入电压保护和 10 秒按下并保持硬关断
- 降压模块FPDK05SR800x转接板
- DIY创意LED(1)
- 使用 NXP Semiconductors 的 MC34PF3000A6EP 的参考设计