系统移植-根文件系统

驱动包括驱动的逻辑和硬件的信息

逻辑信息放到了驱动的源代码

硬件信息放到了设备树里面 uimage

裸机下没有设备树

实验10只对内核的uart进行了配置,内核不会编译成功

uboot支持网卡驱动,内核不支持网卡驱动

设备树文件:

一个开发板表示一个根

根节点有很多子节点代表一个硬件

Linux内核驱动移植步骤:

1.在make menuconfig界面中选中要安装的驱动

2.在设备树中添加/修改相应的设备信息

3.重新编译内核/设备树

根文件系统:

uImage不支持shell命令,在开发板上能使用是因为挂载了根文件/bin文件

二进制文件具有系统属性

根文件系统中主要包含了哪些内容及包含这些内容的原因:

bin shell命令(elf格式)(通过busybox编译生成)
dev 设备文件(内核启动后会将设备信息写入该目录)
etc 内核配置文件
lib 共享库(elf格式)(从交叉编译工具链中获取)
linuxrc 内核运行的第一个应用程序(通过busybox编译生成)
mnt 挂载目录(非必要)
proc 进程相关文件(内核启动后会将进程信息写入该目录)
root 超级用户家目录(非必要)
sbin 系统管理shell命令(elf格式)(通过busybox编译生成)
sys 驱动相关文件(内核启动后会将驱动信息写入该目录)
usr shell命令(elf格式)(通过busybox编译生成)

原因:

内核UImage不支持shell命令;需要内核挂载根文件系统。

根文件系统

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

相关推荐
Dillon Dong几秒前
【系列主题】从 Docker 构建失败看依赖隔离:多阶段构建的“隐形陷阱”
运维·docker·容器
云飞云共享云桌面8 分钟前
精密机械制造工厂研发部门使用SolidWorks和ug,三维设计云桌面如何选择?
大数据·运维·服务器·网络·数据库·人工智能·制造
小心我捶你啊20 分钟前
VPS的主要用途,与其它方式的区别
服务器·网络协议·tcp/ip
网络小白不怕黑28 分钟前
1.2 VMware部署Rocky Linux 9 (MBR分区表,图形化安装)
linux·运维·服务器
贾斯汀玛尔斯35 分钟前
每天学一个算法--Aho–Corasick 自动机
java·linux·算法
xlq2232243 分钟前
46.线程池
linux·开发语言
BizObserver1 小时前
从 SEO 到 GEO:2026 年品牌信息分发逻辑的颠覆性变革
大数据·运维·网络·人工智能·安全
练习时长一年1 小时前
@NotEmpty注解引发的报错
java·服务器·前端
狂奔蜗牛飙车1 小时前
大数据赛项(中职组)-VMware+CentOS 7环境安装
linux·运维·centos·大数据应用与服务·大数据入门指南·中职组大数据应用及服务赛项·vmware中装centos7
Joseph Cooper1 小时前
STM32MP157 Linux驱动学习笔记(五):子系统与工程边界(V4L2/IIO/devmem/UIO)
linux·stm32·学习