introduccion a so

9
1 Sistemas Operativos Departamento de Computación Universidad de Valparaíso 1 Sistemas Operativos Prof. Dr. Raúl Monge 1er Semestre del 2007 Sistemas Operativos Departamento de Computación Universidad de Valparaíso 2 Descripción del Curso Sistemas Operativos Departamento de Computación Universidad de Valparaíso 3 Raúl Monge 2007 Antecedentes Generales Asignatura: Sistemas Operativos Profesor: Raúl Monge ([email protected]) Horario: Cátedra: Lunes 8:30-10:00, 10:15-11:45 Ayudantía: Hernán Rodríguez ([email protected]) Sistemas Operativos Departamento de Computación Universidad de Valparaíso 4 Raúl Monge 2007 Objetivos Al final del curso el alumno deberá entender y poder explicar los conceptos básicos relacionados con el diseño e implantación de sistemas operativos. Habilitar al alumno para que pueda explotar en forma más eficiente los recursos de un sistema computacional. Sistemas Operativos Departamento de Computación Universidad de Valparaíso 5 Raúl Monge 2007 Contenido • Introducción Estructuras de Hardware y Software en Sistemas Computacionales Gestión del Procesador y Procesos Procesos Concurrente Gestión de la Memoria Sistema de Archivos y sistema de E/S Seguridad y protecciones Sistemas Operativos Departamento de Computación Universidad de Valparaíso 6 Raúl Monge 2007 Sistema de Evaluación 2 certámenes (NC): 67% Certamen recuperativo Cubre toda la materia derecho sólo si se justifica inasistencia. Tareas de ayudantía (NT): 33% Control de Lectura + Laboratorios OBSERVACIONES: Nota mínima de 3,0 en NC para considerar NT. Prueba especial para promedios de 3,5 a 3,9, sobre toda la materia

Upload: monica-alexandra

Post on 13-Jun-2015

865 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: Introduccion a so

1

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

1

Sistemas Operativos

Prof. Dr. Raúl Monge

1er Semestre del 2007

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

2

Descripción del Curso

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

3Raúl Monge 2007

Antecedentes Generales

Asignatura: Sistemas OperativosProfesor: Raúl Monge ([email protected])Horario: Cátedra: Lunes 8:30-10:00, 10:15-11:45

Ayudantía: Hernán Rodríguez([email protected])

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

4Raúl Monge 2007

Objetivos

• Al final del curso el alumno deberá entender y poder explicar los conceptos básicos relacionados con el diseño e implantación de sistemas operativos.

• Habilitar al alumno para que pueda explotar en forma más eficiente los recursos de un sistema computacional.

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

5Raúl Monge 2007

Contenido

• Introducción• Estructuras de Hardware y Software en Sistemas

Computacionales• Gestión del Procesador y Procesos• Procesos Concurrente• Gestión de la Memoria• Sistema de Archivos y sistema de E/S• Seguridad y protecciones

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

6Raúl Monge 2007

Sistema de Evaluación

• 2 certámenes (NC): 67%– Certamen recuperativo

• Cubre toda la materia• derecho sólo si se justifica inasistencia.

• Tareas de ayudantía (NT): 33%– Control de Lectura + Laboratorios

OBSERVACIONES:– Nota mínima de 3,0 en NC para considerar NT.– Prueba especial para promedios de 3,5 a 3,9, sobre toda

la materia

Page 2: Introduccion a so

2

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

7Raúl Monge 2007

Calendario de Evaluación

• Certamen #1 Lunes 7 de Mayo del 2007• Certamen #2 Lunes 25 de Junio del 2007

• Certamen recuperativo:Viernes 29 de Junio del 200712:00 horas

• Prueba especial– Por definirse centralmente

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

8Raúl Monge 2007

Bibliografía

• A. Silberschatz, P. Galvin, “OperatingSystem Concepts”, 5th. Edition, Addison-Wesley, 1999.

• A. Tanenbaum, “Modern OperatingSystems”, Prentice-Hall, 1992.

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

9

Capítulo I: Introducción a los

Sistemas Operativos

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

10

1.1 Definición de Sistema Operativo

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

11Raúl Monge 2007

Sistema Computacional

RED DERED DERED DE

COMUNICACIONESCOMUNICACIONESCOMUNICACIONES

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

12Raúl Monge 2007

Funciones Básicas de un Sistema Computacional

• Gestión de Información (almacenamiento, referencias, recuperación, comunicación)

• Desarrollo de Software (programación y depuración de programas)

• Ejecución de programas (Aplicaciones)

Page 3: Introduccion a so

