地址范围
根据图片,我们可以知道
- 如果虚拟地址在0x0000000000000000到0x0000FFFFFFFFFFFF则使用ttbr0_elx
- 如果虚拟地址在0xFFFF000000000000到0xFFFFFFFFFFFFFFFF则使用ttbr1_elx
根据linux内核的内存划分我们可以知道
前256TB是提供给user space的
后256TB是提供的kernel space的
有效位
va的最高有效位决定了ttbrX的使用,如下
- 如果va的bit63是0,则使用ttbr0
- 如果va的bit63是1,则使用ttbr1