Sei sulla pagina 1di 33

Tema 1: Bibliografa e

Introduccin a los S.O.

Profesora: Aida de Haro Garca

Asignatura: Sistemas Operativos

Curso: 2 Graduado Ingeniera Informtica

Departamento de Informtica y Anlisis Numrico

Sistemas Operativos

Contenidos

Bibliografa
Introduccin
Dos visiones del S.O.
Evolucin de los S.O.
Conceptos bsicos de los S.O.
Estructuras de los S.O.
Componentes del S.O.

Sistemas Operativos

Bibliografa
1. W. Stallings, Sistemas operativos, 2ed, Prentice Hall, Madrid, 1996
2. John OGorman, Operating systems with Linux, Palgrave, Houndmills,
2001
3. G. Nutt, Kernel projects for Linux, Addison Wesley, Boston, 2001
4. A. S. Tanenbaum, Sistemas operativos modernos, Prentice Hall, Madrid,
1993
5. H. M. Deitel, Sistemas operativos, 2ed, Addison Wesley, 1993
6. M. J. Bach, The design of the UNIX operating system, Prentice Hall
Software Series, Englewood Cliffs, NJ, 1986
7. K. A. Robbins, S. Robbins, UNIX Programacin prctica, Prentice Hall,
Mxico, 1997
8. G. R. Andrews, Foundations of multithreaded, parallel, and distributed
programming, Addison Wesley, Reading, 2000
Sistemas Operativos

Introduccin

El hardware de un ordenador es una mquina capaz de


llevar a cabo multitud de tareas tiles
El software lo convierte en algo til

El software ms importante es el sistema operativo cuya


misin es la de controlar todo el ordenador

1 funcin del sistema operativo es la de crear una


mquina virtual: programador tenga una visin
simplificada del computador y abstraerse de
particularidades hardware

Sistemas Operativos

Introduccin

Estructura en capas de un
sistema informtico:

3 primeras capas:
hardware

Microprograma: intrprete entre hardware y lenguaje


mquina (operaciones elementales)
Los programas del S.O., a diferencia del resto se
ejecutan en modo ncleo, y estn protegido mediante
hardware contra la alteracin por parte de los usuarios

Sistemas Operativos

Dos visiones del sistema operativo

Mquina extendida: versin simplificada de la


mquina, aisla al usuario de las particularidades fsicas
del equipo

Complejidad de gestionar el hardware y ocuparse de


todos los detalles
Evita:

Diseo de programas
diferentes para cada
mquina (distinto hw.)
Daos por error de
programadores al
acceder a disp. fsicos
Sistemas Operativos

Dos visiones del sistema operativo

Controlador de recursos: controla los muchos recursos


requeridos por diferentes usuarios con distintas
necesidades (discos, memoria, procesadores, impresoras,
etc)

Objetivo: ptimo control de recursos para operacin


ptima del sistema, mediante:

Reparto de recursos
Proteccin de recursos asignados a cada usuario

Sistemas Operativos

Evolucin de los
sistemas operativos

Los S.O. han evolucionando junto a los avances en el


hardware. Estrecha relacin con las generaciones
hardware
Primera generacin (1945-1955)

Primeros equipos aparecen a finales de la 2 G. Mundial

Enormes mquinas de tubos de vaco

El mismo equipo diseaba, construa, programaba y


mantena el ordenador

Sistemas Operativos

Evolucin de los
sistemas operativos

No se puede hablar de sistema operativo

Programacin fsica: modificando el cableado por cada


operacin diferente
Tarjetas perforadas: a principios de los 50, se escriban
los programas en las tarjetas

Segunda generacin (1955-1965)

Aparicin del transistor

Ordenadores fiables y algo menos costosos

Aparece el 1er. lenguaje de programacin: FORTRAN


Sistemas Operativos

Evolucin de los
sistemas operativos

Procesamiento por lotes. Secuencia ejecutar una tarea:

El programador escribe su programa en FORTRAN y


perfora las tarjetas necesarias para representarlo
Lector de tarjetas conectado a un equipo de pequea
capacidad y coste: pasa el programa a una cinta magntica
Cuando esta cinta est llena (trabajos de varios usuarios)
es llevada a la mquina ms potente, que ejecuta el
programa
Resultados fuera de lnea: Salida se almacena en un
segunda cinta que equipo pequeo imprime

Sistemas Operativos

10

Evolucin de los
sistemas operativos

Conclusiones: Equipo de coste elevado:

Maximiza su productividad
Tiene una idea bsica de S.O. :
Controla el inicio y fin de los trabajos
La lectura de datos
La escritura de resultados, etc.

Sistemas Operativos

11

Evolucin de los
sistemas operativos

Tercera generacin (1965-1980)

Aparicin de los circuitos integrados

IBM crea la familia sistema/360 de amplia funcionalidad:

