IIC 2332 -- Sistemas Operativos
Apuntes 01
1er Semestre 1996
- Los objetivos principales de los sistemas operativos son la
comodidad para el usuario y la eficiencia.
- Comodidad.
- Proveer servicios al usuario
- Eficiencia.
- Administrar los recursos del computador
- Servicios
- Ejecución
- Interface a input/output
- Sistema de archivos para administrar los datos
- Protección
- Manejo de excepciones
- Contabilidad
- Comunicaciones
- Recursos: procesor, I/O, memoria, red
- Los recursos cambian. Los mainframes han sido reemplazados por
PCs y workstatations conectados por la red.
- SS.OO. están en la intersección de los lenguajes, el
hardware, las metodologías de programación, las estructuras
de datos, algoritmos, etc. Los avances en estos areas implican
posibilidades nuevas para los SS.OO.
- Se querría que los SS.OO. fueran
- Fáciles de usar (sencillos, consecuentes, robustos)
- Eficientes
- Fáciles de construir y mantener
- Los SS.OO. hoy son
- Gigantes (100Ks de líneas de código, cientos de
años-hombre)
- Complejos (asincronía, manejar el hardware, necesidades de
usuarios en conflicto, afinados para la eficiencía, nunca
depurados, vidas largas)
- Programa de curso
- Fotocopia ampliada de una foto
- Ayudantía
- Los primeros sistemos (1940s a mediados de los 50s)
- Interface directa al computador
- Planificación por inscripción
- Arreglo por mano
- Monitor residente
- S.O. primitivo
- Trabajos leidos de tarjetas y procesados en orden por el monitor
- Arreglo especificado en tarjetas de control de trabajo
- Al final de un trabajo, el control se devuelve al monitor que
puede iniciar el próximo trabajo
- Spooling
- Reducir el tiempo por I/O
- El procesador usa el disco por I/O
- Tarjetas leidas al disco
- Output mandado del disco a la impresora
- Multiprogramación
- Un problema con el monitor sencillo es que el procesador tiene
que esperar al I/O
- En general un solo usuario no puede mantener todo
el tiempo ocupados la CPU y el sistema de I/O
- Solución: Mantener más de un programa en memoria
- Cuando un trabajo espera I/O, otros pueden ejecutarse
- Temas nuevos: planificación de trabajos listos,
administración de memoria
- Timesharing (1970s)
- Objeto: Hacer el computador más cómodo a través de
la interactividad
- Se necesita disminuir el tiempo de respuesta
- La CPU pasa rapidamente de un usuario a otro (e.g., entre cada
carácter)
- Se necesitan sistemas de archivos, ejecución concurrente,
protección de otros trabajos, planificación de recursos
- PCs, sistemas paralelos, sistemas distribuidos, sistemas en tiempo
real (real-time)
Last edited March 19, 1996, by knabe@ing.puc.cl