Linux kernel 内核引导地址。为什么? 背景:

Linux kernel 内核引导地址。为什么? 背景:,linux-kernel,kernel,Linux Kernel,Kernel,阅读内核如何引导 我在那一页上: 它说内核在0x10000处加载 问题: 为什么要使用此地址?从0x00007E00到0x0007FFFF之间有一个480.5 KiB的区域,保证为操作系统提供可用的空闲RAM。 知道这一点很重要。有些是为BIOS数据保留的,用作视频内存或其他原因 看到廉价的生物传感器和硬件无视标准或试图进行智能黑客,但最终破坏了东西,这并不罕见。这一区域的记忆是安全的,不受任何诡计的影响,它是加载数据的好地方,而且它确实工作得很好 您可能知道,引导扇区通常位于0x00007C

阅读内核如何引导

我在那一页上:

它说内核在0x10000处加载

问题:
为什么要使用此地址?

从0x00007E00到0x0007FFFF之间有一个480.5 KiB的区域,保证为操作系统提供可用的空闲RAM。 知道这一点很重要。有些是为BIOS数据保留的,用作视频内存或其他原因

看到廉价的生物传感器和硬件无视标准或试图进行智能黑客,但最终破坏了东西,这并不罕见。这一区域的记忆是安全的,不受任何诡计的影响,它是加载数据的好地方,而且它确实工作得很好


您可能知道,引导扇区通常位于0x00007C00到0x00007DFF之间,正如您的文章所提到的,Linux将该扇区重新定位到0x00090000,然后从0x00010000开始加载内核的其余部分。这是一个很好的位置,因为它是低内存中最大(几乎半个MiB)的RAM块,保证可以自由使用

因为BIOS希望这样做…请注意,这篇文章太旧了,基本上文章中提到的内容都没有了。甚至连这些图像都已经有十多年了,都太大了,无法在那个地址加载。@AnttiHaapala:啊?那么,目前的规则是什么?