Computacin cientfica a gran escala


Computacin comercial
Problema: software compatible para mquinas diferentes,
(objetivos, configuraciones y capacidades)

OS/360 enormemente complejo


Otros fabricantes sacaron similares

Sistemas Operativos

12

Evolucin de los
sistemas operativos

Conceptos introducidos:

Multiprogramacin:

Desaprovechamiento de CPU: detena en espera de una


operacin E/S
Divisin memoria en varias partes y se asigna cada una
de ellas a un proceso
Cuando proceso en ejecucin se detiene, la CPU ejecuta
otro de los proceso en memoria
Necesidad hardware especial para proteger cada trabajo
del resto

Sistemas Operativos

13

Evolucin de los
sistemas operativos

Spooling:

Capacidad de leer trabajos y almacenarlos en el


disco
Cuando trabajo conclua, se carga uno nuevo en la
particin vaca
Igual mtodo para las salidas

Tiempo compartido:

Cada usuario tiene una terminal en lnea, apariencia de


sistema interactivo:
El sistema reparte el servicio entre todos los usuarios
(invierten la mayor parte del tiempo en tareas que no
necesitan mucho tiempo de CPU)
CTSS del MIT
Sistemas Operativos

14

Evolucin de los
sistemas operativos

Tiempo compartido:

Sistema MULTICS:
Proyecto de gran ordenador que diera servicio a
cualquier usuario dentro de una ciudad
Gran influencia S.O. pero fracas
Uno de los cientficos de MULTICS, desarrollo juego de
naves especiales que necesitaba nuevo S.O.: UNICS

Sistemas Operativos

15

Evolucin de los
sistemas operativos

Cuarta generacin (1980-1996)

Aparicin de la tecnologa LSI y VLSI

Parecida arquitectura pero disminucin brutal del precio

S.O. orientados a usuarios no expertos

Sistemas Operativos

16

Evolucin de los
sistemas operativos

Innovaciones:

S.O. en red:
Usuarios son conscientes de la existencia de una red
Se conectan a mquinas remotas y mueven
informacin entre ellas
Cada equipo ejecuta su propio S.O. y tiene su propio
grupo de usuarios
No difiere en exceso de sistema tradicional: software
control de red
Sistema operativo distribuido:
Usuario trata sistema como si monoprocesador
tradicional, sin preocuparse de estructura y situacin
Control complejo
Sistemas Operativos

17

Conceptos bsicos de S.O.

Procesos: programa en ejecucin

Consta de: cdigo ejecutable, datos, contadores,


registros...
Entrada en tabla de procesos: caracterizacin estado
(identificacin y estado)

PID (16 32 bits)


Archivos abiertos
Memoria asignada
Registros estado

Sistemas Operativos

18

Conceptos bsicos de S.O.

Archivos: unidad lgica mnima de informacin

Para usuario: serie consecutiva de bytes con informacin


relacionada
Gestin almacenamiento fsico se deja al S.O.

Facilitar gestin dispositivos fsicos: asociar archivos a


los dispositivos fsicos (ej UNIX disco duro: /dev/hda )

Todos los archivos comparten mismo espacio fsico

Necesarios mecanismos de proteccin (acceso y


destruccin)

Sistemas Operativos

19

Conceptos bsicos de S.O.

Llamadas al sistema: para comunicar procesos con S.O.


1.Comunicacin con el hardware
2.Administracin de los recursos
Crea mquina extendida: funcionamiento transparente al
usuario

Ejemplo ejecucin nuevo programa:

execve(monitor, argv, envp)


Incluye una llamada trap al S.O.
Se pasa el control al S.O. que ejecuta acciones (si permisos)
Devuelve el control a la rutina de biblioteca, que comprueba
los resultados
El usuario recibe resultados de forma transparente
Sistemas Operativos

20

Estructuras de los
Sistemas Operativos

Sistemas monolticos

La peor y ms extendida, no tiene estructura definida


Cdigo espagueti: procedimientos que resuelven tareas
especficas se llaman unos a otros
No hay ocultacin de informacin: todo procedimiento es
visible al resto que forman el S.O.
Inconvenientes programas no estructurados:
depuracin, mantenimiento, actualizacin
Ejemplos: MS-DOS, UNIX

Sistemas Operativos

21

Estructuras de los
Sistemas Operativos

Organizacin en 3 niveles:

Programa principal

Procedimientos de servicio

Atiende las llamadas de


los programas de usuario
Invoca el procedimiento de servicio adecuado
Hacen las llamadas al sistema
Hay un proced. de servicio por cada llamada al sistema

Procedimientos de ms bajo nivel

Son invocados por las rutinas de servicio


Ayudan a la ejecucin de los procedimientos de servicio
Sistemas Operativos

22

Estructuras de los
Sistemas Operativos

Sistemas en capas

The operator

User programs

Input/output management

