37、嵌入式系统启动与 init 程序详解

嵌入式系统启动与 init 程序详解

1. 硬件集成与后续开发准备

在硬件集成方面,要将外设与常用的片上系统(SoC)集成,需要进行引脚复用,并依据数据手册和原理图的知识修改设备树源文件。若没有现成的硬件,可借助开发板和进行一些焊接工作,将相关部件与开发板连接起来。最后,还需使用逻辑分析仪来验证和排查电信号问题。完成硬件集成且硬件正常工作后,就可以开始开发嵌入式应用了。

2. 技术要求

为了能顺利进行后续的示例操作,需要准备以下环境:
- 基于 Linux 的主机系统
- Buildroot 2020.02.9 LTS 版本
- Yocto 3.1(Dunfell)LTS 版本

若尚未安装 Buildroot 2020.02.9 LTS 版本,可参考相关手册的系统要求部分,然后按照特定说明在 Linux 主机上进行安装。若还未构建 Yocto 3.1(Dunfell)LTS 版本,需参考 Yocto 项目快速构建指南中的兼容 Linux 发行版和构建主机软件包部分,再依据说明在 Linux 主机上进行构建。所有示例代码可在特定的 GitHub 仓库的 Chapter13 文件夹中找到。

3. 内核启动后 init 程序的作用

内核启动过程中,其引导代码会寻找根文件系统,找到后执行默认程序。对于 initramfs 是 /init,对于常规文件系统是 /sbin/init。init 程序拥有根权限,作为第一个运行的进程,其进程 ID(PID)为 1。若 init 程序无法启动,内核将会崩溃。

init 程序是所有其他进程的祖先,它在用户空间控制引导过程,通常会执行以

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值