Вы находитесь на странице: 1из 32

Introduccin a los sistemas operativos y una visin general

Captulo 2, Stallings

Introduccion a los SO

Sistemas Operativos

Sistema operativo
Un programa que controla la ejecucin de los programas de aplicacin Una interfaz entre el usuario y el hardware Oculta los detalles del hardware

Introduccion a los SO

Sistemas Operativos

Que se podria poner en una libreria (para evitar hacer un sistema operativo completo) y que no? - Ejemplos the S.O. configurables (OSEK lectura quiza mas adelante en el programa)

Capas de un sistema de computacin


Usuario final
Programador

Programas de aplicacin Utileras Sistema operativo Hardware


Diseador del S.O.

Introduccion a los SO

Sistemas Operativos

Servicios provistos por el sistema operativo


Creacin de programas Editores y depuradores Ejecucin de programas Acceso a dispositivos de E/S Controlar acceso a archivos Acceso del sistema

Introduccion a los SO

Sistemas Operativos

Si no existiera un S.O. como podriamos ejecutar programa? quiza tendriamos que bootear la maquina cada vez que quisieramos correr un programa: discute desventajas de esto.

Servicios provistos por el sistema operativo


Deteccin y respuesta a errores Errores de hardware internos y externos
Error de memoria Falla en dispositivo

Errores de software
Desbordamiento aritmtico Acceso a direcciones de memoria no permitidas

Cuando el SO no puede satisfacer la solicitud de una aplicacin


Intento de acceder una localidad de memoria no permitida
Introduccion a los SO Sistemas Operativos 5

El SO permite detectar errores en applicaciones sin perjudicar otras applicaciones corriendo y simplifica la correccion de dichos errores.

Servicios provistos por el sistema operativo


Contabilidad Recoger estadsticas Monitorear rendimiento Usada para anticipar expansiones futuras Usada para cobrar a los usuarios

Introduccion a los SO

Sistemas Operativos

Saber cuando tenemos que actualizar el hardware o el porque una applicacion corre muy lento

Sistema operativo
Es actualmente un programa Dirige el procesador en el uso de los recursos del sistema Dirige al procesador cuando ejecuta otros programas Para que el procesador pueda hacer estas cosas, debe cesar la ejecucin del programa del SO y ejecutar otros programas El SO cede el control al CPU para hacer un trabajo til
Introduccion a los SO Sistemas Operativos 7

Evolucin del sistema operativo


Actualizaciones del hardware y nuevos tipos de hardware Nuevos servicios Arreglo de errores

Introduccion a los SO

Sistemas Operativos

Simplifica la addicion de nuevos dispositivos

Sistemas sencillos de proceso por lotes


Primer SO por lotes a mediados de los 50s El usuario enva un trabajo (escrito en tarjeta o cinta) al operador de la computadora El operador pone un lote de varios trabajos en un dispositivo de entrada Un programa especial, el monitor, maneja la ejecucin de cada programa en el lote

Introduccion a los SO

Sistemas Operativos

Monitores
Software que controla los programas en ejecucin El monitor residente est en memoria principal y disponible para su ejecucin Las utileras del monitor se cargan cuando se necesitan

Introduccion a los SO

Sistemas Operativos

10

10

Disposicin de la memoria con un monitor residente


Tratamiento de interrupciones Controladores de dispositivos Secuenciamiento de trabajos Intrprete del lenguaje de control Monitor

Lmite

Zona del programa de usuario

Introduccion a los SO

Sistemas Operativos

11

11

Lenguaje de control de trabajos (JCL)


Es un tipo especial de lenguaje de programacin Provee instrucciones al monitor Que compilador usar Que datos usar

Introduccion a los SO

Sistemas Operativos

12

12

Caractersticas del hardware


Proteccin de memoria No permite que el rea de memoria que contiene el monitor sea alterada Timer Previene que una tarea monopolize el sistema Ocurre una interrupcin cuando el tiempo termina

Introduccion a los SO

Sistemas Operativos

13

13

Caractersticas del hardware


Instrucciones privilegiadas Ejecutadas solo por el monitor Ocurre una interrupcin si un programa intenta esas instrucciones Interrupciones Proveen flexibilidad controlando los programas de usuario

Introduccion a los SO

Sistemas Operativos

14

14

Multiprogramacin o multitarea
Permite al procesador ejecutar otro programa mientras un programa debe esperar por un dispositivo de E/S.
Ejecutar Tiempo
Monoprogramacin

Esperar

Ejecutar

Esperar

Ejecutar A

Ejecutar B Tiempo

Esperar

Ejecutar A

Ejecutar B

Esperar

Multiprogramacin con dos programas

Introduccion a los SO

Sistemas Operativos

15

15

Ejemplo
TRABAJO1 Tipo de trabajo Duracin Memoria requerida Necesita disco? Necesita terminal? Necesita impresorar? Clculo intensivo 5 min. 50K No No No TRABAJO2 E/S intensiva 15 min. 100 K No Si No TRABAJO3 E/S intensiva 10 min. 80 K Si No Si

Introduccion a los SO

Sistemas Operativos

16

16

