IT-lexikon › Hårdvara › MPU (minnesskyddsenhet)

MPU (minnesskyddsenhet)

Hårdvara In English → Uppdaterad: 2026-11-02

En förenklad MMU för mikrokontroller: den översätter inga adresser, men den kan vägra låta kod läsa, skriva eller köra i utpekade minnesområden.

Utan MPU kan vilken pekare som helst i firmware skriva var som helst — i en annan uppgifts stack, i RTOS:ets egna strukturer eller i ett register som styr en motor. MPU:n delar in adressrymden i ett fåtal regioner, åtta eller sexton på Cortex-M, var och en med egna rättigheter. Ett brott ger ett MemManage-fel i stället för tyst korruption som visar sig tre timmar senare.

Vanligaste användningen är blygsam: en skyddszon under varje stack som fångar stacköverflöd, och att märka RAM som ej körbart så att en buffertöverskrivning inte kan bli kod. FreeRTOS-MPU och Zephyr går längre och kör uppgifter oprivilegierat. ARMv7-M kräver att regioner har tvåpotensstorlek och är justerade efter den, vilket gör planeringen till ett pussel.

← Tillbaka till lexikonet