Download Sistemas Operativos - Servidor de la Sección de Computacióon

Document related concepts

Sistema operativo wikipedia , lookup

Anillo (seguridad informática) wikipedia , lookup

Multiusuario wikipedia , lookup

Tiempo compartido (informática) wikipedia , lookup

Clúster (informática) wikipedia , lookup

Transcript
Sistemas Operativos
Dr. Pedro Mejía Álvarez
Cinvestav-IPN, Sección de Computación, Mexico
Dr. Pedro Mejía Álvarez
Curso de Sistemas de Tiempo Real
CINVESTAV-IPN, Sección de Computación
1
Contenido
•
•
•
•
•
•
•
•
•
Que es un Sistema Operativo?
Los primeros sistemas
Sistemas Batch
Sistemas de Multiprogramación Batch
Sistemas de Tiempo Compartido
Sistemas de Cómputo Personal
Sistemas Paralelos
Sistemas Distribuidos
Sistemas de Tiempo Real
Dr. Pedro Mejía Álvarez
Curso de Sistemas de Tiempo Real
CINVESTAV-IPN, Sección de Computación
2
Que es un Sistema Operativo ?
Un programa que actúa como intermediario entre el
usuario de la computadora y el hardware de la
computadora.
Objetivos del Sistema Operativo:
• Ejecutar programas del usuario y resolver los problemas
del usuario de manera fácil y sencilla.
• Hace que la computadora sea fácil y conveniente de usar.
• Utiliza el hardware de la computadora de forma eficiente.
Dr. Pedro Mejía Álvarez
Curso de Sistemas de Tiempo Real
CINVESTAV-IPN, Sección de Computación
3
Que es un Sistema Operativo ?
• Sistema de software que prove a los usuarios de un
ambiente eficiente par la ejecucion de sus programas.
Usuarios
Software de aplicaciones
Software del Sistema
Sistema Operativo
Hardware
Dr. Pedro Mejía Álvarez
Curso de Sistemas de Tiempo Real
CINVESTAV-IPN, Sección de Computación
4
Componentes del sistema de cómputo
• Hardware - proveé los componentes básicos de cómputo
(CPU, memoria, dispositivos de E/S).
• Sistema Operativo - controla y coordina el uso del
hardware entre los varios programas de aplicación para los
diferentes usuarios.
• Programas de Aplicación - define las formas en que los
recursos del sistema son utilizados para resolver los
problemas de cómputo de los usuarios (compiladores,
bases de datos, juegos de video, programas de negocios).
• Usuarios (gente, maquinas, otras computadoras).
Dr. Pedro Mejía Álvarez
Curso de Sistemas de Tiempo Real
CINVESTAV-IPN, Sección de Computación
5
Componentes del Sistema Operativo
• Manejador de recursos - administra y aloja los recursos.
• Programa de control - controla la ejecución de los
programas de usuarios y las operaciones de los dispositivos
de entrada/salida.
• Kernel - el programa que corre en todo momento (todo lo
demas es programa de aplicación).
Dr. Pedro Mejía Álvarez
Curso de Sistemas de Tiempo Real
CINVESTAV-IPN, Sección de Computación
6
Por que necesitamos al Sistema Operativo
• Usuario: prove interfaces de usuario, interprete de
comandos, estructura de directorios, programas de utilerias
(compiladores, editores, filtros).
• Ambiente de programacion- prove un ambiente de alto
nivel para manejo E/S, manejo de archivos, manejo de
procesos.
• Eficiencia - remplaza al operador en la calendarizacion de
jobs, almacenamiento archivos de E/S, manejo de
concurrencia.
Dr. Pedro Mejía Álvarez
Curso de Sistemas de Tiempo Real
CINVESTAV-IPN, Sección de Computación
7
Breve Historia de los Sistemas Operativos
•
•
•
•
•
1940. Primeras Computadoras
1950. Sistemas en Batch
1960. Multiprogramacion y Timesharing.
1970. Minicomputadoras y Microprocesadores.
Finales de 70’s y 80’s. Computadoras personales,
Redes, Sistemas Distribuidos y Sistemas
Paralelos, Sistemas de Tiempo Real.
• 1990. WWW, Sistemas de Computo Mobil,
PC’s.
Dr. Pedro Mejía Álvarez
Curso de Sistemas de Tiempo Real
CINVESTAV-IPN, Sección de Computación
8
Primeros sistemas - principios de los 1940s
• Estructura
–
–
–
–
–
Grandes maquinas ejecutandose desde una consola
Computadora dedicada a un usuario/programador a la vez.
Programador / usuario como operador
Tarjetas perforadas o cintas programadas
Programacion y depuracion mediante switches y focos de luz.
• Primer Software
– Ensambladores, cargadores, linkers , Librerias de subrutinas comunes
– Compiladores
– Drivers de dispositivos
• Uso ineficiente de recursos
– Baja utilización del CPU
– Mucho tiempo en inicialización del sistema (setup time)
– Programacion y depuracion es lenta y tediosa.
Dr. Pedro Mejía Álvarez
Curso de Sistemas de Tiempo Real
CINVESTAV-IPN, Sección de Computación
9
1950`s. Sistemas Batch
• Cuenta con un operador distinto al usuario.
• Incluye un lector de tarjetas. El usuario/programador
somete un conjunto de tarjetas perforadas que contienen un
job a ejecutarse.
• Reduce el tiempo de inicialización ejecutando en batch
jobs similares.
• Jobs de varios usuarios son ejecutados en secuencia por un
monitor residente. Primer sistema operativo rudimentario.
• Monitor residente
– control inicial en el monitor
– transfiere el control a el primer job
– cuando el job termina se transfiere el control al monitor
Dr. Pedro Mejía Álvarez
Curso de Sistemas de Tiempo Real
CINVESTAV-IPN, Sección de Computación
10
1960’s. Multiprogramación
• Sistemas multiprogramados - varios jobs se conservan en
memoria al mismo tiempo, y el cpu se comparte entre ellos
• Rutinas de E/S provista por el sistema ejecutadas
simultaneamente con procesamiento del CPU.
• Administración de memoria - el sistema debe reservar
memoria para varios jobs.
• Administración del CPU - el sistema debe elegir entre
varios jobs listos para ejecución.
• Administración de dispositivos.
Dr. Pedro Mejía Álvarez
Curso de Sistemas de Tiempo Real
CINVESTAV-IPN, Sección de Computación
11
1960’s. Sistemas de Tiempo Compartido
• El CPU se comparte entre varios jobs que se encuentran
residentes en memoria y en disco ( el CPU se asigna a un
job solo si este esta en memoria).
• Un job es enviado dentro y fuera del la memoria hacia el
disco.
• Existe comunicación en-linea entre el usuario y el sistema;
cuando el sistema operativo finaliza la ejecución de un
comando, busca el siguiente “estatuto de control” no de
una tarjeta perforada, sino del teclado del operador.
• Existe un sistema de archivos en-linea el cual esta
disponible para los datos y código de los usuarios
Dr. Pedro Mejía Álvarez
Curso de Sistemas de Tiempo Real
CINVESTAV-IPN, Sección de Computación
12
1970-1980. Mini-computadoras y Microprocesadores
•
•
•
•
•
Computadoras de menor tamaño.
Desarrollo de sistemas operativos (UNIX, DOS, CP/M).
Mejora en las interfaces de usuario.
Introduccion de Microprocesadores.
Desarrollo de lenguajes de programacion.
Dr. Pedro Mejía Álvarez
Curso de Sistemas de Tiempo Real
CINVESTAV-IPN, Sección de Computación
13
1980. Sistemas de cómputo personales
• Computadoras Personales- sistemas de cómputo dedicados
a un solo usuario.
• Dispositivos de E/S- teclados, raton, pantalla, impresoras..
• Conveniente al usuario y de respuesta rápida.
• Puede adaptarse a la tecnología para soportar otros
sistemas operativos.
Dr. Pedro Mejía Álvarez
Curso de Sistemas de Tiempo Real
CINVESTAV-IPN, Sección de Computación
14
1980’s. Sistemas Distribuidos
• Sistemas Distribuidos - distribuyen el cómputo entre varios
procesadores geográficamente dispersos.
• Sistemas debilmente acoplados - cada procesador tiene su
propia memoria local y el procesador se comunica con los
demas procesadores mediante lineas de comunicación,
buses de alta velocidad y lineas telefónicas.
• Ventajas:
–
–
–
–
–
Compartición de recursos
Incremento en la velocidad de cómputo
compartición de carga
Confiabilidad
Comunicacion
Dr. Pedro Mejía Álvarez
Curso de Sistemas de Tiempo Real
CINVESTAV-IPN, Sección de Computación
15
1980’s. Redes
• Estaciones de Trabajo: (Sun, Vax, Silicon Graphics).
• Redes de Area Local (Ethernet, Token Ring, FDDI, ATM),
Redes de larga distancia (Arpanet).
• Redes organizadas como clientes-servidores.
• Servicios de S.O. Protocolos de comunicación, encripcion
de datos, seguridad, consistencia en datos distribuidos.
Dr. Pedro Mejía Álvarez
Curso de Sistemas de Tiempo Real
CINVESTAV-IPN, Sección de Computación
16
1980-1990`s. Sistemas Paralelos
• Sistemas paralelos - sistemas de múltiples procesadores
con mas de 1 procesador con comunicación entre ellos.
• Sistema fuertemente acoplado - los procesadores
comparten memoria y reloj; la comunicación usualmente
se realiza mediante memoria compartida.
• Ventajas:
– Incremento de throughput
– Economica
– Incremento en la confiabilidad
Dr. Pedro Mejía Álvarez
Curso de Sistemas de Tiempo Real
CINVESTAV-IPN, Sección de Computación
17
1990`s-2000.
• Computo Paralelo (Teraflops).
• PC’s poderosas (1.5 GigaHertz) , Computadoras
Multimedia.
• Redes de Comunicación de distancia mundial, con envio
de imágenes, grandes cantidades de datos, audio y video.
• World Wide Web.
• Notebooks utilizando tecnologias de comunicación
inalambrica: Computo Mobil.
• Computo Embebido y Robotica.
Dr. Pedro Mejía Álvarez
Curso de Sistemas de Tiempo Real
CINVESTAV-IPN, Sección de Computación
18
1990-2000`s-Sistemas de Tiempo Real
• A menudo utilizados como dispositivo de control en
aplicaciones dedicadas, como control de experimentos
científicos, sistemas de procesamiento de imagenes
médicas, sistemas de control industrial, etc...
• Exige complimiento de restricciones de tiempos.
• Sistemas de tiempo real criticos.
– Cumplimiento forzoso de plazos de respuesta.
– Predecibilidad y analisis de cumplimineto de plazos de respuesta
• Sistemas de tiempo real acríticos.
– Exigencia “suave” de plazos de respuesta.
– Atención lo mas rapido posible a eventos, en promedio.
Dr. Pedro Mejía Álvarez
Curso de Sistemas de Tiempo Real
CINVESTAV-IPN, Sección de Computación
19