Efectos de la multiprogramacin
Uniprogramacin Uso del procesador Uso de la memoria Uso del disco Uso de la impresora Tiempo transcurrido Tasa de productividad Tiempo promedio de respuesta 17% 30% 33% 33% 30 min. 6 trabajos/hr 18 min. Multiprogramacin 33% 67% 67% 67% 15 min. 12 trabajos/hr 10 min.

Introduccion a los SO

Sistemas Operativos

17

Practica en el procesador virtual con tareas ejemplo y sacando estadisticas

17

Tiempo compartido
Usando multiprogramacin para manejar varias tareas interactivas El tiempo del procesador es compartido por varios usuarios Varios usuarios accesan simultneamente el sistema a travs de terminales

Introduccion a los SO

Sistemas Operativos

18

18

Proceso
Un trmino algo ms general que el de trabajo Consiste de un programa ejecutable, datos asociados, y contexto de ejecucin

Introduccion a los SO

Sistemas Operativos

19

Unidad de planificacion

19

Dificultades con el diseo del software del sistema


Sincronizacin incorrecta Asegurarse que un proceso que espera un dispositivo de E/S recibe la seal Fallas de exclusin mutua Funcionamiento no determinista del programa Los programas deben solo depender de la entrada, no de las actividades de otros programas en un sistema compartido Interbloqueos
Introduccion a los SO Sistemas Operativos 20

20

Manejo de la memoria
Aislamiento del proceso un proceso no interfiera con los datos y memoria de ningn otro Asignacin y gestin automtica de memoria Soporte para la programacin modular Proteccin y control de acceso Algunas veces es conveniente la posibilidad de que un proceso pueda compartir memoria Almacenamiento a largo plazo
Introduccion a los SO Sistemas Operativos 21

21

Memoria virtual
Permite a los programadores direccionar la memoria desde un punto de vista lgico Mientras un programa est corriendo porciones de datos y cdigo, el resto se mantiene en bloques del disco

Introduccion a los SO

Sistemas Operativos

22

22

Sistema de archivos
Implanta almacenamiento a largo plazo La informacin se almacena en objetos llamados archivos

Introduccion a los SO

Sistemas Operativos

23

23

Categoras de seguridad y proteccin


Control de acceso Regulacin del acceso del usuario al sistema completo Control de flujo de informacin Regula el flujo de datos dentro del sistema y su distribucin a los usuarios Certificacin Demostracin de que el acceso y control de flujo se llevan a cabo de acuerdo a ciertas especificaciones
Introduccion a los SO Sistemas Operativos 24

24

Planificacin y manejo de recursos


Equidad Dar acceso igual a todos los procesos Sensibilidades diferenciales Discriminar entre las diferentes clases de trabajo con diferentes requisitos de servicio
Si un proceso espera un dispositivo de E/S, el SO puede planificarlo lo antes posible para liberar el dispositivo y tenerlo disponible

Eficiencia Maximizar la productividad, minimizar el tiempo de respuesta, alojar ms usuarios como sea posible
Introduccion a los SO Sistemas Operativos 25

QoS -VoIP -Video streaming -Internet Radio -CD Burning

25

Elementos clave de un SO para la multiprogramacin


Sistema Operativo Peticin de servicio de un proceso Gestor de peticiones de servicio

Interrupcin de un proceso Interrupcin de E/S

Manejador de interrupciones

Cola a largo plazo

Cola a corto plazo

Colas de E/S

Planificador a corto plazo

Pasar el control al proceso

Introduccion a los SO

Sistemas Operativos

26

26

Estructura del sistema


Una visin el sistema como series de niveles (Layers) Cada nivel lleva a cabo un determinado subconjunto de funciones requeridas por el SO Cada nivel se basa en el siguiente nivel inferior para llevar a cabo funciones ms primitivas Esto descompone un problema en un nmero de ms subproblemas manejables

Introduccion a los SO

Sistemas Operativos

27

Layers -Reescribir

27

Caractersticas de los SO modernos


Arquitectura microkernel Asigna solo unas cuantas funciones escenciales al kernel
Espacio de direcciones Comunicacin entre procesos (IPC) Planificacin bsica

Introduccion a los SO

Sistemas Operativos

28

28

Caractersticas de los SO modernos


Multi-hilos Un proceso se divide en hilos que pueden correr simultneamente Hilo Unidad de trabajo que se puede expedir para ejecucin Se ejecuta secuencialmente y es interrumpible Un proceso es una coleccin de uno o ms hilos

Introduccion a los SO

Sistemas Operativos

29

29

Caractersticas de los SO modernos


Multiproceso simtrico Hay varios procesadores Esos procesadores comparten la misma memoria principal y facilidades de E/S Todos los procesadores pueden ejecutar las mismas funciones

Introduccion a los SO

Sistemas Operativos

30

Hyper-threaded? -- lectura

30

Caractersticas de los SO modernos


Sistemas operativos distribuidos Proveen la ilusin de una sola memoria principal Usados por un sistema de archivos distribudos

Introduccion a los SO

Sistemas Operativos

31

No han funcionado responda a la pregunta: Porque?

31

Caractersticas de los SO modernos


Diseo orientado a objetos Usados para agregar extensiones modulares a un pequeo kernel Permite a los programadores configurar un SO sin corromper la integridad del sistema

Introduccion a los SO

Sistemas Operativos

32

Modular mas que orientado a objectos - Reescribir como modular

32

Вам также может понравиться