Sistemas Operativos - PowerPoint PPT Presentation

1 / 35
About This Presentation
Title:

Sistemas Operativos

Description:

Es posible familiarizar a los procesos de acuerdo con el nivel de creaci n que ... un mismo proceso es mucho mas barato que cambio de contexto entre procesos (no ... – PowerPoint PPT presentation

Number of Views:220
Avg rating:3.0/5.0
Slides: 36
Provided by: edop
Category:

less

Transcript and Presenter's Notes

Title: Sistemas Operativos


1
Sistemas Operativos
PROCESOS
SOP3161 Semestre 2005-I Eduardo Peña J.
Präsentation
Edopena
1

Sistemas Operativos
2
Es posible familiarizar a los procesos de
acuerdo con el nivel de creación que tienen entre
ellos conservando las siguientes reglas
Procesos
Jerarquía de procesos
  • El proceso que crea a otro es el padre del
    creado.
  • El proceso creado es el hijo del proceso creador.
  • Es sólo necesario un padre para crear un hijo.
  • Cada hijo tiene un solo padre y un padre puede
    tener varios hijos.

Edopena
2
Sistemas
Operativos
3
Jerarquía de creación de procesos
Procesos
Jerarquía de procesos
A
B
D
C
E
F
G
H
I
Edopena
3
Sistemas
Operativos
4
Suspensión y Reanudación
Procesos
Suspensión y Reanudación
  • Si un sistema está funcionando mal y es
    probable que falle, se puede suspender los
    procesos activos para reanudarlos cuando se haya
    corregido el problema.
  • Un usuario que desconfíe de los resultados
    parciales de un proceso puede suspenderlo (en vez
    de abortarlo) hasta que verifique si el proceso
    funciona correctamente o no.
  • Algunos procesos se pueden suspender como
    respuesta a las fluctuaciones a corto plazo de la
    carga del sistema y reanudarse cuando las cargas
    regresen a niveles normales.

Edopena
4

Sistemas Operativos
5
Procesos
Suspensión y Reanudación
  • La suspensión puede ser iniciada por el propio
    proceso o por otro.
  • En un sistema con un solo procesador, sólo
    será posible suspender un proceso que esté en
    estado de ejecución, es decir se suspende a sí
    mismo.
  • Cuando se habla de más de un procesador puede
    darse dos casos
  • Suspenderse a sí mismo
  • Ser suspendido por otro proceso

Edopena
5

Sistemas Operativos
6
Diagrama de transiciones de estado de los
procesos, modificado para incluir las operaciones
de suspensión y reanudación.
Procesos
Suspensión y Reanudación
Edopena
6

Sistemas Operativos
7
Procesos
Suspensión y Reanudación
TENERSE EN CUENTA QUE LA SUSPENSIÓN ES UNA
ACTIVIDAD DE ALTA PRIORIDAD, QUE DEBE SER
EFECTUADA INMEDIATAMENTE.
Edopena
7

Sistemas Operativos
8
Procesos
Procesamiento de Interrupciones
Procesamiento de Interrupciones
Edopena
8

Sistemas Operativos
9
Procesos
Procesamiento de Interrupciones
Procesamiento de Interrupciones
  • En un sistema de cómputo, una interrupción es un
    evento que altera la secuencia en que el
    procesador ejecuta las instrucciones. Es generada
    por el Hw.

Edopena
9

Sistemas Operativos
10
Procesos
Procesamiento de Interrupciones
  • Cuando ocurre una interrupción .
  • El SO toma el control (Hw pasa el control al SO).
  • El SO guarda el estado del proceso interrumpido
    (PCB).
  • El SO analiza la interrupción y transfiere el
    control a la rutina apropiada para atenderla.
  • La rutina del manejador de interrupciones procesa
    la interrupción.
  • Se reestablece el estado del proceso
    interrumpido.
  • Se ejecuta el proceso interrumpido.

Edopena
10

Sistemas Operativos
11
Procesos
Procesamiento de Interrupciones
  • Tipos de Interrupciones.
  • Interrupciones SVC (Supervisor call). Iniciado
    por proceso en ejecución. Mecanismo de
    protección del SO.
  • Interrupciones de E/S. Iniciadas por Hw, indican
    cambio de estado de un canal o dispositivo.
  • Interrupciones externas. Causadas por diversos
    eventos.

Edopena
11
Sistemas
Operativos
Präsentation
12
Procesos
Procesamiento de Interrupciones
  • Tipos de Interrupciones.
  • Interrupciones de reinicio. Cuando se presiona
    boton de reinicio de la consola o cuando llega un
    SGP (Signal process) de otro procesador.
  • Interrupciones de verificación del programa.
    Pueden ocurrir cuando se ejecutan instrucciones
    en lenguaje de máquina de un programa. (División
    por cero, exceso, etc).
  • Interrupciones de verificación de la máquina.
    Ocasionadas por el mal funcionamiento del
    hardware.

Edopena
12
Sistemas
Operativos
Präsentation
13
Procesos
Procesamiento de Interrupciones
TENERSE EN CUENTA QUE LAS INTERRUPCIONES SON
MUCHAS Y LAS NOMBRADAS AQUÍ PERTENECEN A LOS
SISTEMAS OPERATIVOS VMS Y VM DE LA IBM.
Edopena
13
Sistemas
Operativos
Präsentation
14
Procesos
Cambio de contexto
  • Cambio de contexto
  • Es denominado al producirse una interrupción.
  • Cuando esto sucede el SO guarda el estado del
    proceso interrumpido y dirige el control del
    sistema al MANEJADOR DE INTERRUPCIONES (IH).
  • Serán las PSW (palabras de estado de programas)
    las que controlan el orden de ejecución de las
    interrupciones.

Edopena
14
Sistemas
Operativos
15
Procesos
Cambio de contexto
  • Tipos de PSW
  • ACTUAL
  • NUEVO
  • VIEJO
  • Se guardará información
  • Dirección siguiente instrucción.
  • Tipos de interrupciones habilitadas.
  • Tipos de interrupciones deshabilitadas.

Edopena
15
Sistemas
Operativos
16
Procesos
Cambio de contexto
PSW viejas
PSW nuevas
SVC
SVC
IN/OUT
IN/OUT
PSW actual
externas
externas
reinicio
reinicio
Intercambio de PSW durante proceso de interrupción
Verif. programa
Verif. programa
Verif. máquina
Verif. máquina
Edopena
16
Sistemas
Operativos
17
Procesos
El Núcleo del Sist. Op.
  • EL NUCLEO DEL SISTEMA OPERATIVO.
  • Pequeña parte del código del SO total, y es el
    que más se usa.
  • Cualquier cosa que se haga con procesos son
    controladas por el NUCLEO.

Edopena
17
Sistemas
Operativos
18
Procesos
El Núcleo del Sist. Op.
  • EL NUCLEO DEBE CONTENER LAS SIGUIENTES FUNCIONES
  • Manejo de las Interrupciones.
  • Creación y destrucción de los procesos.
  • Cambio de estados de Proceso.
  • Despacho.
  • Sincronización de Procesos.
  • Comunicación entre Procesos.

Edopena
18
Sistemas
Operativos
19
Procesos
El Núcleo del Sist. Op.
  • EL NUCLEO DEBE CONTENER LAS SIGUIENTES FUNCIONES
  • Manipulación de Bloques de Control de Procesos
    (PCB).
  • Soporte de actividades de entrada y salida.
  • Soporte de asignación y desasignación del
    almacenamiento.

Edopena
19
Sistemas
Operativos
Präsentation
20
Procesos
El Núcleo del Sist. Op.
  • EL NUCLEO DEBE CONTENER LAS SIGUIENTES FUNCIONES
  • Soporte del sistema de archivos.
  • Soporte de funciones contables del sistema.
  • Soporte del mecanismo de llamada y regreso al
    procedimiento.

Edopena
20
Sistemas
Operativos
Präsentation
21
Procesos
El Núcleo del Sist. Op.
  • SISTEMA JERÁRQUICO DEL SISTEMA OPERATIVO.

Procesos usuario
Proceso S.O.
NUCLEO
Hardware
Edopena
21
Sistemas
Operativos
Präsentation
22
Procesos
El Núcleo del Sist. Op.
Observación 1
Existen otros diseños no jerárquicos donde el
núcleo se distribuye por los niveles de la
jerarquía.
Edopena
22
Sistemas
Operativos
Präsentation
23
Procesos
El concepto de procesos
Observación 2
Puede acotarse que la tendencia es agrupar al
núcleo en microcódigo, lo que lo hace más seguro
y rápido.
Edopena
23
Sistemas
Operativos
Präsentation
24
Procesos
HEBRAS (Threads)
Hebras (Threads)
Problema del Productor Consumidor.
Consumidor
Buffer
Productor
Edopena
24
Sistemas
Operativos
Präsentation
25
Procesos
HEBRAS (Threads)
  • Si este problema se soluciona con dos procesos
    sus ventajas serían
  • Modularidad.
  • Disminución de tiempo de ejecución (mientras un
    proceso espero por I/O el otro puede realizar
    trabajo útil)
  • Los procesos deben sincronizarse entre sí, y
    deben compartir el buffer.
  • Los cambios de contexto son caros.

Edopena
25
Sistemas
Operativos
Präsentation
26
Procesos
HEBRAS (Threads)
  • Alternativa threads o hebras o procesos
    livianos.
  • Una hebra es un hilo de control dentro de un
    proceso.
  • Un proceso tradicional tiene solo una hebra de
    control.
  • Si usamos threads entonces podemos tener varias
    hebras dentro de un proceso.
  • Cada hebra representa una actividad o unidad de
    computación dentro del proceso.

Edopena
26
Sistemas
Operativos
Präsentation
27
Procesos
HEBRAS (Threads)
  • En muchos aspectos los procesos livianos son
    similares a los pesados comparten tiempo de CPU
    y a lo más un threads esta activo a la vez en un
    monoprocesador.
  • Los procesos pesados son independientes y el SO
    los protege.
  • Los procesos livianos dentro de uno pesado no
    son independientes (comparten recursos).

Edopena
27
Sistemas
Operativos
Präsentation
28
Procesos
El concepto de procesos
  • Comparación de hebras con procesos
  • Cambio de contexto entre hebras de un mismo
    proceso es mucho mas barato que cambio de
    contexto entre procesos (no incluye los registros
    y tablas asociadas a adm de memoria).
  • La creación de threads tambien es mucho mas
    barata, ya que la información que se requiere
    para mantener un threads es mucho menos que un
    PCB.

Edopena
28
Sistemas
Operativos
Präsentation
29
Procesos
El concepto de procesos
  • Comparación de hebras con procesos
  • El espacio de direccionamiento compartido
    facilita la comunicación entre las hebras y el
    comportamiento de recursos.

Edopena
29
Sistemas
Operativos
Präsentation
30
Procesos
El concepto de procesos
  • Implementación de hebras
  • Existen librerías que permiten implementarlas
    dentro de procesos normales sin apoyo del SO.
  • La planificación y manejo se hace dentro del
    proceso.
  • La alternativa es que el propio SO provea
    servicios de hebras.

Edopena
30
Sistemas
Operativos
Präsentation
31
Procesos
El concepto de procesos
  • Implementación de hebras
  • Las ventajas de las librerías, es que los
    cambios de contexto entre hebras de un mismo
    proceso son extremadamente rápidos.
  • La desventaja es que si una de las hebras hace
    una llamada bloqueante, el SO bloquea todo el
    proceso, aun cuando haya otras hebras listas para
    ejecutar.

Edopena
31
Sistemas
Operativos
Präsentation
32
Procesos
El concepto de procesos
  • Usos
  • Casos productores consumidores.
  • Servidores. Cada hebra puede manejar una
    solicitud.

Edopena
32
Sistemas
Operativos
Präsentation
33
Procesos
El concepto de procesos
  • Ejemplo
  • Servidor de archivos. Recibe solicitudes para
    leer y escribir archivos en un disco. Para
    mejorar el rendimiento, el servidor mantiene un
    caché con los datos más recientemente usados, en
    la eventualidad que reciba algún requerimiento
    para leer esos datos, no es necesario accesar al
    disco.

Edopena
33
Sistemas
Operativos
Präsentation
34
Procesos
El concepto de procesos
  • Ejemplo
  • Cuando recibe una solicitud, se le asigna a un
    thread para que la atiuenda. Si ese thread se
    bloquea porque tuvo que accesar el disco, otros
    threads pueden seguir atendiendo otras
    solicitudes.
  • La clave es que el buffer debe ser compartido
    por todos los threads, lo que no podría hacerse
    si se usa un proceso pesado para cada solicitud.

Edopena
34
Sistemas
Operativos
Präsentation
35
Procesos
  • Próximo tópico
  • COMUNICACIÓN DE PROCESOS

Edopena
35
Sistemas
Operativos
Präsentation
Write a Comment
User Comments (0)
About PowerShow.com