Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Agenda
Introduccin
Computadoras
Introduccin
SO
es como un director
Coordinar los componentes individuales del computador Asigna los recursos del computador a los diversos programas Eficiencia y funcionalidad son claves
Qu es un sistema operativo?
Es un administrador de recursos
como si fuera un gobierno del hardware programa de control ojo, no realiza trabajo productivo
Computadores y Software
Software
(API)
API Software
Interprete de lnea de rdenes
Compilador Cargador Sistema de ventanas Bibliotecas SO Software del sistema Hardware
El SO como interfaz
Es una capa entre el usuario y el hardware. La interfaz ofrece una mquina extendida que es una abstraccin de la realidad.
Abstraccin de recursos
El software del sistema provee un modelo abstracto de cmo funcionan los componentes del hardware.
Simplifica la forma como el programador de aplicaciones controla el hardware. Tambin limita la flexibilidad de cierto hardware concreto.
Abstracciones de nivel ms bajo estn el en SO, las de nivel alto estn en el sw del sistema exterior al SO. Definir un conjunto de abstracciones que sern generalizadas para varios recursos.
Comparticin de recursos
El
SO conmuta el hardware entre los programas a una velocidad muy elevada. Computadores pueden soportar una autntica operacin simultnea en algunos casos. Programas concurrentes y paralelos, deben compartir el mismo computador.
. . .
Programa
. . .
Resultados
Resumen
Interfaz hombre-mquina
Interfaz hardware-software
Recursos Hardware
Quin usar el computador? Es la interaccin humana ms importante que el ritmo al que se completan las tareas? Habr mas de una persona a la vez en el computador? Ser posible implementar una estrategia sin afectar de aburrimientos las prestaciones del sistema completo?
En los inicios:
Un solo programa todo el tiempo No existe el SO Aplicaciones para la defensa nacional Acceso exclusivo a una mquina completa para el programador para desarrollo y depuracin
En los 60s:
Usuarios esperaban la ejecucin concurrente Necesaria la comparticin de recursos Mquina abstracta y multiprogramacin
Sistemas de procesamiento por lotes o tandas: Sirve trabajos individuales de una coleccin de trabajos predefinidos. El SO especifica cada trabajo por medio de una lista de ordenes predefinidas: especificacin de control de trabajos Usuarios no interactan con un trabajo. Al completar el trabajo, se imprimen los resultados y se devuelve al usuario. Perspectiva del usuario: cada usuario prepara una tarea, y despus las tareas se recolectan en un lote que se remite al computador. Tras el cmputo del lote, se produce un lote de listados de salida.
Trabajo 19
Trabajo 3
Bobinadora de entrada
Bobinadora de salida
Bobina de entrada
Bobina de salida
Sistemas de tiempo compartido Varios usuarios interactivamente a la vez Usuario establece una sesin interactiva con el computador y proporciona operaciones, programas y datos. SO proporcionara una respuesta adecuada en tiempo a los usuarios Gestin de los recursos y mecanismos de proteccin Polticas de implementacin para compartir equitativamente el procesador Sistema multitarea: sistema multiprogramado de tiempo compartido que soporta varios procesos por usuario.
El problema de la E/S
La E/S era muy lenta en comparacin con la CPU. Esto provocaba que la CPU quedara ociosa mucho tiempo esperando por la terminacin de operaciones de E/S. Algunas tcnicas para tratar el problema:
Operacin fuera de lnea (offline) Uso de bferes Spooling
Los trabajos siguen usando los mismos servicios para la E/S. Lo que cambia es su implementacin en el S.O: independencia del dispositivo.
Bferes
Esquema de operacin de E/S en el que las transferencias de E/S se realizan a travs de un rea intermedia de memoria (bfer) La operacin de E/S se realiza slo cuando el dispositivo est preparado.
Bferes
La CPU slo espera por E/S cuando el bfer est vaco (entrada) o lleno (salida)
El uso de bferes permite solapar operaciones de E/S de una tarea con instrucciones de CPU de esa misma tarea
Bferes
El uso de bferes no resuelve totalmente el problema de la lentitud de los equipos de E/S Los bferes slo sirven para amortiguar picos de alta actividad de E/S. Su eficacia depende fundamentalmente de la velocidad de los equipos de E/S y del tipo de tareas en ejecucin
Si la E/S es muy lenta, los bferes de entrada se vacan y los de salida se congestionan.
Spooling
(Simultaneous Peripheral Operation On-Line)
Este esquema de funcionamiento de operacin de la E/S surge gracias a la aparicin de los discos Se utiliza el disco como un enorme bfer. El proceso lee/escribe sobre el disco, en lugar del dispositivo de E/S. Mientras se ejecuta un trabajo, el S.O.:
lee los datos del siguiente trabajo de la cinta/tarjetas al disco imprime la salida del anterior trabajo, del disco a la impresora
Multiprogramacin
El modo de operacin offline y el spooling aumentan el rendimiento de la CPU pero tienen sus limitaciones En algn momento la CPU quedar ociosa esperando por alguna operacin de E/S Al existir la posibilidad de tener varios trabajos en un dispositivo de acceso directo, como un disco, es posible la planificacin de trabajos
El SO puede escoger qu trabajo ejecutara a continuacin
Multiprogramacin
Cuando un proceso se bloquea al esperar por la E/S, ejecutamos en la CPU instrucciones de otro proceso. Los procesos entrelazan su ejecucin: concurrencia. La CPU y la E/S trabajan a la misma vez se terminan ms trabajos en menos tiempo
Multiprogramacin
Los sistemas multiprogramados son ms complejos:
Cuando la CPU queda libre, a qu proceso elegimos? (planificacin de la CPU) conflictos por acceso simultneo a la E/S (planificacin de dispositivos) varios procesos a la vez en memoria (gestin de memoria) Proteccin Solucin a situaciones de interbloqueo
embebidos
Concebidos con la idea de controlar sistemas autnomos, carecen de usuario humano Funciona como un componente de otro sistema ms complejo SO debe garantizar tiempos de respuesta para ciertas tareas
de tiempo real
Hay sistemas en los que el tiempo de respuesta es crtico Control industrial Control de guiado de misiles Autmatas (air bag, inyeccin electrnica,) Asistencia mdica
Si ante un evento o suceso el tratamiento adecuado no se realiza dentro del tiempo especificado (muy pequeo) El Sistema Falla!
de tiempo real
Un sistema de tiempo real es aquel en el que si el proceso adecuado no se realiza dentro de unos lmites de tiempo muy estrictos y muy pequeos, el sistema falla
de redes
Paralelos
Este sistema no es 4 veces ms rpido! - Comunicacin y sincronizacin - Conflictos en accesos a recursos comunes - No todo el cdigo es paralelizable.
Distribuidos
Ventajas
Se comparte recursos
Impresoras, Ficheros, Dispositivos, CPUs,...