You are on page 1of 37

Software Sistemas Operativos

Referencias
Stallings, Sistemas Operativos Tanenbaum, Sistemas Operativos Modernos

Definicin de software
Parte intangible del sistema.

Conjunto de instrucciones que controlar la actividad del computador.


Diversos tipos: S.O. De control del hardware o bsico. De aplicacin. Utilitarios. Shells, Ofimtica, etc.
3

S.O. generalidades: Una definicin de Sistema Operativo


Explota los recursos de hardware de uno o mas procesadores y sus perifricos. Ofrecer un conjunto de servicios a los usuarios del sistema y al programador. Adems gestiona la memoria secundaria y dispositivos de I/O.

S.O. generalidades: Ejemplos de Sistemas Operativos


Microsoft DOS, Windows 3, 95, 98, ME, XP Microsoft Windows NT, 2000, XP Apple Macintosh MacOs Unix y propietarios relacionados AIX; Solaris, Linux, BSD alternativa a Unix Red Hat, Mandrake, FreeBSD, otros. Muchos otros.

S.O. generalidades: Sistema Operativo


Es un programa que controla la ejecucin de los programas de aplicacin. Es una interfaz entre los programas de aplicacin y el hardware. Oculta, al usuario, los detalles del hardware.

S.O. generalidades: Funciones


Comodidad: para el usuario, de utilizacin del computador. Eficiencia: permite la utilizacin eficiente de los recursos. Capacidad de evolucin: su construccin debe permitir el desarrollo e introduccin de nuevas funciones.
7

S.O. generalidades: Niveles en un sistema de computacin

Usuario final

Programador

Programas de Aplicacin Utilitarios


Diseador de Sistemas Operativos

Sistema Operativo
Hardware del computador

S.O. generalidades: Niveles en un sistema de computacin

Operating system

Tanenbaum, Operating System

Servicios provistos o suministrados por el Sistema Operativo (1)


Ejecucin de Programas.
Acceso a dispositivos I/O. Acceso controlado a archivos. Acceso al Sistema y a los recursos especficos, brinda proteccin y resuelve conflictos de propiedad de los recursos.

10

Servicios provistos o suministrados por el Sistema Operativo (2)


Deteccin y respuesta a errores: Errores de hardware internos y externos:
Errores de memoria. Fallas de dispositivos.

Errores de software:
Overflow aritmtico. Acceso prohibido a ubicaciones de memoria.

El sistema operativo debe dar una respuesta que elimine la condicin de error con el menor impacto posible sobre las aplicaciones en ejecucin.
11

Servicios provistos o suministrados por el Sistema Operativo (3)


Contabilidad: Recolectar estadsticas de utilizacin de los diversos recursos. Monitorear parmetros de rendimiento
Tiempo de respuesta

Usado para mejoras futuras Para facturacin a usuarios


12

Sistema Operativo como un administrador de recursos


Es un programa de computador. Dirige al procesador en el uso de los recursos del sistema. Dirige al procesador cuando se ejecutan otros programas, control del tiempo.

El procesador detiene la ejecucin del SO para ejecutar otros programas.


13

Partes de un S.O. Kernel


Parte del Sistema Operativo residente en la memoria principal Contiene las funciones mas frecuentemente utilizadas Tambin se le llama ncleo del S.O. Micro-kernel y monoltico.

14

Partes de un S.O. Interfaz con el usuario


Lenguaje de Control
Indica al S.O. Una accin o tarea especifica. Ejemplos:
Grabar un conjunto de datos o archivo compilar un programa ejecutar un programa abrir o cerrar archivos Otros.

Generalmente una aplicacin llamada shell es la encargada.


15

Actualizacin de los Sistemas Operativos


Actualizaciones e incorporacin de nuevos tipos de hardware. Nuevos servicios. Fixes correcciones.
Service pack. Parches (patchs). Upgrades.

16

Evolucin de los Sistemas Operativos


Procesamiento Secuencial (aos 50)
No hay sistema operativo.

Batch (lotes) simple (aos 60)


Programa monitor

Batch complejo (aos 70 adelante)


Sistema operativo

Tiempo compartido (70 adelante)

17

Evolucin de los Sistemas Operativos (batch) Capas (layout) de memoria para un monitor residente .
Interrupt Processing Device Drivers Job Sequencing Control Language Interpreter

Monitor

limite

User Program Area

18

