适用于 32 位操作系统。 linux内核占用高逻辑地址3~4GB(windows为2~4GB)。 我想知道为什么设计者选择高地址,而不是linux的0~1GB,而且因为内核实际上位于物理低地址,所以选择低逻辑地址会导致更和谐的逻辑/物理关系。为什么不呢?
最佳答案
在PIC(位置无关代码)流行之前,有很多静态链接程序只能在指定地址加载,比如0x400000
为了能够与这些程序兼容,内核必须不获取地址空间。所以内核位于高1G地址空间。
关于linux - 为什么内核使用高逻辑地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48470937/