Idealmente, solo al altamente confiable código del núcleo se le permite ser ejecutado en modo no restringido; cualquier otra cosa (incluyendo las porciones del sistema operativo cuyas funciones no sean las de supervisión) es ejecutada en un modo restringido, y debe emplear las llamadas al sistema (o el mecanismo correspondiente) para solicitar al núcleo que lleve a cabo en su nombre cualquier operación que pueda dañar o poner en peligro al sistema, haciendo imposible que programas no confiables alteren o dañen a otros programas, o al sistema en sí.
Sin embargo, en la práctica, las llamadas al sistema pueden tomar tiempo y perjudicar al rendimiento del sistema,[1] por lo que no es extraño que algunos diseñadores del sistema permitan a algunos programas de tiempo crítico (especialmente a los controladores de dispositivo) ser ejecutados con los plenos privilegios del núcleo.
En los otros modos, ciertas restricciones son impuestas por el hardware en las operaciones de la CPU.
Se dice entonces que estas arquitecturas tienen seguridad basada en anillos, donde la jerarquía de privilegios se asemeja a un conjunto concéntrico de anillos, en cuyo centro está el modo núcleo.
El hardware de Multics fue la primera implementación significativa de la seguridad en anillos, pero muchas otras plataformas hardware habían sido diseñadas de forma parecida, incluyendo el modo protegido del Intel 80286, y el IA-64 también, aunque es referido por un nombre diferente en esos casos.