fundamentos de sistemas operativos.pdf
Post on 23-Nov-2015
31 Views
Preview:
TRANSCRIPT
-
Sistemas Informticos
Fundamentos deSistemas Operativos
Fede Prez
TEMA Fundamentos de Sistemas Operativos
1. - Introduccin
2. - El Sistema Operativo como parte de un Sistema de Computacin
2.1 Componentes Esenciales de un Sistema de Computacin
2.2 Funciones de un Sistema Operativo
2.3 Enfoque Jerrquico de un Sistema Operativo
2.4 Elementos de un Sistema Operativo
3. Tipos de Sistemas Operativos
3.1 Primeros Sistemas
3.2 Sistemas Monitor Simple; Sistemas por Lotes Sencillos
3.3 Sistemas por Lotes Multiprogramados
3.4 Sistemas de Tiempo Compartido
3.5 Sistemas de Computador Personal
3.6 Sistemas Paralelos
3.7 Sistemas Distribuidos
3.7 Sistemas de Tiempo Real
4. Funcionamiento de los Sistemas de Computacin
5. Elementos de Sistemas Operativos
5.1 Componentes del Sistema
5.2 Servicios del Sistema Operativo
5.3 Llamadas al Sistema
5.4 Programas de Sistema
6. Arquitecturas de Sistemas Operativos
6.1 Estructura del Sistema
ndice
-
Definicin
Sistema OperativoEs un programa que acta como intermediario entre el
usuario de un computador y el hardware de ste
Servicios de un Sistema Operativo
9 asignar recursos del ordenador (CPU, memoria,...) a los programas 9 dar acceso indirecto a los dispositivos del ordenador y a los perifricos 9 proporcionar un sistema organizado de almacenamiento de datos 9 comunicacin interactiva con el usuario
Objetivos de un Sistema Operativo9 Ejecucin de programas de usuario9 Amigabilidad9 Eficiencia
Componentes Esenciales de un Sistema de Computacin
Componentes de unSistema de Computacin
9 el hardware 9 los programas de aplicacin9 los usuarios 9 el sistema operativo
-
Funciones de un Sistema Operativo
Funciones de un Sistema Operativo9 Asignar Recursos 9 Programa de Control9 Facilitador de tareas de usuarios
UsuariosMquina Virtual
Informacin
DatosHardware
SistemaOperativo
Programas deAplicacin
Enfoque Jerrquico de un Sistema OperativoMquina Desnuda
Caractersticas fsicas del computador (hardware), sin ningn revestimiento lgico (software)
9 Entorno rido de programacin 9 Conocimiento profundo del sistema
Mquina ExtendidaMquina virtual que se constituye a partir de la mquina desnuda dotada de mdulos lgicos
9 Amigable9 Eficiente9 Segura
Dos Niveles9 Mquina Extendida Interna
Operaciones elementales y comunes que actan sobre algn elemento fsico del sistema
9 Mquina Extendida ExternaMdulos fsicos que pueden extraerse y funcionar sobre el nivel de mquina extendida interna
-
Elementos de un Sistema Operativo
Elementos Software de un Sistema Operativo
9 Ncleo o Kernel 9 Programas de Aplicacin
NcleoKernel
Tipos Sistemas Operativos Primeras Realizaciones
Caractersticas9 El programador deba ser operador9 Explotacin mediante listas de reserva
Problemas:Tiempo asignado insuficienteTiempo asignado mayor
Primeros Ordenadores (antes de los 50)Mquinas muy grandes que carecan de elementos
lgicos
ProblemasUso ineficiente de recursos
9Baja utilizacin de la CPU9Tiempo requerido para dejar listo un programa para ejecucin (setup time)
Primeras Mejoras9Dispositivos Fsicos: lectoras, impresoras, cintas9Dispositivos lgicos: ensambladores, cargadores, linkadores y drivers9Lenguajes de alto nivel: compiladores (FORTRAN, COBOL)
-
Sistemas Monitores Residentes
ObjetivoDisminuir el setup time
9 Operador Profesional9 Estrategia de explotacin: agrupacin por
Lotes9 Secuenciamiento automtico de trabajos
Control de finalizacin de tareasTratamiento de erroresCarga y ejecucin automtica de la siguiente tarea
Problemas9Falta de iteracin entre usuario y maquina9Lentitud frente a operaciones de E/S
Primer Sistema OperativoMonitor residente, realiza automticamente el
secuenciamiento de tareas
Introduce tarjetas de Control ($FNT $JOB $END)
Funciones9Intrprete de tarjetas de Control9Cargador9Drivers de dispositivos
rea de Programas de Usuario
Sistema Operativo
Memoria
Sistemas por Lotes Operaciones de E/S
ObjetivoMejorar el rendimiento de los sistemas por lotes
perfeccionando tcnicas de E/S
BufferingEsquema de operacin de E/S en el que las
transferencias de E/S se realizan a travs de un rea intermedia de memoria (buffer)
Permite solapar operaciones de E/S de una tarea con instrucciones de CPU de esa misma tarea
Operaciones Off-lineModo de operacin de ciertos equipos de E/S que trabajan no controlados directamente por la CPU
Se reemplazan dispositivos mecnicos por dispositivos electrnicos (cintas mgnticas)
Operaciones On-line (Spooling)(Simultaneous Peripheral Operation On-Line)
Consiste en usar el disco como tampn o sistema de buffering. Existe una tarea especial el spooler
Permite solapar operaciones de E/S de una tarea con instrucciones de CPU de otras tareas
Tcnicas
-
Sistemas por Lotes Multiprogramados
ObjetivoMejorar el rendimiento de la CPU
Tareas del Sistema Operativo9Gestin de Memoria9Planificacin de la CPU9Planificacin de Trabajos9Proteccin9Control de Concurrencia (Dead Lock)
MotivacinConsecuencia de la planificacin de tareas (job
scheduling)
ProcedimientoConmutacin de CPU: cuando una tarea deba
esperar, los recursos de CPU son asignados a otra tarea preparada para ejecucin
Sistema Operativo
Memoria
Trabajo 1
Trabajo 2
Trabajo 3
Sistemas de Tiempo Compartido
ObjetivoMejorar la interactividad con el usuario
Tareas del Sistema Operativo9Sistema Multitarea (tarea proceso)9Sistema Interactivo 9Sistema de Archivos (archivos/directorios)9Sistema Multiusuario 9Memoria Virtual (memoria lgica)
CaracterizacinSistemas multiprogramados e interactivos. Asignacin de la CPU en rodajas de tiempo a todos los usuarios, consiguiendo:
Tiempos de respuesta cortosImpresin de usuario nico
-
Sistemas de Computador Personal
ObjetivoSistemas de computador dedicados a un solo usuario
Caractersticas9Adoptan funcionalidades de grandes sistemas9No necesitan caractersticas de utilizacin eficiente de CPU, ni proteccin
Dispositivos de E/STecladoRatnPantallasPequeas impresoras
PropiedadesAdaptados al usuario y sus necesidades
Sistemas Paralelos
ObjetivoSistemas multiprocesador.
Sistemas fuertemente acoplados
Caractersticas9Mayor rendimiento9Compartir recursos9Sistemas tolerantes a fallos9Sistemas de multiprocesamiento
Multiprocesamiento simtrico: cada procesador ejecuta una copia del sistema operativoMultiprocesamiento asimtrico: cada procesador tiene una tarea especfica
PropiedadesCon ms de un procesador, comparten bus, reloj, memoria, perifricos,...
-
Sistemas Distribuidos
ObjetivoSistemas multicomputador (distribuir el cmputo
entre varios procesadores).Sistemas dbilmente acoplados
Caractersticas9Recursos compartidos9Computacin ms rpida9Confiabilidad9Comunicacin
PropiedadesLos procesadores no comparten ni memoria, ni reloj. Se comunican entre s a travs de lneas de comunicacin
Sistemas de Tiempo Real
ObjetivoLos requisitos de tiempo de la operacin de procesador o del flujo de datos son estrictos
Tipos9Tiempo real duro: garantiza que las tareas crticas se terminarn a tiempo9Tiempo real bando: una tarea de tiempo real crtica tiene prioridad respecto a otras tareas
-
Funcionamiento de los Sistemas de Computacin
Sistema de Computacin9Controlador de dispositivo9Bus de sistema9Memoria compartida
Controlador9Controlador de dispositivo: componente hardware device controler9Controlador software: componente software device driver
Programa de Arranque9Init: primer proceso 9Interrupcin:
Interrupcin hardware: a travs de bus de sistemaInterrupcin software: Llamada al sistema
Elementos de Sistemas Operativos Componentes del Sistema
9Gestin de Procesos crear y eliminar procesos, tanto de usuario como de
sistema suspender y reanudar procesos proveer mecanismos para la sincronizacin de
procesos proveer mecanismos para la comunicacin de
procesos proveer mecanismos para manejar bloqueos mutuos
(dead locks)
9Gestin de Memoria Principal conocer el estado actual de la memoria y quien la
est utilizando decidir que procesos se cargarn en la memoria
cuando se disponga de espacio asignar y liberar espacio de memoria segn se
necesite suspender y reanudar procesos
9Gestin de Archivos crear y eliminar archivos crear y eliminar directorios proveer primitivas para la manipulacin de archivos
y directorios establecer la correspondencia de los archivos con el
almacenamiento secundario resguardar los archivos en medios de
almacenamiento estables (no voltiles)
9Gestin del Sistema de E/S crear y eliminar directorios un componente de gestin de memoria que incluye
buffers, cachs, y spool un interfaz general con los controladores de
dispositivosDrivers (controladores software)
9Gestin de Almacenamiento Secundario administracin del espacio libre de almacenamiento
secundario asignacin del almacenamiento planificacin del almacenamiento secundario
9Trabajo con Redes
9Sistema de Proteccin
9Sistema de Interpretacin de rdenes intrprete de lnea de comandos interfaz grfica de usuario
-
Elementos de Sistemas Operativos Servicios del Sistema
9Ejecucin de Programas
9Operaciones de E/S9Manipulacin de Sistema de Archivos
9Comunicaciones
9Deteccin de Errores
9Asignacin de recursos9Contabilizacin9Proteccin
Servicios para comodidad del programador
Servicios para aseguran el funcionamiento eficiente
Elementos de Sistemas Operativos Llamadas al Sistema
1. Control de procesos y tareas cargar, ejecutar fin, abortar crear proceso, terminar proceso obtener atributos, establecer atributos del proceso esperar tiempo esperar sucesos, indicar sucesos asignar, liberar memoria
2. Manipulacin de Archivos crear, eliminar abrir, cerrar leer, escribir, reposicionar obtener atributos, establecer atributos
3. Manipulacin de Dispositivos solicitar, liberar leer, escribir, reposicionar obtener atributos, establecer atributos conectar, desconectar lgicamente
4. Mantenimiento de Informacin obtener, establecer fecha y hora obtener, establecer datos del sistema obtener atributos de proceso, archivo o dispositivo establecer atributos de proceso, archivo o dispositivo
5. Comunicaciones crear, eliminar conexin enviar, recibir mensajes transferir informacin de estado conectar, desconectar dispositivos remotos
CategorasInterfaz entre el proceso y el Sistema Operativo
Llamadas al Sistema
Disponibles como instrucciones en lenguaje ensamblador o lenguajes de alto nivel, y se listan en los manuales empleados en la programacin del lenguaje
-
Elementos de Sistemas Operativos Programas del Sistema
1. Manipulacin de Archivos crear, eliminar, copiar, cambiar nombre,...
2. Informacin de Estado fecha, hora, espacio de disco, nmero de usuarios,...
3. Modificacin de Archivos editores de texto,...
4. Apoyo a Lenguajes de Programacin ensambladores, compiladores, intrpretes,...
5. Carga y Ejecucin de Programas ensambladores, compiladores, intrpretes,...
6. Comunicaciones acceso remoto, transferencia de archivos, correo
electrnico,...
Categoras
Ubicados en el ncleo del sistema operativo y los programas de usuario
Programas del SistemaAlgunos de ellos son interfaces entre el usuario y las llamadas al sistema, mientras que otros son mucho ms complejos
Arquitectura de Sistemas Operativos Estructura del Sistema
Modelos de DiseoForma en que se puede construir un Sistema Operativo para que funcione correctamente y pueda modificarse con facilidad.
1. Estructura Simple: D.O.S2. Modelo de Capas: UNIX, OS/23. Modelo de Mquina Virtual: VM4. Modelo Cliente/Servidor: Windows-NT
-
Arquitectura de Sistemas Operativos Estructura Simple
Controladores de dispositivos en ROM BIOS
Controladores de dispositivos de S.O.
Ncleo del Sistema Residente
Programa de Aplicacin
Estructura de bloques de D.O.S.
Controladores de Terminales
Terminales
Controladores de Dispositivos
Discos y Cintas
Controladores de Memoria
Memoria Fsica
Interfaz del ncleo con el hardware
Manejo de terminalespor seales
Sistema de E/S por caracteresDrivers de terminales
Sistema de archivosSistema de E/S por
intercambio de bloquesDrivers de disco y cinta
Planificacin de CPUReemplazo de pginas
Paginacin por demandaMemoria virtual
Interfaz con el ncleo mediante llamadas al sistema
Shells y rdenesCompiladores e intrpretes
Bibliotecas del sistema
Usuarios
Estructura de bloques de UNIX Clsico
Los recursos se estructuran por bloques.Mximo de funcionalidad en un mnimo de espacio, con hardware limitado
Estructura SimpleLos sistemas operativos con esta estructura son generalmente sistemas pequeos, sencillos y limitados.
Arquitectura de Sistemas Operativos Estructura por Capas
Capa M
Capa M-1Operacionesocultas
Operacionesexistentes
Operacionesnuevas
Capa de un Sistema Operativo
Capa 0: HardwareCapa 1: Intrprete de instruccionesCapa 2: Planificacin de CPUCapa 3: Canal de E/SCapa 4: Memoria virtualCapa 5: Controladores de dispositivosCapa 6: Programas de Usuario
Estructura de capas de Venus
Objetivos1. Mayor libertad para implementadores2. Modularidad en los sistemas3. Ocultamiento de informacin para que los
programadores
Modelo por CapasDiseados para utilizacin de hardware ms avanzado, estos sistemas operativos se encuentran mucho ms fragmentados.
-
Arquitectura de Sistemas Operativos Mquinas Virtuales
Mquinas VirtualesUtilizando planificacin de la CPU y tcnicas de memoria virtual, un sistema operativo puede crear la ilusin de que mltiples procesos se ejecutan cada uno en su propio sistema.
Otro tipo de visin de mquina virtual es la de Java, donde los programas se ejecutan sobre una JVM(Java Virtual Machine), haciendo a los programas independientes del hardware utilizado.
HardwareNcleo
Procesos
HardwareMquina Virtual
Ncleo
Procesos
Ncleo
Procesos
Ncleo
Procesos
Mquina no virtual Mquina virtual
Interfazde
programacin
top related