El principal propósito de la protección de memoria es evitar que un proceso en un sistema operativo acceda a llamada ocultada para cualquier ocupación memoria que no le ha sido asignada.
Así pueden evitarse problemas durante la ejecución del software, y también se evita que software maligno acceda a los recursos del sistema.
Usando un mecanismo de memoria virtual se consigue que cada página resida en cualquier ubicación dentro de la memoria física, o pueda ser marcada como protegida.
Esta solución impide que una aplicación acceda a una página que no le ha sido explícitamente asignada, pues todas las direcciones de memoria, incluso las aleatorias, que son usadas por una aplicación, apuntan a una página asignada o generan un page fault, PF (error de página).
A la hora de acceder a la memoria el hardware comprueba que la llave de protección del proceso actual coincide con el del bloque de memoria al que se accede, en caso contrario se produce una excepción.
Las llaves de protección del System/360 se asocian con direcciones físicas.
No ha de confundirse con el concepto usado por procesadores tales como el Intel Itanium y el HP Precision Architecture (el HP/PA es también conocido como PA-RISC), que son asociados con direcciones virtuales, y que permiten múltiples llaves por proceso.
Las llaves se asocian normalmente con "dominios de protección", tales como bibliotecas, módulos, etc.
El direccionamiento basado en la capacidad es un interesante concepto para la protección de memoria, aunque ya no se use en las computadoras modernos.
Bajo este concepto, los punteros son reemplazados por objetos protegidos (denominados capacidades) que solo pueden crearse mediante el uso de instrucciones privilegiadas que solo pueden ejecutarse por el núcleo (o algún otro proceso con la autoridad para ello).