3

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

13Raúl Monge 2007

Visión Abstracta de unSistema Computacional

Hardware

Software del Sistema

Programas de Aplicación

Usuarios

Sistema Operativo

Herramientas yServicios

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

14Raúl Monge 2007

¿Qué es un Sistema Operativo?

• Un Sistema Operativo es un programa que actúa de intermediario entre el usuario y el hardware del computador.

• El propósito de un sistema operativo es proveer un ambiente en el cual el usuario pueda ejecutar programas.

• La meta principal del Sistema Operativo es hacer del sistema computacional algo conveniente de usar.

• Una meta secundaria es usar el hardware de una manera eficiente

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

15Raúl Monge 2007

Visión #1 sobre el SO:Una Máquina Virtual

• Interfaz usuaria• Comandos y Sistema de ventanas (Lenguaje de Comunicación)

• Recursos virtuales• Memoria virtual, Archivos, Páginas WWW, etc.• Conexiones de comunicación

• Control de Ejecución• Secuencial, paralelo, composición de programas, etc.

• Servicios Varios• Depuración, manejo de fallas, medición del tiempo, etc.

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

16Raúl Monge 2007

Visión #2 sobre el SO:Un Asignador de Recursos

(Compartidos)

• Recursos físicos: Procesadores, memoria (principal, secundaria, etc.), manejo de dispositivos de E/S.

• Compartición e intercambio de información entre usuarios

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

17Raúl Monge 2007

Visión #3 sobre el SO:Un Programa de Control

• Planificación del uso recursos. Ejecución de programas (planificación de procesos y asignación del procesador)

• Manejo de errores (detección y recuperación)

• Protección. Evitar uso inapropiado de la máquina

• Auditoría

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

18

1.2 Evolución Histórica de los Sistemas Operativos

Page 4: Introduccion a so

4

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

19Raúl Monge 2007

1.2.1. Primeros Sistemas

• Característica:• Grupo de personas diseña,

construye, programa, opera y mantiene el sistema

• Programación en lenguaje de máquina o bajo nivel

• No existe sistema operativo• Aplicaciones son

principalmente de cálculo numérico

Primera Generación: Tubos (1945-1955)

• Modelo de Tienda Abierta:• Surge como necesidad de compartir

recursos• Reserva de bloques de tiempo• Carga de programas (manual, cinta

perforada y tarjetas)

• Conclusión:• Contacto directo con la máquina• Recursos usados inapropiadamente• Existe necesidad de automatizar los

procesos

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

20Raúl Monge 2007

1.2.2 Sistemas de Procesamiento en Lotes (Batch)

• Objetivo:Automatizar el proceso de manera de reducir el tiempo de instalación de un nuevo programa, aumentando la utilización del computador

Segunda Generación: Transistor y Sistemas en lotes (1955-1965)

• Más fiable y reducción de tamaño• Altos costos de los computadores (sólo unos

pocos pueden disponer de este tipo de recurso)

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

21Raúl Monge 2007

Procesamiento en Lotes (Batch)

Operador

Sistema ComputacionalMesón

UsuariosEstrategia de solución:• Especialización del

(operadores, progra-madores, personal de mantención, etc.)

• Agrupar trabajos en grupos afines (Lote)

• Secuenciación automática de trabajos

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

22Raúl Monge 2007

Sistemas de Monitor Residente

• Tecnología:• Monitor residente• Cargadores• Lenguaje de control de trabajos

• Problemas:• Se debe proteger el Monitor• Lectura de tarjetas por error

• Solución:• Protección de memoria• Modo monitor/usuario

Aréa de Programa

del Usuario

Monitor:•Carga•Secuenciación•Intérprete de

Tarjetas de Control

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

23Raúl Monge 2007

Avances Tecnológicos$END

Datos$RUN

$LOAD

Programa$FORTRAN

$JOB

Precursores de:• Lenguajes de Control de Trabajos (JCL)• Interpretadores de Órdenes• Archivos batch (e.g. *.bat en

DOS y Script en Unix)

Facilidades de desarrollode programación:

• Ensambladores• Bibliotecas y enlazadores• Rutinas de E/S (Drivers)• Compiladores (Fortran y

Cobol)

Tarjetas de Control

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

24Raúl Monge 2007

Problema de Diferencia de Velocidad entre Procesador (CPU) y E/S

• Hecho: Procesador realiza operaciones en el orden de los µ o nseg., en cambio dispositivos de E/S en el orden los mseg. (relación 1:103 o más)

• Consecuencia: Procesador pasa gran parte del tiempo ocioso.

