系统移植--Linux内核调试及rootfs移植

本文详细介绍了根文件系统的构成,包括bin、sbin、usr等目录的用途,以及BusyBox在简化Linux工具中的角色。重点讲解了如何移植根文件系统并添加必要的库文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、根文件系统

文件系统是内核启动后挂载的第一个文件系统,系统引导程序会在根文件系统挂载后 从中把一些基本的初始化脚本和服务等加载到内存中去运行

 1.1 根文件系统的内容

1. bin:shell命令(elf格式)(通过busybox编译生成)/内核不支持这些shell命令

 2.sbin:系统管理shell命令(elf格式)(通过busybox编译生成)

bin 和 sbin放置 shell命令,因为内核不支持这些命令

3.usr shell命令(elf格式)(通过busybox编译生成)

4.linuxrc:内核运行的第一个应用程序(通过busybox编译生成)

5.lib:共享库(elf格式)(从交叉编译工具链中获取)/内核不支持库

库简易说就是已经写好的程序。动态库(共享库,编译不链接库,执行再链接库)和静态库(编译链接库,可执行文件也有静态库的,但是体积较大)。所以开发板上只需要动态库即可

6. etc 内核配置文件

7.空文件

dev 设备文件(内核启动后会将设备信息写入该目录)

mnt 挂载目录(非必要)

proc 进程相关文件(内核启动后会将进程信息写入该目录)

root 超级用户家目录(非必要)

sys 驱动相关文件(内核启动后会将驱动信息写入该目录)

usr shell命令(elf格式)(通过busybox编译生成)

 二、根文件系统移植

        BusyBox将很多常用的工具集成到一个很小的可执行文件中,为普通用户提供大多数常用的命令,BusyBox实现的命令都是精简版的,很多扩展都不支持。生成的命令很小,轻量化,BusyBox被称为Linux工具里的瑞士军刀        

BusyBox的获取:https://busybox.net/downloads/

编译、安装busybox

添加lib库文件,etc/,并创建其他目录

开发板成功挂载

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值