Anda di halaman 1dari 40

Conceptos generales de Sistemas Operativos.

Introduccin: Qu es un sistema operativo?.


Componentes bsicos de un computador.
Conceptos claves de un sistema operativo.
El sistema operativo como administrador de recursos y como interfaz.
Evolucin histrica y tipos de sistemas.
Sistemas Operativos
Definicin
Un Sistema Operativo es un programa(s)
que acta como intermediario entre el
usuario y los componentes fsicos del
sistema (hardware).
El propsito principal del sistema operativo
es el de hacer conveniente y eficiente el
uso de los componentes fsicos.


Aplicacin
En informtica, una aplicacin es un tipo
de programa informtico diseado como
herramienta para permitir a un usuario realizar uno
o diversos tipos de trabajos. Esto lo diferencia
principalmente de otros tipos de programas como
los sistemas operativos (que hacen funcionar al
ordenador), las utilidades (que realizan tareas de
mantenimiento o de uso general), y los lenguajes
de programacin (con el cual se crean los
programas informticos).
http://es.wikipedia.org/wiki/Aplicaci%C3%B3n_inform%C3%A1tica
Los componentes bsicos de un sistema
Los components bsicos del Hardware
Los componentes bsicos del Hardware
Las siete capas del software
Trabajo de investigacin individual para prxima clase.
Diagrama de un Sistema Operativo
Qu es un sistema operativo?

Definicin de Sistema Operativo :

Principio de idealizacin:

Ve al Sistema Operativo como un conjunto de programas cuya misin es
ofrecer al usuario final de un computador la imagen de que sta es una
mquina sencilla de manejar, por muy difcil y complicado que sea el
hardware con el que se haya construido.


Administracin:
No desempea ninguna funcin por s slo.
Crea un entorno dentro del que otros programas pueden realizar un
trabajo til.

Qu es un sistema operativo?

Definicin de Sistema Operativo.

Objetivos:

Actuar de intermediario entre usuario y hardware.
Garantizar el funcionamiento correcto del computador.
Facilitar la tarea de programacin.
Administrar eficientemente los recursos de la mquina.

Propsito: creacin de un entorno cmodo y eficiente para poder
ejecutar programas.

Desarrollo: evolucin desde los primeros sistemas manuales hasta los
sistemas de multiprogramacin y de tiempo compartido.
Qu es un sistema operativo?

Definicin de Sistema Operativo:

Un sistema de computacin se divide en cuatro componentes principales:


Hardware: CPU, memoria y dispositivos de E/S

Sistema Operativo (software).

Programas de aplicacin, o de usuario: compiladores, Base de datos, (software).

Usuarios: usuarios, programadores, mquinas.


Qu es un sistema operativo?

Funciones del Sistema Operativo:

Como gestor de recursos:

Gestiona: tiempo de CPU, espacio de memoria, espacio de almacenamiento de
archivos y dispositivos de E/S.

Acta: rbitro que decide qu solicitudes atender cuando no pueden
satisfacerse todas simultneamente, asignando recursos de forma eficiente.

Como programa de control:

Controla: ejecucin de programas de usuarios para evitar errores o usos
incorrectos.

Conceptos claves de un sistema operativo.


Tipos de usuarios?

Usuario de rdenes / aplicaciones.
Usuario programador.
Usuario diseador / implementador.
Administrador del sistema.

Conceptos clave de un sistema operativo

Conceptos relacionados con el usuario de rdenes:

Usuario: elemento (persona, mquina) identificable por el sistema.

Sesin: conjunto de acciones desarrolladas por el usuario desde que entra
(login) hasta que sale (logout).

Programa: conjunto de instrucciones destinadas a resolver un problema.

Archivo: conjunto de datos relacionados guardados en almacenamiento no
perecedero.

Programa del sistema: acciones relacionadas con el Sistema Operativo.

Intrprete de rdenes o comandos: programa del sistema que recoge y manda
ejecutar las rdenes del usuario.

Conceptos clave de un sistema operativo

Conceptos relacionados con el usuario programador:


Llamadas al sistema: Mecanismo que utilizan los programas de aplicacin
para solicitar que el sistema operativo haga algo.

Niveles de ejecucin: Distintos modos de ejecucin del procesador, que
determinan que instrucciones se pueden ejecutar en cada momento. Los
programas de usuario se ejecutan en modo normal, mientras que el
cdigo del sistema operativo lo hace en modo privilegiado.
Conceptos clave de un sistema operativo


Conceptos relacionados con el usuario diseador (1):

Sistema de gestin de procesos: encargado de crear, eliminar, suspender,
reanudar, comunicar y sincronizar procesos.

