Es para admitir la abstracción de las tareas de nivel de privilegio de usuario del hardware en el que se ejecutan.
Un sistema operativo puede ejecutarse en un nivel de privilegio más alto y acceder a los datos de tamaño de caché junto con otros datos sobre el hardware en el que se está ejecutando. Es responsabilidad de dicho sistema operativo tratar con el hardware y abstraerlo de los programas a nivel de usuario.
En la medida de lo posible, las tareas / procesos a nivel de usuario no deben conocer la CPU en la que se ejecutan. Esto evita la escritura de software en modo de usuario que está 'sintonizado' al hardware particular en el que se encuentra. Es posible que dicho software no se ejecute correctamente en una CPU diferente, lo que reduce la reutilización y la portabilidad. Los detalles, como el tamaño del caché, están por debajo del nivel de interés de muchos programas.
El sistema operativo generalmente permite que las tareas / procesos del usuario obtengan datos de hardware que los diseñadores del sistema operativo o del sistema consideran relevantes o útiles a través de la API (llamadas de función al sistema operativo).