Capa 0: asignacin e

Operator-process communication

intercambio de procesos

Memory management

Processor allocation and


multiprogramming

THE por E.W. Dijkstra

Layer Function

1er. sistema en capas (6)

Todo lo referente a la
multiprogramacin

Capa 1: gestiona la asignacin de memoria a cada proceso y


de los intercambios con la secundaria

Capa 2: comunica cada proceso con la consola del operador

Capa 3: controla los dispositivos de E/S


Sistemas Operativos

23

Estructuras de los
Sistemas Operativos

Capa 4: programas de usuario

Aislados de resto de capas

Capa 5: proceso operador del


sistema

Ejemplos: THE, Venus, Windows server

MULTICS se estructura en capas concntricas:

Capas interiores dedicadas a los procesos privilegiados


Capas exteriores los procesos de usuario
Llamadas de tipo trap: comunican con procedimientos
internos
Sistemas Operativos

24

Estructuras de los
Sistemas Operativos

Mquinas virtuales

Permite multiprogramacin pero sin mquina extendida

Crea un monitor de mquina virtual que ejecuta sobre hw.

Adems, crea maquinas virtuales (reproducen el hw.)

Cada usuario ejecuta su propio S.O.

Las llamadas al sistema se capturan por el S.O. y se


mandan al monitor que la lleva a cabo
Ejemplos: VM/370
de IBM con CMS,
VMWARE, VirtualBox
Sistemas Operativos

25

Estructuras de los
Sistemas Operativos

Modelo cliente-servidor

Ncleo mnimo ->


Se traslada cdigo del S.O. al usuario

Proceso cliente solicita servicio

Proceso servidor presta el servicio y devuelve el resultado

El S.O. slo se encarga de la comunicacin cliente-servidor

Las tareas crticas que no se pueden prestar en modo usuario:


trasladar servidores crticos al ncleo o crear mecanismos
dentro del ncleo para ejecutarlas (decisin servidor)
Adaptacin sencilla a sist. distribuidos (Mach, Chorus)
Sistemas Operativos

26

Componentes del sistema

Pese a la variabilidad entre sistemas...

Mdulos comunes e independientes

Funciones del S.O.

Administrador de procesos

Administrador de memoria principal

Administrador de almacenamiento secundario

Administrador del sistema de E/S

Administrador de archivos

Sistema de proteccin

Administrador de redes
Sistemas Operativos

27

Componentes del sistema

Administrador de procesos:
Controla la ejecucin concurrente de procesos (usuario y
sistema). Determina rendimiento del sistema
Funciones:

Info sobre los procesos: tabla de procesos

Crear y eliminar

Suspender, apropiar y reanudar

Sincronizar y planificar

Comunicacin entre procesos

Evitar interbloqueos
Sistemas Operativos

28

Componentes del sistema

Administrador de la memoria principal

Poltica de reparto de espacio de memoria entre procesos

Crea un espacio de direcciones virtuales (> fsica real)

Funciones:

Controlar la relacin entre el espacio de direcciones virtual


y el almacenamiento real

Planificar qu procesos sern cargados en memoria

Asignar y recuperar (terminados o apropiados) espacio

Proteger las zonas de memoria ocupadas (cules y por cul


proceso)
Sistemas Operativos

29

Componentes del sistema

Administrador de almacenamiento secundario


Mayora de datos en almacenamiento secundario hasta que
se requieren en principal

Se encarga de la administracin fsica del almacenamiento

Funciones:

Administracin del espacio libre

Optimizacin de las operaciones sobre disco

Sistemas Operativos

30

Componentes del sistema

Administrador del sistema de E/S

Creacin de una mquina extendida

Slo manejador del dispositivo conozca las particularidades


del hardware de E/S

Funciones:

Gestin de cach con los dispositivos de E/S (un sistema de


memoria temporal intermedia)
Creacin de un interfaz general con los controladores de
dispositivos (acceso uniforme)
Creacin controladores especficos para cada perifrico
Sistemas Operativos

31

Componentes del sistema

Administrador de archivos

Gestin del almacenamiento secundario a nivel lgico

Estructura directorios tipo rbol, unidad lgica es archivo

Equilibrio entre rapidez y aprovechamiento

Funciones:

Relacin entre la organizacin lgica y la fsica

Creacin y eliminacin de archivos y de directorios

Primitivas para la manipulacin de archivos y directorios

Proteccin del sist. archivos frente a otros usuarios y a fallos


del sistema
Sistemas Operativos

32

Componentes del sistema

Sistema de proteccin

Protege los recursos (memo, archivos, cpu...) asignados

Evitar propagacin de fallos de un subsistema al resto

Administrador de redes

Proporciona mecanismos de comunicacin entre procesos

Controla el flujo de informacin de la red en lo que afecta


al propio sistema

Sistemas Operativos

33

Potrebbero piacerti anche