linux – 内核loadaddress和入口点有什么区别?
发布时间:2020-12-14 00:58:43 所属栏目:Linux 来源:网络整理
导读:我正在制作自己的 Linux发行版.开发进展顺利但是我发现很难理解内核加载地址和入口点之间的区别. 为了通过uBoot加载内核,我认为加载内核的内存地址总是与内核执行(启动)时的条目(起始点)相同. 但我猜测,因为这些是两个分开的值,并不总是必须相同,因此有一个
我正在制作自己的
Linux发行版.开发进展顺利但是我发现很难理解内核加载地址和入口点之间的区别.
为了通过uBoot加载内核,我认为加载内核的内存地址总是与内核执行(启动)时的条目(起始点)相同. 但我猜测,因为这些是两个分开的值,并不总是必须相同,因此有一个原因可以将它们分开. 有人可以解释一下这两者之间的区别吗? 解决方法
加载地址是要复制内核二进制映像的RAM位置.
入口点是由uboot执行以复制二进制文件的位置以引导内核. 如果RAM映射为80000000且内核LOAD ADDRESS为80008000.bootm命令将uImage从复制的映像位置解压缩到80008000地址,然后调用内核入口点(可能是相同的地址:80008000)来执行内核. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |