Блок защиты памяти (MPU) - это аппаратный блок компьютера, обеспечивающий защиту памяти . Обычно он реализуется как часть центрального процессора (ЦП). [1] MPU - это урезанная версия блока управления памятью (MMU), обеспечивающая только поддержку защиты памяти . Обычно это реализуется в процессорах с низким энергопотреблением, которые требуют только защиты памяти и не нуждаются в полноценной функции модуля управления памятью, такой как управление виртуальной памятью . [2] [3]
MPU позволяет привилегированному программному обеспечению определять области памяти и назначать права доступа к памяти и атрибуты памяти для каждой из них. В зависимости от реализации процессора количество поддерживаемых областей памяти будет варьироваться. MPU на процессорах ARMv8-M поддерживает до 16 регионов. Атрибуты памяти определяют порядок и поведение слияния этих областей, а также атрибуты кэширования и буферизации. Атрибуты кэша могут использоваться внутренними кэшами, если они доступны, и могут быть экспортированы для использования системными кэшами. [4]
MPU отслеживает транзакции, включая выборку инструкций и доступ к данным от процессора , что может вызвать исключение сбоя при обнаружении нарушения доступа. Основная цель защиты памяти - предотвратить доступ процесса к памяти, которая ему не была выделена. Это предотвращает влияние ошибки или вредоносного ПО в процессе на другие процессы или саму операционную систему . [4]
Пропаганда Сравнение Судебная инженерия История Развитие хобби Список График Доля использования Сравнение возможностей пользователей Диск операционной системы Распределенная операционная система Встроенная операционная система Мобильная операционная система Сетевая операционная система Объектно-ориентированная операционная система Операционная система реального времени Операционная система суперкомпьютера
Exokernel Гибридный Микроядро Монолитный vkernel Ядро крупы Unikernel Драйвер устройства Загружаемый модуль ядра Пользовательское пространство
Многозадачность компьютера ( кооперативная , вытесняющая ) Переключение контекста Прерывать МПК Процесс Блок управления технологическим процессом В реальном времени Нить Совместное времяпровождение Упреждающий с фиксированным приоритетом Многоуровневая очередь обратной связи По-круговой Самая короткая работа следующая
Ошибка автобуса Общая неисправность защиты Защита памяти Пейджинг Защитное кольцо Ошибка сегментации Виртуальная память Загрузчик Дефрагментация Файл устройства Атрибут файла Inode Журнал Раздел Виртуальная файловая система Виртуальная ленточная библиотека API Компьютерная сеть HAL Live CD Живой USB Оболочка ОСCLI Графический интерфейс 3D графический интерфейс NUI TUI VUI ZUI PXE
Управление памятью как функция операционной системы Распределение статической памяти Распределение динамической памяти C новое и удаление (C ++) Пейджинг по запросу Таблица страниц Пейджинг Сжатие виртуальной памяти Блок управления памятью (MMU) Резервный буфер трансляции (TLB) Блок управления памятью ввода-вывода (IOMMU) Сборщик мусора Boehm Сборщик параллельных меток Финализатор Мусор Сборщик мусора Марк-компактный алгоритм Подсчет ссылок Отслеживание сборки мусора Сильная ссылка Слабая ссылка Защищенный режим Реальный режим Виртуальный режим 8086 сегментация памяти x86 Переполнение буфера Перечитывание буфера Висячий указатель Переполнение стека Фрагментация Утечка памяти Недостижимая память Автоматическая переменная Международный симпозиум по управлению памятью Управление памятью по регионам