Хотелось бы понять, память на каждом уровне покрыта таблицами страниц в AARCH64 с гранулярностью 4k.
При 47 битах VA можно получить уровень от 0 до уровня 3.
На уровне 0 может быть одна таблица, которая описывает 512 таблиц уровня 1,
Теперь каждая таблица страниц уровня 1 может описывать 512 таблиц страниц уровня 2, и далее каждая таблица страниц уровня 2 может описывать 512 таблиц страниц уровня 3.
Таким образом, на уровне 3 имеется 512 таблиц страниц размером 4 КБ каждая, а занимаемая память составляет 512 * 4 КБ = 2 МБ, это то, что может охватить только одна таблица страниц уровня 2, и если у нас есть 512 таких таблиц страниц уровня на уровне 2 тогда общий объем памяти составляет 512 * 2 МБ = 1 ГБ, верно?
Аналогичным образом каждая таблица на уровне 1 указывает на 512 таблиц страниц уровня 2 (где каждая страница уровня 2 охватывает 2 МБ).
Итак, 512 * 2 МБ = 1 ГБ, и если у нас 512 страниц таблицы уровня 1 и общий объем памяти составляет 512 ГБ, верно?
Аналогично, общий объем памяти на уровне 0 составляет 1024 ГБ, верно?