Beruflich Dokumente
Kultur Dokumente
FUNDAMENTACION
Esta asignatura tiene relacin directa con el funcionamiento de los programas de aplicacin (Sistemas) desarrollado por un
equipo informtico, dicho sistema debe utilizarse en varias Pcs y para ello es necesario una plataforma, la eleccin adecuada depende de las caractersticas del sistema, as como la herramienta utilizada para el desarrollo y la arquitectura del mismo, de ah la importancia de esta asignatura.
OBJETIVOS ESPECIFICOS
Comprender los conceptos bsicos de los sistemas operativos.
Aprender el funcionamiento bsico de los
diferentes sistemas operativos. Utilizar en forma correcta y prctica los conceptos y herramientas de los sistemas operativos. Desarrollar habilidades para la utilizacin correcta de algunos sistemas operativos.
CONTENIDO PROGRAMATICO
Qu es un Sistema Operativo? Historia de los Sistemas Operativos Conceptos Bsicos Llamadas a los sistemas Estructuras de los sistemas PROCESOS ENTRADA/ SALIDA ADMINISTRACION DE MEMORIA SISTEMAS DE ARCHIVOS BLOQUEOS SISTEMAS DE ESTUDIOS SISTEMAS DISTRIBUIDOS
Bibliografa
SILBERSCHATZ, Abraham; GALVIN, Peter: Sistemas Operativos
Prentice-Hall, 1998.
TANENBAUM, Andrew; WOODHULL, Albert: Sistemas Operativos:
UNIDAD I
Hardware
Sistema Operativo
Los
programas
hacen
que
el
Libreras Utilitarios
Interface
Gestionar el hardware
Una biblioteca de funciones (funciones preprogramadas para realizar tareas ms comunes). La finalidad es que el usuario se ahorre el trabajo de
11
Como el desarrollo de los sistemas operativos est muy relacionado con el desarrollo de las arquitecturas de las
12
Sistema Operativo
Historia
Aos 40.- A finales de los aos 40, con la primera
generacin de computadoras, se acceda directamente a la consola de la computadora desde la cual se actuaba sobre una serie de micro interruptores que permitan introducir directamente el programa en la memoria de la computadora.
Sistema Operativo
Historia
Aos 50.- A principios de los aos 50 con el objeto
de facilitar la interaccin entre persona y computador, los sistemas operativos hacen una aparicin discreta y bastante simple, con conceptos tales como el monitor residente, el proceso por lotes y el almacenamiento temporal.
Sistema Operativo
Historia
Aos 60.- En los aos 60 se produjeron cambios
notorios en varios campos de la informtica, con la aparicin del circuito cerrado la mayora orientados a seguir incrementando el potencial de los computadores. Para ello se utilizaban tcnicas de lo ms diversas:
Multiprogramacin Tiempo compartido Tiempo real Multiprocesador
Sistema Operativo
Historia
Aos 60.- En los aos 60 se produjeron cambios
notorios en varios campos de la informtica, con la aparicin del circuito cerrado la mayora orientados a seguir incrementando el potencial de los computadores. Para ello se utilizaban tcnicas de lo ms diversas:
Multiprogramacin Tiempo compartido Tiempo real Multiprocesador
Sistema Operativo
Historia
Aos
70.- Es en los aos 70, se cre especficamente para re-escribir por completo el cdigo del sistema operativo Unix, convirtindolo en uno de los pocos SO escritos en un lenguaje de alto nivel.
Sistema Operativo
Sistemas operativos desarrollados:
MULTICS (Multiplexed Information and Computing Service):
proyecto cooperativo liderado por Fernando Corbato del MIT, con General Electric y los laboratorios Bell, los laboratorios Bell lo abandonaron en 1969 para comenzar a crear el sistema UNIX. MVS (Multiple Virtual Storage): Fue el sistema operativo ms usado en los modelos de mainframes , desarrollado tambin por IBM y lanzado al mercado por primera vez en 1974. Permita ejecucin de mltiples tareas, introdujo el concepto de memoria virtual. CP/M (Control Program/Monitor): Desarrollado por Gary Kildall para el microprocesador8080/85 de Intel y el Zilog Z80, sali al mercado en 1976, distribuyndose en disquetes de ocho pulgadas. Fue el SO ms usado en las computadoras personales de esta dcada. Su xito se debi a que era porttil.
Sistema Operativo
Aos 80.- Un avance importante que se estableci a
mediados de 1980 fue el desarrollo de redes de PC que corran sistemas operativos en red y sistemas operativos distribuidos. En esta escena, dos sistemas operativos eran los mayoritarios: MS-DOS, escrito por Microsoft para IBM PC y otras computadoras que utilizaban la CPU Intel 8088 y sus sucesores, y UNIX, que dominaba en los ordenadores personales que hacan uso del Motorola 68000.
Sistema Operativo
MS-DOS .-En 1981 Microsoft compr un sistema
operativo llamado QDOS que, tras realizar unas pocas modificaciones, se convirti en la primera versin de MSDOS (Microsoft Disk Operating System).
Sistema Operativo
Aos 90 GNU/Linux.- En 1991 aparece la primera versin del ncleo de Linux. Creado por Linus Torvalds y un sinfn de colaboradores a travs de Internet. Este sistema se basa en Unix, un sistema que en principio trabajaba en modo comandos, estilo MS-DOS.
La tecnologa era de Tubos al vaco y la programacin era en lenguaje de mquina. Los recursos del sistema eran asignados a una sola tarea, no era posible realizar tareas simultneamente. En el ltimo tiempo de esta generacin aparecen las tarjetas perforadas.
22
En esta generacin la tecnologa incluye a los transistores. La programacin se ve apoyada por la creacin de lenguajes ensambladores y lenguajes de alto nivel como Fortran y COBOL. Para optimizar el tiempo de utilizacin de la mquina se adopt el Procesamiento por lotes.
Para hacer la transferencia de los datos entre la computadora y la cinta se construy un programa que se conoce como el primer sistema operativo, que minimiz el tiempo ocioso de las computadoras.
23
En esta generacin la tecnologa corresponde a los circuitos integrados, que permiti construir mquinas ms baratas y con mejor rendimiento. En esta generacin aparecen los sistemas operativos con multiprogramacin. Tambin aparece la tcnica de Spooling (Operacin simultnea y en lnea de perifricos). A medida que hay espacio en memoria se puede pasar al siguiente trabajo. Aparecen los primeros sistemas de Tiempo Compartido. Se le asigna a cada proceso un tiempo fijo de utilizacin de CPU.
24
x)
Con el crecimiento de las redes de computadoras nacen los sistemas operativos de red y sistemas operativos distribuidos. En los sistemas operativos de red cada computa-dora tiene su propio sistema operativo, pero pueden compartir recursos.
En los sistemas operativos distribuidos hay una integracin real de los recursos, la red es transparente a los usuarios, es decir los usuarios no necesaria-mente se dan cuenta que hay otras mquinas co-nectadas a la red.
25
Ejecuta trabajos por lotes. El CPU en las esperas de entradas/salidas no hace nada. Ejemplos: SCOPE y UNIVAC 1107.
Operaciones de entrada/salida
Procesador: elemento de produccin del proceso de datos Las operaciones de E/S son varias rdenes de magnitud ms lentas que las instrucciones del procesador.
Para un procesador de 1 MIPS (un milln de instrucciones por segundo) las equivalencias aproximadas seran:
Leer un registro en el disco instrucciones. (a 25 ms) equivale a 25.000
Grabar un sector de diskette (a 200 ms) equivale a 200.000 instrucciones. Imprimir una lnea de 80 caracteres (a 200 cps) equivale a 400.000 instrucciones.
26
La multiprogramacin es una tcnica que intenta incrementar la utilizacin del CPU tratando de tener siempre algo para que el CPU lo ejecute, se reparte el procesador entre mltiples procesos aprovechando los tiempos de espera de E/S. El sistema operativo selecciona un proceso y lo comienza a eje-cutar, si hay una espera por E/S el sistema operativo seleccionar otro proceso y lo ejecutar. Cuando el primer proceso termine su espera obtendr CPU nuevamente. Cada proceso est ejecutndose o en espera de completar una operacin de E/S. Siempre se ejecuta un proceso por vez (o tantos como procesadores tenga la computadora). Ejemplos: Windows 95 y 98, OS/2.
27
Utiliza calendarizacin de CPU y multiprogramacin para proporcionar a cada usuario una pequea porcin de una computadora de tiempo compartido. La computadora atiende a cada usuario durante un tiempo determinado o quantum, cambiando rpidamente de usuario a usuario, dndoles la impresin de que cada uno de ellos tiene el control absoluto de la computadora, mientras que en realidad es compartida entre muchos usuarios. As como en sistemas batch se ejecutaban trabajos, aqu se ejecutan programas de usuarios. Ejemplos: Unix, Linux y Windows NT.
28
Tiempo Compartido
Terminal
Procesador
Terminal
Terminal
29
Tiempo real
Es una modalidad de multiprogramacin, en la que se necesita pequeos tiempos de respuesta ante cualquier peticin. Ejemplo: Solaris. Caractersticas Principales:
30
A
B
Monoprogramacin
P r o c e s a d o r
Tiempo de proceso
P R O C E S O S
t1
Multiprogramacin
Tiempo de proceso
t2
31
t1 = t2
A B
P R O C E S O S
4 Procesadores
Multiproceso
t3
Tiempo de proceso
t3< t1 t3 < t2
32
Sistema Operativo
Concepto
Es un programa o conjunto de programas de
computador, y gestiona el hardware de la mquina desde los niveles ms bsicos, permitiendo tambin la interaccin con el usuario.
Funciones bsicas
Proporcionar comodidad en el uso de un
computador. Gestionar de manera eficiente los recursos del equipo, ejecutando servicios para los procesos (programas) Brindar una interfaz al usuario, ejecutando instrucciones (comandos). Permitir que los cambios debidos al desarrollo del propio SO se puedan realizar sin interferir con los servicios que ya se prestaban (evolutividad).
Interfaces de usuario
Es la parte del sistema operativo que permite
comunicarse con l de tal manera que se puedan cargar programas, acceder archivos y realizar otras tareas.
Administracin de usuario
Manejo de recursos
Sistema Operativo
Tipos Existen diversos tipos de Sistemas operativos entre estos se encuentran: Sistemas Operativos de multiprogramacin (o Sistemas Operativos de multitarea). Sistemas Operativos distribuidos. Sistemas Operativos de red.
Sistema Operativo
Sistemas Operativos de multiprogramacin (o Sistemas
Operativos de multitarea).
usuarios individuales.
Requieren validacin de usuario para seguridad y
proteccin.
Sistemas Operativos como UNIX, Windows 95, Windows 98,
Sistema Operativo
Sistemas Operativos de multiprogramacin (o Sistemas Operativos de multitarea).
Se distinguen por sus habilidades para poder
soportar la ejecucin de dos o ms trabajos activos al mismo tiempo. Mejora productividad del sistema y utilizacin de recursos.
Generalmente soportan mltiples usuarios
(multiusuarios).
Sistema Operativo
Sistemas Operativos distribuidos
Objetivo clave es la transparencia. Generalmente proporcionan medios para la
distribuidos que existen tenemos los siguientes: Sprite, Solaris-MC, Mach, Chorus, Spring, Amoeba, Taos, etc.
Sistema Operativo
Sistemas Operativos distribuidos
Permiten distribuir trabajos, tareas o procesos,
entre un conjunto de procesadores. Puede ser que este conjunto de procesadores est en un equipo o en diferentes, en este caso es transparente para el usuario. Coleccin de sistemas autnomos capaces de comunicacin y cooperacin mediante interconexiones hardware y software
Sistema Operativo
Sistemas Operativos de red Son aquellos sistemas que mantienen a dos o ms computadoras unidas a travs de algn medio de comunicacin (fsico o no), con el objetivo primordial de poder compartir los diferentes recursos y la informacin del sistema.
El primer Sistema Operativo de red estaba enfocado a equipos con
un procesador Motorola 68000, pasando posteriormente a procesadores Intel como Novell Netware.
Los Sistemas Operativos de red mas ampliamente usados son:
Novell Netware, Personal Netware, LAN Manager, Windows NT Server, UNIX, LANtastic.
Requisitos de usuarios: sistema fcil de usar y de aprender, seguro, rpido y adecuado al uso que se le
quiere destinar.
2.
Requisitos del Software: se engloban aspectos para el mantenimiento, forma de operacin, restricciones de uso,
43
En esta clasificacin se tiene en cuenta al nmero de usuarios, la cantidad de tareas que atiende y al nmero de procesadores del servidor
cios. Aqu se refiere a una visin desde el punto de vista del usuario, a como el accede a los servicios.
44
Es la estructura de los primeros sistemas operativos, constitudos generalmente por un solo programa compuesto de un conjunto de mdulos entrelazados, de manera que cada uno puede llamar a otro. Carecen de protecciones y privilegios al entrar a rutinas que manejan los distintos recursos.
45
Al perfeccionarse los sistemas operativos fue necesario organizar el software, donde una parte contena subpartes y esto est organizada en forma de niveles. Se dividi el sistema operativo en pequeas partes, de tal forma que cada una de ellas estuviera bien definida y con una clara interface con los otros elementos.
Capa 5 Capa 4 Capa 3 Capa 2 Capa 1 Capa 0 Programas de los Usuario Buffers para dispositivos Entrada/Salida Manejador de consola del operador Administracin de Memoria Gestin CPU Hardware
Sistema Jerrquico
46
47
UNIX
MS-DOS
Hardware Virtual
Hardware Virtual
Hardware
48
Proceso Cliente
Proceso Cliente
..........
Modo de Usuario
49
Monotareas
Multitareas
50
putadoras por medio de un medio de transmisin con el objeto de compartir y transferir archivos, y compartir recursos.
servicios de los de red, pero integrando a los recursos en una sola mquina virtual que el usuario accede en forma transparente.
51
Evitar cuellos de botella que afectan el rendimiento. Mantener todos los componentes lo ms ocupados posible, es decir, Administracin de los recursos. El usuario cuesta ms que la mquina (Hombre=inteligencia). Funcionar lo ms eficiente posible. Los sistemas son crticos, pero deben ordenar accesos y conflictos. Un sistema fallado puede significar una compaa fallada.
Disponibilidad y Confiabilidad
52
Ejecucin de programas El sistema deber estar habilitado para cargar un programa en la memoria y ejecutarlo. Operaciones de Entrada/Salida El sistema debe proveer los mecanismos necesarios para realizarlas. Manejo de Sistemas de Archivos Los Sistemas de Archivos permiten el almacenamiento de la informacin en forma estructurada, utilizando dispositivos de almacenamiento secundario.
53
Asignacin de Recursos Cuando existen mltiples usuarios ejecutando mltiples tareas al mismo tiempo, los recursos deben ser asignados para que cada tarea satisfaga sus requerimientos de ellos. Administracin de los Procesos Crear y Destruir procesos. Suspender y reanudar procesos. Proveer mecanismos para la sincronizacin de procesos. Proveer mecanismos para la comunicacin entre proce-sos. Administracin de Memoria Asignar y desasignar espacio de memoria cuando se requiera. Mantener informacin de los procesos en memoria y sus propietarios.
54