Proteccin Hardware
Modos de operacin de la CPU Modo usuario: se restringe acceso a parte de los recursos Modo supervisor: se tiene acceso a todos los recursos Proteccin de memoria: Previene que el programa de un usuario tenga
acceso a los programas y datos de otros usuarios y del sistema operativo.

Timer: Previene que un trabajo monopolice los recursos del sistema. Instrucciones privilegiadas: Ejecutadas slo por el SO Interrupciones: Son llamadas a funciones del kernel Si un programa intenta usar recursos restringidos, se produce una interrupcin

19

Evolucin de los Sistemas Operativos

Multiprogramacin

20

Multiprogramacin o Multitarea

21

Paginacin

22

Evolucin de los Sistemas Operativos

Paginacin, ejemplo

23

Time Sharing o Tiempo compartido


Usando multiprogramacin para manejar mltiple trabajos interactivos. El tiempo de procesador (quantum) es compartido entre mltiples usuarios. Mltiples usuarios simultneamente accesan al sistema a travs de terminales.
24

Tiempo real
Similar a time-sharing pero con requerimientos y objetivos diferentes Finalidad: aplicaciones de medicin o control que requieren monitoreo continuo. Ejemplos: QNX, Aperios.

25

Resumen
Monoprogramacin Tcnica en que los recursos del sistema de computacin son asignados a un programa hasta completar su ejecucin Multiprogramacin Su objetivo es tener varios programas en memoria principal, de manera que si uno de ellos tiene que esperar para completar un proceso de transferencia de datos o de E/S, otro (que no est en esa situacin) se pueda ejecutar Multiprocesamiento Trabajo con varios procesadores >1. Aumenta la eficiencia de la Multiprogramacin

26

Componentes de un S.O.
Interprete de comandos Planificador, para organizar la ejecucin de programas Gestor de archivos Gestor de memoria Asignador de recursos

27

Gestin de la Memoria

Aislamiento del proceso Gestin y asignacin automticas Soporte para programacin modular Proteccin y control de acceso

28

Gestin de la Memoria

Memoria Virtual
Permite a los programadores direccionar memoria desde un punto de vista lgico Mientras el programa se esta ejecutando, una porcin del programa y sus datos se mantiene en bloques de disco

29

Gestin de la Memoria

Intercambio o Swapping
Con un sistema batch, la organizacin de memoria en particiones fijas es relativamente simple y efectiva.
En el caso anterior, los programas permanecern en memoria hasta completar su ejecucin. Con tiempo compartido, la situacin es diferente, ya que normalmente se tendr ms usuarios que particiones (o memoria), por lo que es necesario guardar procesos en disco. El paso de procesos de memoria a disco y viceversa se llama: intercambio o swapping.
30

Gestin de Procesos
Que es un Proceso?
Un programa en ejecucin Una instancia de un programa ejecutndose en un computador Entidad que puede ser asignada a, y ejecutada en, un procesador Una unidad de actividad caracterizada por un nico hilo secuencial de ejecucin, un estado actual y un conjunto de recursos del sistema asociados.

31

Gestin de Procesos

Proceso
Consiste de tres componentes:
Un programa ejecutable Datos asociados, necesarios para el programa

Contexto de ejecucin del programa


Contiene toda la informacin que el S.O. requiere para administrar el proceso (contador de programa, registrador de instruccin, pila o stack, otros)

32

Gestin de Procesos

Cambio de contexto
Existe una estructura de datos que contiene informacin respecto del programa en ejecucin (RI, PC, Registros, otros).
Cuando un programa debe entregar la CPU, otro programa se ejecutar debiendo cargarse su estructura de datos.

33

Gestin de Procesos

Cambio de contexto

34

Gestin de Procesos

Despachador
Programa que mueve el procesador desde un proceso a otro Debe prevenir que un proceso monopolice el tiempo del procesador

35

Gestin de Procesos

Modelo de procesos con dos estados


Dispatch

Enter

Not Running

Running

Exit

Pause (a) State transition diagram

Queue Enter Dispatch Processor Exit

Pause (a) Queuing diagram

36

Los estados del proceso

Transiciones entre estados


1. El proceso se bloquea por E/S 2. El proceso se suspende por time-out 3. El planificador selecciona un proceso de la fila de los ready 4. El proceso termina su E/S y es desbloqueado Estados de un proceso: Running: esta utilizando la CPU, ejecutando sus instrucciones Blocked: a la espera de finalizacin de la E/S Ready: a la espera de ser seleccionado para ocupar la CPU
37

You might also like