|
【Linux】
RK3288内核运行的第一个文件是哪个
发表于 2019-9-7 18:22:57
浏览:4212
|
回复:2
打印
[复制链接]
楼主
通过查看顶层的Makefile和arch/arm/Makefile中的文件,
在arch/arm/Makefile文件中有如下语句:
head-y := arch/arm/kernel/head$(MMUEXT).o
MMUEXT为空,因为RK3288有MMU,所以:
head-y := arch/arm/kernel/head.o
通过分析顶层Makefile文件,kernel启动后,第一个运行的文件应该是arch/arm/kernel/head.S吧?
但是看博客上有篇文章说kernel运行的第一个文件为arch/arm/boot/compressed/head.S
博客网址如下:
https://blog.csdn.net/lp542718520/article/details/38705975
请问,内核运行的第一个文件是arch/arm/boot/compressed/head.S这个么?
主要是我查看kernel的编译日志里,也确实是编译了arch/arm/boot/compressed/head.S这个文件,
而且也有arch/arm/boot/compressed/vmlinux.lds这个链接脚本文件。
LDS arch/arm/boot/compressed/vmlinux.lds
AS arch/arm/boot/compressed/head.o
在顶层Makefile文件中明明清楚的包含的是
arch/arm/kernel/head.S文件,arch/arm/kernel/vmlinux.lds文件
内核编译日志中包含如下2条语句了。
AS arch/arm/kernel/head.o
LDS arch/arm/kernel/vmlinux.lds
请问下arch/arm/boot/compressed/head.S是内核运行的第1个文件么?
请知道帮我解答下,万分感谢。
|
|