¿A qué hardware puede acceder un proceso en modo usuario?

0

Qué hardware, si lo hay, puede un proceso en el modo de usuario (a diferencia del modo kernel) de acceso sin usar llamadas al sistema, por ejemplo. ¿Sin confiar en el sistema operativo para hacer nada por él? Esta pregunta debería ser independiente del sistema operativo ya que solo solicito las restricciones de hardware que se aplican.

    
pregunta John Smith 02.03.2017 - 20:52
fuente

1 respuesta

1

No estoy completamente seguro de esto, así que no dude en corregirme.

Leí cómo funcionan los controladores de dispositivo de espacio de usuario en Linux en este artículo: Controladores de dispositivo en el espacio de usuario .

Por lo que puedo decir, funcionan porque el kernel asigna la memoria que el dispositivo usa para la configuración y los búferes en el espacio del usuario. Esta memoria contiene la configuración del dispositivo y cualquier búfer relacionado y, por lo tanto, los cambios en ella afectan indirectamente al dispositivo sin cambiar al modo de kernel .

Pero los procesos de espacio de usuario no pueden comunicarse directamente con el dispositivo. Solo pueden leer y escribir en esta memoria compartida. Si el controlador de espacio de usuario desea informar al dispositivo de un cambio en esta memoria, tiene que usar una llamada al sistema (→ interrumpir, modo kernel invocación).

Las interrupciones desde el dispositivo son procesadas por el controlador UIO (User-IO) en modo kernel , que pasa al espacio de usuario conductor.

Entonces, la respuesta a mi pregunta es (si no estoy completamente equivocado): los procesos en modo usuario no pueden acceder a ningún hardware directamente y, por supuesto, sin ninguna llamada al sistema, no pueden solicitar la memoria compartida tampoco.

Editar : Esto debería ser cierto en cualquier sistema operativo , ya que los mecanismos utilizados para implementarlo están programados en la CPU. A su vez, podría no ser cierto en ciertas CPU sin importar el sistema operativo, ya que la CPU podría no admitir este tipo de protección.

    
respondido por el John Smith 02.03.2017 - 22:54
fuente

Lea otras preguntas en las etiquetas