Please enable JavaScript.
Coggle requires JavaScript to display documents.
Principios del Software de E/S - Coggle Diagram
Principios del Software de E/S
INTERFAZ DE E/S DE LAS APLICACIONES
→ Permite que las aplicaciones accedan a los dispositivos sin conocer su funcionamiento interno. → Funciona mediante librerías estándar y llamadas al sistema (API). → Proporciona una abstracción para facilitar la programación.
Dispositivos de bloques y caracteres
Dispositivos de bloques
→ Transfieren bloques de datos fijos (ej. discos).
→ Soportan acceso aleatorio.
Dispositivos de caracteres
→ Transfieren datos byte por byte (ej. teclado, ratón).
→ Solo soportan acceso secuencial.
Dispositivos de red
→ Funcionan mediante paquetes de datos.
→ Incluyen protocolos de red (TCP/IP, etc.).
→ No se tratan como dispositivos de bloques o caracteres convencionales.
Relojes y temporizadores
• Tiempos de espera
→ Proporcionan mediciones del tiempo o activan eventos tras intervalos.
→ Usados para:
• Planificación de procesos
• Tiempos de espera
• Contadores de sistema
E/S Bloqueante y No Bloqueante
Bloqueante
→ El proceso se detiene hasta que la operación de E/S termina.
→ Simpler but less efficient.
No bloqueante
→ El proceso continúa y consulta después el estado de la E/S.
→ Permite mayor concurrencia.
Subsistema de E/S del Kernel
→ Encargado de gestionar las peticiones de E/S desde el usuario.
→ Incluye:
• Controladores de dispositivo
• Planificadores de E/S
• Manejadores de interrupciones
Almacenamiento en buffer
→ Técnica que almacena temporalmente los datos entre productor y consumidor.
→ Reduce el tiempo de espera entre procesos.
Almacenamiento en caché
→ Guarda datos recientemente accedidos para agilizar futuras lecturas.
→ Aumenta el rendimiento del sistema.
→ Controlado por el kernel.
Gestión de colas y reserva de dispositivos
→ Ordena las peticiones de E/S para optimizar el uso de dispositivos.
→ Puede incluir:
• Algoritmos de planificación (FIFO, SCAN, etc.)
• Mecanismos de bloqueo para acceso exclusivo
Tratamiento de errores
→ El sistema debe detectar y manejar fallos de E/S.
→ Acciones:
• Reintentos
• Notificaciones al usuario
• Registros de error