为什么内核使用高逻辑地址

时间:2018-01-26 23:20:19

标签: linux linux-kernel operating-system kernel windows-kernel

适用于32位操作系统。 linux内核占用高逻辑地址3~4GB(而windows为2~4GB)。   我想知道为什么设计师选择高地址,而不是0~1GB用于linux,并且由于内核实际上处于phiscal低地址,因此选择低逻辑地址将导致更加和谐的逻辑/物理关系。为什么不呢?

1 个答案:

答案 0 :(得分:1)

在PIC(位置无关代码)流行之前,有许多静态链接程序只能在指定地址加载,可能0x400000

为了能够与这些程序兼容,内核不得获取地址空间。因此内核位于高1G地址空间。