• Solución: Traslape de operaciones de CPU y E/S• Carga de programas y lectura de datos de entrada• Ejecución del programa• Salida de resultados

Page 5: Introduccion a so

5

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

25Raúl Monge 2007

Una solución: “Spooling”(Simultaneous Peripherical Operating On-Line)

E P S

Buffer deEntrada

Buffer deSalida

Lectora deTarjetas

ImpresoraComputador Central

Disco

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

26Raúl Monge 2007

Modelo de un Sistema de Spooling

E Proc. S

• Lectura directa de tarjetas a disco (acceso directo)• Escritura directa desde disco a impresora• Tres procesos concurrentes que permiten traslapar operaciones

(CPU mejora su utilización)• Procesamiento puede ser continuo (menor intervención manual)• Trabajos esperan en línea a ser procesados, lo que permitiría

seleccionar cualquiera de ellos.

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

27Raúl Monge 2007

Características de los PrimerosSistemas de Procesamiento en Lote

• Se introduce el concepto de procesos cooperativos en una misma máquina

• El usuario está desconectado del sistema• En caso de errores y depuración de

programas, el proceso de desarrollo es muy lento.

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

28Raúl Monge 2007

1.2.3 Sistemas de Multiprogramación

• Comienzos del 60’• Computadores científicos (palabras), IBM 7094• Computadores comerciales (caracteres), IBM 1401• Se requieren computadores con diferentes capacidades

• Computadores de Propósitos Generales• Se crean familias de computadores (e.g. IBM 360)• Serie de máquinas con compatibilidad de Software• Se diferencian en precio y desempeño(Series posteriores: 370, 4300, 3080 y 3090)

Tercera Generación (1965-1980)• Circuitos Integrados y

multiprogramación

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

29Raúl Monge 2007

Concepto de Multiprogramación

• Existen varios programas activos en ejecución• El espacio de memoria del usuario debe compartirse entre

estos programas• También debe compartirse el procesador (multiplexión en el

tiempo)• Mientras un proceso realiza E/S, otro proceso puede usar el

procesador– Se requieren canales de E/S que realicen operaciones en forma

autónoma al procesador (DMA, ciclo robado)– Se aumenta utilización de los recursos de hardware

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

30Raúl Monge 2007

Multiplexión del Procesador

• Cuando un trabajo requiere E/S, puede liberar temporalmente el procesador

• Se asigna el procesador durante una ranura de tiempo, evitando que un trabajo se adueñe del procesador

• Se requiere de un reloj para controlar la ranura de tiempo

P1 P2 P3 P1

Cambio de contexto

P2

Page 6: Introduccion a so

6

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

31Raúl Monge 2007

Libre

Programa 3

Programa 2

Partición de la Memoria

• Para conmutar rápida-mente, programas activos, éstos deben estar cargados en memoria principal

• Se requiere de mecanismos de protección (evitar interfencias mutuas)

Programa 1

Sistema Operativo

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

32Raúl Monge 2007

Canales de E/S

Procesador

Memoria

Canal deE/S

Computador

¡Procesador puede trabajar en paralelo al canal de E/S!

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

33Raúl Monge 2007

Grado de Utilización del Procesador

Si:pE/S: Probabilidad de que un proceso entre en E/S

n : número de procesos multiprogramados

Entonces se tiene:

1 - pE/S : Utilización del procesador con un solo proceso

1 - (pE/S )n : Utilización del procesador con n procesos

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

34Raúl Monge 2007

a) Sistemas en Lotes Multiprogramados

• Disponibilidad de memoria principal determina si se puede cargar un nuevo trabajo (Planificación de trabajos)

• Si existen varios trabajos listos para ejecutarse, el sistema elige cuál usa a continuación la CPU (Planificación de la CPU)

• Este tipo de sistema es la primera instancia donde el S.O. toma decisiones por el usuario.

• Compartición de los recursos del sistema entre varios trabajos requiere de mecanismos de protección

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

35Raúl Monge 2007

Modelo de Sistema de Procesamiento en Lotes Multiprogramado

E/S

E CPU

S

Área de Spool Procesos Multiprogramados

fin

E/S

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

36Raúl Monge 2007

b) Sistema de Tiempo Compartido• Variación de multiprogramación• Permite a múltiples usuarios compartir un

computador simultáneamente (Interactivo)• E/S se realiza principalmente en un terminal• Lenguajes e interpretadores de Órdenes (desde el

terminal)• Editores y depuradores interactivos• Sistema de archivos y directorio facilita el uso de

dispositivos de almacenamiento masivo (disco), compartición de información y envío de mensajes

