内核空间和用户空间地址范围是否始终按1:3的比例划分。
例如,如果我有4gb地址空间和4gb物理ram
比内核获得1gb而用户空间获得3gb(假设)!
所以,如果我有2gb ram而不是以下情况?
内核:512MB 用户地址范围:0-1536mb用户空间?
这是正确的假设吗?
答案 0 :(得分:4)
不,拆分仅用于划分虚拟地址空间。
这只意味着从0x00000000到0xBFFFFFFF'的地址空间属于或可用于在用户空间中进行映射。虚拟地址0xC0000000到0xFFFFFFFF属于内核。
可用RAM的数量及其使用方式与Linux内核中虚拟地址空间的分区无关。
FWIW,在ARM上,你可以configure what the split is所以它不必是3:1(用户:内核)。它可以是1:3,2:2或3:1。我假设x86 arch有类似的选项。