Sistema de gestin de memoria: encargado de la memoria principal.
Controla particiones libres/ocupadas.
Asigna/libera espacios.
Llama a la memoria principal.

Sistema de gestin de E/S: encargado de los dispositivos de E/S. Permite su
comparticin ordenada, minimiza efectos de diferencia de velocidad,
uniformiza distintos dispositivos.
Conceptos clave de un sistema operativo


Conceptos relacionados con el usuario diseador (2):


Sistema de gestin de archivos: encargado de los archivos. Define:

Concepto y tipos de archivos.
Gestiona almacenamiento y operaciones.

Ncleo (kernel) del sistema operativo: programa individual que siempre est
cargado en memoria principal y que se est ejecutando permanentemente en
el computador.
Sistema operativo como administrador de recursos.

Sistema operativo como administrador de recursos:

rbitro eficiente que asigne recursos a los procesos:

Procesos: programas en ejecucin que compiten por el uso de recursos.
Recursos: reales o virtuales, fsicos o lgicos.

Permite saber:
Estado en que se encuentran los recursos.
Quin, cundo y durante cuanto tiempo tiene el control.
Asociar y desasociar recursos.
Sistema operativo como interfaz.

Capa entre usuario y hardware, que ofrece una mquina extendida que
es una abstraccin de la realidad y contra la que van los procesos.

Ventajas:

Comodidad: Mejor usabilidad para usuario y programador.
Portabilidad: Independencia con el hardware.
Evolucin histrica y tipos de sistemas.


Evolucin histrica (1):
1era. Generacin (1945 -1955):

Sistema operativo: Al principio es inexistente, hacia el final se constituye
como un conjunto de funciones de uso general.
Tecnologa: Tubos de vaco.
Introduccin de trabajo: A travs de panel de control.
Lenguaje: Lenguaje mquina.

2da. Generacin (1955 1965):

Sistema operativo: Monitor para cargar trabajos, ejecutarlos, ...
(procesamiento en serie). Posteriormente procesamiento por lotes.
Tecnologa: Transistores.
Introduccin de trabajo: Tarjetas perforadas.
Lenguaje: Cobol, Fortran

Evolucin histrica y tipos de sistemas.
Evolucin histrica (2):

3era. Generacin (1965 1975):

Sistema operativo: Multiprogramacin, tiempo compartido, sistemas en
tiempo real (OS/360,Multics, UNIX, ...).
Tecnologa: Circuitos integrados, mquinas multipropsito, miniordenadores.
Introduccin de trabajo: Tarjetas perforadas, terminales.
Lenguaje: Cobol, Fortran, ...

4ta. Generacin (1975 1990):

Sistema operativo: En red, cliente-servidor, seguridad (criptografa), (MacOS,
MS-DOS, Novell, ...)
Tecnologa: Circuitos integrados, ordenadores personales, redes de
ordenadores.
Introduccin de trabajo: Terminal

Evolucin histrica y tipos de sistemas.

Evolucin histrica (3):

5ta. Generacin (1990 actualidad):

Sistema Operativo: Distribuido, modelo cliente servidor en la construccin del
sistema.

Tecnologa: Circuitos integrados a gran escala (VLSI), ordenadores personales
potentes, estaciones de trabajo.

Orientacin de la evolucin:

Aumentar: Potencia, multipropsito, fiabilidad, n de usuarios, comodidad y
amigabilidad.

Disminuir: Precio, tamao, requisitos de instalacin, dificultad de uso, tiempo
de respuesta.
Evolucin histrica y tipos de sistemas.
Tipos de sistemas:


Primeros sistemas.
Sistemas por lotes.
Multiprogramacin.
Sistemas de tiempo compartido.
Sistemas de ordenadores personales.
Sistemas paralelos-multiprocesadores.
Sistemas distribuidos.
Sistemas de tiempo real.
Tendencias actuales y futuras en sistemas operativos.
Evolucin histrica y tipos de sistemas.

Tipos de sistemas (2):

Primeros sistemas:

Caracterizacin: Gran tamao y ejecucin desde panel de control.
Organizacin del trabajo:
Programador = Operador del sistema.
Un solo usuario en cada momento (tiempo asignado, reserva).
Operaciones: Carga manual del programa en la memoria (instruccin tras
instruccin), establecer inicio, activar ejecucin, vigilar ejecucin.
Mejoras:
Fsicas: lectores de tarjetas, impresoras y cintas magnticas.
Reutilizacin de cdigo: Bibliotecas de funciones comunes.
Desarrollo de ensambladores, compiladores y cargadores para facilitar las
tareas de programacin.
Drivers o subrutinas especiales para cada dispositivo de E/S.
Desventajas:
Mquina parada mucho tiempo por el modo de trabajo.
Error poda implicar comenzar de nuevo.
Evolucin histrica y tipos de sistemas.

