嵌入式系统启动过程
来源:互联网 发布:浙江卫视网络在线直播 编辑:程序博客网 时间:2024/06/05 16:06
1.ROM code. 上电首先运行ROM中的代码,ROM code的目的是把第二部分boot code(SPL-second stage program loader) load 到 SRAM中。ROM code运行时,属于最小系统,DDR还没有初始化,可以使用的RAM 只有芯片中的SRAM。而SRAM的大小只有几KB,不能load占用空间很大的code(如uboot)进入SRAM。 ROM code从flash, emmc, sd,或者通过USB, load SPL 到SRAM中,然后PC指针跳到SPL。从存储介质的最开头的位置load: first pages of NAND flash, first sectors of eMMC chip.
2.SPL. SPL 的大小受SRAM的限制,功能受限。负责初始化DDR,把占用空间更大,功能更强的TPL(third stage program loader) 从一系列的存储介质中load到DDR中。通过约定的offset,从存储介质中找到TPL。
3.TPL. 如uboot, 全面初始化系统,通常带有命令行。load kernel, rootfs. 把kernel启动需要的系统参数,RAM address, size, CPU clock, DTS(device tree),kernel command line 传递给kernel. 然后启动kernel.
参考自:《Mastering Embedded Linux Programming》
阅读全文
0 0
- 嵌入式Linux系统启动过程
- 嵌入式Linux系统启动过程
- 嵌入式系统启动过程
- 嵌入式Linux系统启动过程
- 嵌入式Linux系统启动过程
- 嵌入式Linux系统启动过程
- 嵌入式Linux系统启动过程
- 嵌入式系统启动过程
- 嵌入式Linux系统启动过程简介
- 嵌入式Linux系统启动过程分析
- 嵌入式Linux系统启动过程 u-boot
- 嵌入式开发手记(一)嵌入式系统启动过程
- 嵌入式系统启动
- 嵌入式系统启动
- 嵌入式系统启动
- 系统启动 过程
- 系统启动过程
- 系统启动过程
- 5、jQuery插件之jqzoom放大镜插件
- generatorConfig.xml配置
- js中Number()方法
- 关于一些Vue的文章。(5)
- Java程序执行Linux命令
- 嵌入式系统启动过程
- selenium之HTML元素无法定位
- 随笔
- Android 透明度数值
- Kotlin之泛型、枚举
- java.lang.NoClassDefFoundError: org/apache/commons/lang/exception/NestableRuntimeException at java.
- msiexec Msi文件在命令行安装的命令帮助内容 来自微软帮助Windows (R) Installer
- 英文
- String,StringBuilder和StringBuffer的区别