Операционная система ЗОСРВ «Нейтрино» > Руководство разработчика > Программные интерфейсы общего назначения > Системные библиотеки > Системные библиотеки > Системная библиотека > A > struct arm_syspage_entry



struct arm_syspage_entry

Фрагмент системной страницы, характеризующий сведения о процессорной архитектуре ARMv6/7

Прототип:

#include <arm/syspage.h>
struct arm_syspage_entry {
syspage_entry_info boxinfo;
uint32_t L1_vaddr;
union {
uint32_t L2_vaddr;
uint32_t L1_paddr;
};
uint32_t startup_base;
unsigned startup_size;
syspage_entry_info cpu;
};

Описание:

Структура содержит информацию системной страницы, характеризующую сведения о процессорной архитектуре ARMv6/7 и включает следующие поля:

boxinfo
Поле устарело.
L1_vaddr
Виртуальный адрес таблицы страниц блока управления памятью 1-го уровня, которая используется для отображения ядра.
L2_vaddr
L1_paddr
Физический адрес таблицы страниц блока управления памятью 1-го уровня, которая используется для отображения ядра.
startup_base
Виртуальный адрес отображения виртуальной памяти в физическую по принципу «один к одному», используемого кодом запуска, который включает блок управления памятью. Это отображение виртуальной памяти удаляется после инициализации ядра.
startup_size
Размер отображения, адрес которого указан в поле startup_base.
cpu
Структура struct arm_cpu_entry, которая содержит операции и данные, специфичные для ядра ARM. В настоящее время она содержит следующие поля:
page_flush
Процедура, которая выполняет процессорно-зависимый сброс кеш-памяти/TLB, когда администратор памяти аннулирует отображение или изменяет ограничения прав доступа к виртуальной памяти страницы. Администратор виртуальной памяти вызывает эту процедуру для каждой страницы изменяемого диапазона.
page_flush_deferred
Эта процедура выполняет операции, которые могут быть отложены при вызове page_flush. Например, на процессоре SA-1110 сброс Icache откладывается до тех пор, пока не внесены изменения во все используемые страницы.

Классификация:

ЗОСРВ «Нейтрино»

Тематические ссылки:

struct syspage_entry

Руководство по разработке модуля startup




Предыдущий раздел: Описание API системной библиотеки