博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
OK6410A 开发板 (六) 3 OK6410A linux-5.11 运行解析
阅读量:4286 次
发布时间:2019-05-27

本文共 928 字,大约阅读时间需要 3 分钟。

url 		: git@github.com:lisider/linux.gitbranch 		: ok6410a-linux-5.11commit id 	: d64fe683e8d36e8fff882f1319de00f442fea1a8config 		: ok6410A_sdboot_mini_defconfig// 涉及的 .S .s .c 文件 有 824个

前提

  • uImage的生成过程
vmlinux               				-objcopy->   		    			             arch/arm/boot/Imagearch/arm/boot/Image         		-gzip & add arch/arm/boot/compressed/head.S->  	 arch/arm/boot/compressed/vmlinuxarch/arm/boot/compressed/vmlinux  	-objcopy->    				   	                arch/arm/boot/zImagearch/arm/boot/zImage        		-mkuboot->     						               arch/arm/boot/uImage
  • u-boot 加载 uImage 的过程
问题 :	1. U-boot中的 kernel_entry 对应 linux中的哪一条代码?答案 :	arch/arm/boot/compressed/head.S 中的 start 标号

linux-5.11 uImage 的启动过程

  • 1 zImage解压缩为Image的过程
arch/arm/boot/compressed/head.S
  • 2 Image 开MMU并转到 start_kernel 的过程
arch/arm/kernel/head.S
  • 3 start_kernel
init/main.c
  • 4.1 0 号进程 idle
cpu_idle
  • 4.2 1 号进程 init
kernel_init
  • 4.3 2 号进程 kthreadd
kthreadd

转载地址:http://dbigi.baihongyu.com/

你可能感兴趣的文章
《图像处理实例》 之 透视变换
查看>>
图像像素的获取和操作(第三天)
查看>>
图像像素的线性叠加(第四天)
查看>>
制作多张“像素、通道、大小”相同的图片
查看>>
中值、均值、高斯、双边滤波(第五天)
查看>>
PCB的初次窥探
查看>>
霍夫变换的基本理解(第八天)
查看>>
opencv查看源代码
查看>>
典型梯度下降法
查看>>
傅立叶变换系列(三)傅立叶变换
查看>>
QT_QSlider的总结
查看>>
形态学操作+实例分析(第六天)
查看>>
《图像处理实例》 之 操作规则的圆
查看>>
一些误差的概念
查看>>
凸优化&非凸优化问题
查看>>
Basler和Matrox的配置及调试
查看>>
QT编写TCP入门+简单的实际项目(附源程序)
查看>>
VS2015和QTcreator冲突解决办法
查看>>
mmdet阅读笔记
查看>>
从零开始实现SSD目标检测(pytorch)(一)
查看>>