Tipos de sistemas (3):

Sistemas por lotes:

Organizacin del trabajo:
Operador especialista, minimiza tiempos de preparacin.
Reduccin de tiempos por agrupamiento en lotes que se pueden ejecutar a
la vez.
Secuenciado automtico de trabajos: Transferencia automtica de control
entre un trabajo y el siguiente => Monitor Residente.

Monitor residente:
Realiza automticamente las acciones:
Control de la finalizacin de tareas.
Tratamiento de errores.
Carga y ejecucin automtica de la siguiente tarea.
Evolucin histrica y tipos de sistemas.
Tipos de sistemas (4):

Sistemas por lotes (2):

Tarjetas de control:
Para que el monitor residente sepa qu programa ejecutar (se
distinguen por $ de las tarjetas de instrucciones).

Organizacin de la memoria para un monitor residente:
Cargador, secuenciado de trabajos, intrprete de tarjetas.
Drivers para cargador e intrprete.
Ventaja: Eliminacin del tiempo de preparacin y del secuenciado
manual de trabajos.

Evolucin histrica y tipos de sistemas.
Tipos de sistemas (5):

Sistemas por lotes (3):

El problema de la E/S:

E/S muy lenta en comparacin con la CPU, lo que implica que la CPU queda
ociosa mucho tiempo esperando la terminacin de las operaciones de E/S.
Solucin: Introduccin de tecnologa de discos, lo que posibilita.

Operaciones fuera de lnea (off-line):
Independencia con el dispositivo, la CPU dialoga slo con dispositivos rpidos.
Uso de bferes:
Las transferencias de E/S se realizan a travs de una zona intermedia de memoria
y slo cuando el dispositivo est preparado.
Spooling:
Uso del disco como bfer de gran tamao, leyendo por adelantado de los
dispositivos de entrada, guardando la informacin y envindola a los dispositivos
de salida cuando stos estn disponibles.


Evolucin histrica y tipos de sistemas.
Tipos de sistemas (6):

Multiprogramacin:

Gracias al spooling (reserva de trabajos en el disco), el sistema operativo
escoge qu trabajo ejecutar a continuacin con el criterio de mejorar el
aprovechamiento de la CPU, planificacin de trabajos.

El aspecto ms importante de la planificacin es la multiprogramacin,
aumentando el aprovechamiento de la CPU.

Siempre habr varios trabajos en memoria, el sistema operativo escoger de
entre ellos y lo ejecutar, de tal forma que siempre haya un trabajo en
ejecucin.


Evolucin histrica y tipos de sistemas.

Tipos de sistemas (7):

Multiprogramacin (2):

Caractersticas de la multiprogramacin:
Si un proceso se bloquea, esperando por la E/S, en la CPU ejecutamos
instrucciones de otro proceso.

Ejecucin entrelazada de procesos: concurrencia.

Mayor rendimiento, finalizacin de ms trabajos en menos tiempo.


Evolucin histrica y tipos de sistemas.
Tipos de sistemas (8):

Multiprogramacin (3):

Mayor complejidad de los Sistemas multiprogramados:

Planificacin de la CPU: Qu proceso elegimos al quedar libre la CPU.

Planificacin de dispositivos: Conflictos por acceso simultneo a la E/S.

Gestin de memoria: Decisiones de carga en memoria entre varios trabajos
que estn listos para subirse.

Situaciones de interbloqueo: Entre procesos por los recursos.

Proteccin.
Evolucin histrica y tipos de sistemas.

Tipos de sistemas (9):

Sistemas de tiempo compartido:

Por qu surgen?: Con la multiprogramacin los recursos del sistema se
aprovechan eficientemente, sin embargo, para el usuario,
No puede interactuar con el trabajo durante su ejecucin.
Depuracin de programas esttica.
Solucin: sistemas multitarea (o interactivos), ms apropiados para trabajos
de muchas acciones cortas, donde el usuario introduce una orden y espera,
por tanto, interesa un tiempo de respuesta corto.
Desventaja: Perdemos productividad de la CPU.
Ventajas: Interaccin usuario-sistema e ilusin de que cada usuario tiene su
ordenador particular.

Evolucin histrica y tipos de sistemas.

Tipos de sistemas (10):

Mayor complejidad de los sistemas de tiempo compartido:

Gestin y proteccin de memoria: Mantenimiento simultneo de varios
trabajos en la memoria.
Memoria virtual: Tiempo de respuesta razonable intercambiando trabajos
entre memoria y disco.
Sistema de archivos en lnea: Coleccin de discos, sistema de gestin de
discos.
Planificacin de CPU: Mecanismos de ejecucin concurrente.
Mecanismos de sincronizacin y comunicacin:
Evitando interbloqueos.

