Download Sistemas Distribuidos - Redes y Comunicaciones

Document related concepts

Multiprocesamiento wikipedia , lookup

Sistema operativo wikipedia , lookup

Multiprocesamiento simétrico wikipedia , lookup

Anillo (seguridad informática) wikipedia , lookup

Transcript
Capítulo 1: Introducción
 ¿Qué es un sistema operativo?
 Sistemas Operativos por Lotes.
 Sistemas de Tiempo Compartido.
 Sistemas para Computadoras Personales.
 Sistemas Paralelos.
 Sistemas de Tiempo Real.
 Sistemas Distribuidos.
Sistems Operativos – 6ta. Edición
1.1
Silberschatz, Galvin y Gagne ©2002
¿Qué es un Sistema Operativo?
 Un programa que actúa como intermediario entre el
usuario y el “hardware” de la computadora.
 Propósitos de un Sistema Operativo:
 Principal –
 Ejecutar los programas de los usuarios y facilitar la
resolución de algoritmos.
 Facilitar el uso del sistema de computación.

Secundario –
 Utilizar los recursos del “hardware” de la computadora
de una manera eficiente.
Sistems Operativos – 6ta. Edición
1.2
Silberschatz, Galvin y Gagne ©2002
Componentes de un Sistema de
Computación
 Hardware – provee los recursos básicos de cómputo ( CPU,
memoria, dispositivos de entrada/salida.
 Sistema Operativo – controla y coordina el uso del “hardware”
entre los variados programas de aplicación en ejecución por los
usuarios del sistema.
 Programas de Aplicación – Definen la manera en la cual los
recursos del sistema son utilizados para resolver los problemas
planteados por los usuarios ( compiladores, bases de datos,
juegos, programas para negocios ).
 Usuarios ( personas, máquinas, otras computadoras ).
Sistems Operativos – 6ta. Edición
1.3
Silberschatz, Galvin y Gagne ©2002
Vista de los componentes del sistema.
Sistems Operativos – 6ta. Edición
1.4
Silberschatz, Galvin y Gagne ©2002
Definición de un Sistema Operativo.
Otras definiciones para un sistema operativo:
 Administrador de recursos – Administra y asigna
recursos.
 Es un programa de control – controla la ejecución de los
programas de los usuarios así como las operaciones de
los dispositivos de entrada/salida.
 Kernel – El programa en ejecución permanente ( todos
los demás son programas de aplicación ).
Sistems Operativos – 6ta. Edición
1.5
Silberschatz, Galvin y Gagne ©2002
Sistemas por lotes( batch ).
 Reducen el tiempo de arranque agrupando trabajos con
características similares.
 Erán utilizadas lectoras de tarjetas para cargar los
trabajos. Un lote de tarjetas se denomina “batch”.
 Secuencia automática de los trabajos – automaticamente
transfiere el control de un trabajo al siguiente. Primeros
sistemas operativos rudimentarios.
 Monitor residente.
 El monitor tiene el control inicial.
 Es transferido el control al trabajo.
 Al terminar el trabajo, el control es transferido de vuelta al
monitor.
Sistems Operativos – 6ta. Edición
1.6
Silberschatz, Galvin y Gagne ©2002
Mapa de memoria para un sencillo sistema
por lotes.
Sistems Operativos – 6ta. Edición
1.7
Silberschatz, Galvin y Gagne ©2002
Sistemas por lotes( batch ).
 En los sistemas por lotes el CPU está ocioso mientras el único
trabajo en memoria requiere de actividades con dispositivos de
entrada/salida, mucho más lentos que el CPU.
 La aparición de discos duros para almacenamiento secundario,
facilitó la carga de trabajos a la memoria del sistema.
 Colocar varios trabajos en la memoria al mismo tiempo logró
sistemas más eficientes, esta técnica se llamó
Multiprogramación.
Sistems Operativos – 6ta. Edición
1.8
Silberschatz, Galvin y Gagne ©2002
Multiprogramación.
 La Multiprogramación consistió en colocar varios trabajos al
mismo tiempo en la memoria del sistema.
 Cuando un trabajo requiere actividades de entrada/salida, el
CPU se encarga de ejecutar al siguiente trabajo en la memoria
haciendo mucho más eficiente el uso del CPU.
 La selección de los trabajos a ser cargados en memoria desde
almacenamiento secundario dió paso a técnicas de
Planificación de los Trabajos.
 La selección del siguiente trabajo a ser ejecutado en la memoria
del sistema dió paso a técnicas de Planificación del CPU.
Los sistemas operativos comienzan a evolucionar.
Sistems Operativos – 6ta. Edición
1.9
Silberschatz, Galvin y Gagne ©2002
Multiprogramación.
Varios trabajos se mantienen en la memoria principal al mismo tiempo.
El tiempo de CPU es multiplexado entre ellos.
Sistems Operativos – 6ta. Edición
1.10
Silberschatz, Galvin y Gagne ©2002
Características de un Sistema Operativo con
Multiprogramación.
 Las rutinas para el manejo de los dispositvos de
entrada/salida son suministradas por el sistema
operativo.
 Administración de memoria – El sistema debe asignar la
memoria a varios trabajos.
 Planificación del CPU – El sistema debe seleccionar uno
entre varios trabajos para ser despachado al CPU.
 Asignación de dispositivos.
Sistems Operativos – 6ta. Edición
1.11
Silberschatz, Galvin y Gagne ©2002
Sistemas Operativos de Tiempo Compartido
Sistemas Interacitvos.
 El CPU es multiplexado entre varios trabajos que se mantienen en
la memoria y el almacenamiento secundario ( el CPU es asignado
a un trabajo unicamente si este se encuentra en memoria principal
). A cada trabajo se le asigna de manera secuencial una pequeña
ventana de tiempo para su ejecución ( ejemplo: 10 msegs. ).
 Un trabajo es intercambiado entre la memoria y la unidad de disco (
swap in, swap out ).
 Los sistemas interactivos permiten la comunicación en-línea entre
los usuarios y el sistema.
 Cuando el sistema operativo finaliza la ejecución de un comando,
busca el siguiente comando introducido por el usuario a través del
teclado.
 Los sistemas en-línea permiten el acceso por los usuarios a datos
y códigos en el sistema de manera interactiva. El multiplexado a
alta velocidad entre los trabajos permite la interacción sin
interrupción entre cada usuario y el CPU.
Sistems Operativos – 6ta. Edición
1.12
Silberschatz, Galvin y Gagne ©2002
Evolución de los Sistemas Operativos
Sistems Operativos – 6ta. Edición
1.13
Silberschatz, Galvin y Gagne ©2002
Sistemas para computadoras personales.
 Aparecieron en la década de los años 70.
 Computadora personal – sistema de computación dedicado a
un solo usuario.
 Dispositivos de entrada/salida – teclado, ratón, monitor,
impresora de baja capacidad.
 Están adaptados a la conveniencia de los usuarios.
 Adoptan tecnologías desarrolladas para grandes computadoras.
 Generalmente los usuarios no utilizan a plenitud los recursos
avanzados del CPU.
 Pueden mantener a diferentes sistemas operativos como
Windows, MacOs, UNIX, Linux.
Sistems Operativos – 6ta. Edición
1.14
Silberschatz, Galvin y Gagne ©2002
Sistemas Paralelos.
 Sistemas con más de un CPU estrechamente conectados.
 También conocidos como sistemas de multiprocesamiento.
 Sistemas fuertemente acoplados – los procesadores comparten
la memoria principal y el reloj. La comunicación entre los
procesadores generalmente se establece mediante memoria
compartida.
 Ventajas del multiprocesamiento:
 Mayor capacidad de procesamiento.
 Economía.
 Sistemas más estables.
 Degradacion suave. Un CPU puede fallar y el sistema continua
funcionando.
 Sistemas tolerantes a fallas.
Sistems Operativos – 6ta. Edición
1.15
Silberschatz, Galvin y Gagne ©2002
Sistemas Paralelos (Cont.)
 Multiprocesamiento asimétrico.
 A cada procesador se le asigna una tarea específica. Un
procesador maestro planifica y asigna trabajo a los
procesadores esclavos.
 Es más complejo que el SMP.
 Común en sistemas muy grandes.
 Multiprocesamiento simétrico (SMP)
 Cada procesador ejecuta una copia idéntica del sistema
operativo.
 Todos los procesadores están a un mismo nivel. No hay un
maestro ni esclavos.
 Es más sencillo que el asimétrico pero no equilibra tan
eficientemente las cargas en el CPU.
 La mayoría de los sistemas operativos modernos, soportan
SMP.
Sistems Operativos – 6ta. Edición
1.16
Silberschatz, Galvin y Gagne ©2002
Arquitectura del Multiprocesamiento
Simétrico.
Sistems Operativos – 6ta. Edición
1.17
Silberschatz, Galvin y Gagne ©2002
Sistemas de Tiempo Real
 Generalmente utilizados como dispositivos de control para
aplicaciones especializadas como experimentos científicos,
sistemas para procesamiento de imágenes, control industrial.
 Bien definidos tiempos de respuesta a eventos externos.
 Los sistemas operativos en tiempo real pueden ser estrictos o
suaves.
Sistems Operativos – 6ta. Edición
1.18
Silberschatz, Galvin y Gagne ©2002
Sistemas Operativos en Tiempo Real (Cont.)
 Tiempo real estricto:
 Sistemas secundarios de almacenamiento limitados o ausentes, los
datos se mantienen en memoria principal en algunos casos del tipo
de solo lectura ( ROM ).
 No son compatibles con sistemas de tiempo compartido.
 Tiempo real suave:
 De cierto uso en control industrial y robótica.
 Pueden coexistir con sistemas de tiempo compartido.
 Son útiles para aplicaciones mutlimedia, realidad virtual con
tiempos de respuesta estrictos.
Sistems Operativos – 6ta. Edición
1.19
Silberschatz, Galvin y Gagne ©2002
Sistemas Distribuidos
 Distribuyen el cómputo entre varios procesadores
conectados por un medio de red.
 Sistemas débilmente acoplados – cada procesador tiene
su propia memoria local, los procesadores se comunican
mediante varias líneas de comunicación tales como
líneas telefónicas, cables de cobre, fibra óptica u ondas
electromagnéticas.
 Ventajas de los sistemas distribuidos
 Compartir recursos.
 Compartir carga – aumenta la capacidad de procesamiento.
 Sistemas más confiables.
 Comunicaciones.
Sistems Operativos – 6ta. Edición
1.20
Silberschatz, Galvin y Gagne ©2002
Sistemas Distribuidos (cont)
 Requieren de una infraestructura de red.
 Pueden ser redes de área local ( LAN ) o redes de área
geográfica amplia ( WAN ).
 Pueden ser sistemas cliente/servidor o sistemas punto a
punto.
Sistems Operativos – 6ta. Edición
1.21
Silberschatz, Galvin y Gagne ©2002
Estructura General de Sistemas Cliente
– Servidor.
Sistems Operativos – 6ta. Edición
1.22
Silberschatz, Galvin y Gagne ©2002
Sistemas Portátiles
 Computadoras de bolsillo (PDAs).
 Teléfonos celulares.
 Características:
 Memoria limitada.
 Procesadores lentos.
 Pantallas pequeñas para presentación de datos.
Sistems Operativos – 6ta. Edición
1.23
Silberschatz, Galvin y Gagne ©2002
Ambientes de Computación
 Computación tradicional
 PCs, Servidores, acceso remoto limitado.
 Computacion basada en la Web.
 Cliente – servidor, servicios web, remoto acceso conveniente.
 Computación “Embedded”.
 Son los sistemas más numerosos ( controladores de combustión en
vehículos, microondas, teléfonos ).
 Capacidad muy limitada de los sistemas operativos.
 Interfaz con usuario limitada o inexistente, acceso remoto.
Sistems Operativos – 6ta. Edición
1.24
Silberschatz, Galvin y Gagne ©2002
Final de la sesión 1.
Sistems Operativos – 6ta. Edición
1.25
Silberschatz, Galvin y Gagne ©2002