在ARM64架构下,Android内核的地址空间范围如下:

- 用户空间的地址范围是从 0x0000000000000000 到 0x0000FFFFFFFFFFFF,即高16位是全0,这部分空间最大可达256TB⁴。
- 内核空间的地址范围是从 0xFFFF000000000000 到 0xFFFFFFFFFFFFFFFF,即高16位是全1,这部分空间也最大可达256TB⁴。

这些地址称为规范的地址,而两者之间的地址是不规范的地址,不允许使用。对于更详细的内存布局,ARM64架构可以支持更宽的52位虚拟地址空间,允许使用4PiB的虚拟地址空间¹²。如果您有更多问题或需要进一步的帮助,请随时告诉我!

源: 与必应的对话, 2024/5/11
(1) 内存管理:虚拟地址空间布局(AArch64) - aspirs - 博客园. https://www.cnblogs.com/aspirs/p/13909499.html.
(2) 内存管理2:ARM64 linux虚拟内存布局是怎样的? - 知乎专栏. https://zhuanlan.zhihu.com/p/407063888.
(3) 理解 ARM64 内核中对 52 位虚拟地址的支持 | Linux 中国 - 知乎. https://zhuanlan.zhihu.com/p/348183066.
(4) 内存管理:虚拟地址空间布局(AArch64) - aspirs - 博客园. https://bing.com/search?q=Android+arm+64+kernel+%e5%9c%b0%e5%9d%80%e7%a9%ba%e9%97%b4%e8%8c%83%e5%9b%b4.
(5) ARM64内核内存布局图 - yooooooo - 博客园. https://www.cnblogs.com/linhaostudy/p/12867005.html.
(6) [转帖] ARM64 linux kernel的虚拟地址空间简介-Android安全-看雪-安全社区|安全招聘|kanxue.com. https://bbs.kanxue.com/thread-217294.htm.

Comments

Be the first to add a comment