Page 7: Introduccion a so

7

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

37Raúl Monge 2007

Arquitectura de HW de un STC

ComputadorCentral

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

38Raúl Monge 2007

Modelo del STC

E/S

CPU fin

E/S a otrosdispositivos

timeout

E/S alterminal

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

39Raúl Monge 2007

Características de los STC

• A diferencia de sistemas en lotes, usuario interactúa directamente con la máquina

• Para lograr interactividad, procesos usan un corto tiempo la CPU (sino realiza E/S o termina, hay timeout), obteniendo buenos tiempos de respuesta.

• Cada usuario tiene la sensación de tener su propio computador

• Muchos sistemas proveen simultáneamente servicio interactivo y batch

• Desarrollo del teleprocesamiento (terminales y periféricos remotos)

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

40Raúl Monge 2007

Ejemplos de STC

• Mainframes– TSO (Time-Sharing Option) para máquinas IBM– Multics (1965-1970, MIT, GE-645)

• Minicomputadores– PDP-1 de Digital evoluciona a PDP-11 (aplicaciones de

tiempo real)– UNIX (1970 - )

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

41Raúl Monge 2007

2.2.4 Sistemas de Computación Personal

• Desarrollo de la computación personal y estaciones de trabajo

• Desarrollo de Interfaces gráficas y redes de área local

• TCP/IP e Internet

Cuarta Generación (1980-1990)• Integración a gran escala (LSI y VLSI)• Microprocesador• Interfaces gráficas• Conexión a redes de computadores

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

42Raúl Monge 2007

a) Computadores Personales

• Características:• Reducción de costos de hardware hace posible computadores de un

solo usuario (PC)• Microcomputadores y microprocesadores• Enfasis en facilitar el uso del computador y mejorar los tiempos de

respuestas (interactividad)• Interfaces usuarias más amigables (sistemas de ventanas y ratón)

• Ejemplos:• CP/M, MS-DOS (Monousuario, monoprogramación, sin

protecciones)• Macintosh, OS/2 y Windows (Multitasking, memoria virtual)

Page 8: Introduccion a so

8

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

43Raúl Monge 2007

b) Estaciones de Trabajo

• Características:• Desarrollo de Redes de Área Local (Ethernet y Token-Ring)• Sistemas de Ventanas (X-Window, MIT, 1985)• TCP/IP se integra a Unix• Computación Cliente/Servidor (Sun)• Estaciones sin disco

• Observaciones:• Se desarrollan Sistemas Operativos de Red• Servicios de comunicación forman parte del S.O.• Convergencia de Computadores Personales y Estaciones de trabajo

(e.g. Linux, Windows NT)

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

44Raúl Monge 2007

1.2.5 Otros Desarrollos

• Sistemas Paralelos• Sistemas Distribuidos• Sistemas de Tiempo Real

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

45Raúl Monge 2007

a) Sistemas Paralelos

• Sistemas fuertemente acoplados con varios procesadores (multiprocesamiento)

• Se comparten recursos como reloj, bus y dispositivos (más económicos)

• Aumento de desempeño y fiabilidad• Sistemas Asimétricos (e.g. SunOS) y

Simétricos (e.g. Solaris)

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

46Raúl Monge 2007

Ejemplo de un Sistema de Multiprocesamiento con

Memoria Compartida

CPU1

Memoria

Memoria Cache

CPU2 CPU3 CPU4

Sistemade E/S

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

47Raúl Monge 2007

Modelo de Multiprocesamiento

E/S

CPU2 fin

E/S

CPU1

CPU3

CPU4

timeout

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

48Raúl Monge 2007

b) Sistemas Distribuidos

• Sistemas débilmente acoplados• Atractivo:

• Compartición de recursos• Aumento del desempeño y fiabilidad• Mejora la comunicación (remota)

• Servicios distribuidos (Archivos, procesamiento, base de datos, comunicaciones, etc.)

Page 9: Introduccion a so

9

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

49Raúl Monge 2007

Ejemplo de Sistema Distribuido

RED DERED DERED DE

COMUNICACIONESCOMUNICACIONESCOMUNICACIONES

Conexióna otrosSistemas

Sistemas OperativosDepartamento de Computación

Universidad de Valparaíso

50Raúl Monge 2007

c) Sistemas de Tiempo Real

• Sistemas de propósitos especiales• Existe un requerimiento fuerte de tiempo

sobre las operaciones y el flujo de los datos• Se usa para el control de procesos en

aplicaciones dedicadas• Existen dos tipos de sistemas: duros y

blandos