Depende del dispositivo y de lo que esté haciendo con él: algo entre nada y catástrofe .
Hay dos problemas principales:
El primer problema es que el sistema operativo serializa las operaciones de E / S, asegurando que las intenciones de un proceso se comprometan fielmente con el hardware del sistema, incluso en medio de otras aplicaciones que emiten sus propias operaciones de E / S. Esto se convierte en una preocupación mayor en los dispositivos donde se necesitan múltiples operaciones de E / S para lograr cualquier solicitud en particular. Por ejemplo, considere una unidad de disco: escribir datos es una serie de operaciones, comenzando con la lectura de un inodo, luego una lectura de cualquier dato existente, luego escribiendo los bloques actualizados y finalmente actualizando el inodo. Un sistema operativo puede garantizar que estas operaciones se realicen en orden y, si es necesario, serializadas con respecto a las solicitudes de la competencia. Es decir, si los procesos del usuario pueden acceder directamente al hardware, un proceso puede pisotear a otro.
- Zomato fue pirateado. ¿Cómo / cuándo se da cuenta una empresa de que sus datos han sido pirateados?
- ¿Qué es importante saber para ser un especialista en seguridad de la información?
- Cómo eliminar contraseñas guardadas
- Cómo crear una cuenta en PayPal, usarla adecuadamente y protegerla de ser pirateada o mal utilizada
- ¿Cuáles son los temas de tesis relacionados con el área de seguridad cibernética y las relaciones internacionales?
El segundo problema es que permitir que los procesos del usuario accedan directamente al hardware atraviesa el velo de abstracción y seguridad que brinda un sistema operativo moderno. Por ejemplo, si los procesos pueden acceder directamente a un disco, pueden omitir los permisos del sistema de archivos. Si las aplicaciones pueden acceder directamente a la memoria física, pueden leer los datos de otros procesos. Y así.
En resumen, simplemente no es factible permitir que los procesos del usuario tengan acceso directo al hardware en un sistema operativo moderno y multitarea. Derrota varias abstracciones y mecanismos de seguridad, pero también puede no funcionar dado que múltiples procesos compiten por el hardware sin que el sistema operativo funcione como árbitro. Eso no quiere decir que nunca podría funcionar: algunas API esencialmente dan acceso casi directo al hardware en nombre del rendimiento. Pero requiere hardware cooperativo, API inteligentes y darse cuenta de que la estabilidad del sistema puede verse afectada a expensas de ese rendimiento.