Evolucin histrica y tipos de sistemas.

Tipos de sistemas (11):

Ordenadores personales:

Aparicin a finales de los 70 debido a:

Abaratamiento de coste.
Microprocesadores, reduccin de tamao.
Destinados al uso individual y no experto.
Interfaces de usuario amigables: ventanas, iconos, mens,...
Prescinden de ciertas funciones, como proteccin de la
CPU (sistemas no multiusuario y no multitarea).
Objetivos: Facilidad y comodidad de uso y rapidez de respuesta.
Evolucin histrica y tipos de sistemas.

Tipos de sistemas (12):

Sistemas paralelos multiprocesadores:

Varios procesadores en comunicacin (enlazados), compartiendo el bus del
computador, el reloj, la memoria y los perifricos.

Ventajas:
Pueden ejecutar varias instrucciones simultneamente (en paralelo).
Aumento del rendimiento (ms trabajos en menos tiempo).
Comparticin de perifricos y fuentes de potencia.
Tolerancia a fallos (degradacin gradual).

Desventaja: Sincronizacin entre procesos.
Tipos de multiprocesamiento:
Simtrico: Cada procesador ejecuta una copia idntica del sistema.
Asimtrico: A cada procesador se le asigna una tarea especfica.

Evolucin histrica y tipos de sistemas.

Tipos de sistemas (13):

Sistemas distribuidos:

Caractersticas:

El cmputo se reparte entre varios procesadores conectados mediante una
red.
Cada procesador tiene su propia memoria local, enlazados, ahora no
comparten memoria ni reloj.
Comunicacin entre procesadores a travs de lneas de comunicacin, buses
de alta velocidad o lneas telefnicas.
Procesadores de distintos tamaos y funciones.
Escalable hasta millones de procesadores (internet).

Evolucin histrica y tipos de sistemas.

Tipos de sistemas (14):

Sistemas distribuidos (2):

Ventajas:

Recursos compartidos: accesos remotos, comparticin de archivos, informacin
de DB distribuidas,...
Computacin ms rpida: carga de trabajo compartida.
Fiabilidad: tolerancia a fallos por redundancia.
Comunicacin: redes de comunicacin.

Desventajas:

Comunicacin compleja al no compartir memoria.
Redes de comunicacin no fiable.
Diversidad de los nodos.


Evolucin histrica y tipos de sistemas.

Tipos de sistemas (15):

Sistemas de tiempo real:

Para ejecucin de tareas que han de completarse en un plazo prefijado (sistemas
de control industrial, multimedia, cientficos, mdicos, ...)

Pueden ser de dos tipos:

Crticos: Tareas que exigen el cumplimento de plazos de finalizacin, tienen pocos
recursos disponibles los datos se almacenan en memoria de corto plazo o ROM.
Incompatibles con los sistemas de tiempo compartido. Adecuados para la
industria y la robtica.

No crticos: Ejecucin por prioridades. No cumplimiento estricto de plazos.
Adecuados en multimedia, realidad virtual y proyectos cientficos avanzados de
exploracin submarina y planetaria.

Evolucin histrica y tipos de sistemas.

Tipos de sistemas (16):

Tendencias actuales y futuras en sistemas operativos:

Paralelismo:
Incremento de multiprocesadores.
Extensin de lenguajes paralelos.

Computacin distribuida: Incremento de redes de ordenadores conectados.

Sistemas tolerantes a fallos.

Interfaces de usuario ms amigables:
Desarrollo de interfaces grficas.
Incorporacin de multimedia a las interfaces.
Reconocimiento del habla.
Inmersin en el entorno: realidad virtual 3D

Evolucin histrica y tipos de sistemas.

Tipos de sistemas (17):

Tendencias actuales y futuras en sistemas operativos:

Sistemas abiertos: estandarizacin de sistemas para compatibilizar los distintos
fabricantes a nivel de:
Comunicaciones de red.
Interfaces de usuario abiertas.
Aplicaciones abiertas (varias plataformas).
Sistemas orientados a objeto: aplicacin de tcnicas de orientacin a objetos a
los sistemas operativos.
Personalidades mltiples: en una misma mquina y un sistema operativo bsico
pueden existir diferentes Sistemas Operativos.
Microncleos: Los sistemas operativos microncleo proveen un conjunto de
llamadas mnimas al sistema, para implementar servicios bsicos como lo son
espacios de direcciones, comunicacin entre procesos y planificacin bsica,
en la cual el microncleo es el que planifica todo el cdigo que corre en el
sistema.