Procesos - Sistemas Operativos

1,487 views
1,363 views

Published on

Presentanción de Unidad II

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,487
On SlideShare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
63
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Procesos - Sistemas Operativos

  1. 1. PROCESOS Ing. Richard Galea [email_address] Este material es una guía instruccional y por ningún motivo se debe considerar como el contenido exclusivo de evaluación para la materia. UNIVERSIDAD NACIONAL EXPERIMENTAL POLITÉCNICA DE LA FUERZA ARMADA NACIONAL SISTEMAS OPERATIVOS // SYC-30834
  2. 2. Que es un proceso <ul><li>Es un programa en ejecución  Cargado en memoria </li></ul><ul><li>Características: </li></ul><ul><li>Program Counter </li></ul><ul><li>Stack </li></ul><ul><li>Data section </li></ul><ul><li>Jerarquía de Árbol </li></ul><ul><li>PID </li></ul>UNIVERSIDAD NACIONAL EXPERIMENTAL POLITÉCNICA DE LA FUERZA ARMADA NACIONAL Lista de Procesos Proceso A Proceso B Memoria Principal PCB PCB texto texto datos datos Registros Procesador PC pila pila PCB: Process Control Block .- Localización de la información sobre el proceso por parte del S.O. .- Mantener registrados los datos del proceso en caso de tener que suspender temporalmente su ejecución.
  3. 3. Estados y Transiciones <ul><li>Son internos del S.O y Transparentes al usuario </li></ul><ul><li>Activos e inactivos </li></ul>UNIVERSIDAD NACIONAL EXPERIMENTAL POLITÉCNICA DE LA FUERZA ARMADA NACIONAL Identificador  internos ( sistemas), externo (Usuario) Descripción de la máquina virtual asociada  tipo de mapeo, acceso Descripción de los recursos de la máquina que usa  prioridad, lista de recursos Estados funcionales del proceso  son internos Descubre que no puede continuar El planificador decide que el proceso en ejecución ya ha corrido el tiempo suficiente y es tiempo de permitir que otro proceso tome tiempo de CPU. Han utilizado su parte del tiempo y es hora de que el primer proceso vuelva a correr Ocurre cuando aparece el evento externo que estaba esperando un proceso. Si ningún otro proceso corre en ese instante, la transición 3 se activará de inmediato y el proceso iniciara su ejecución, de lo contrario tendrá que esperar, en estado listo. Control del procesador Dispuesto a ser ejecutado No pueden ejecutarse de momento Listo y Suspendido Bloqueado y Suspendido } Descriptor de Procesos
  4. 4. Procesos Ligeros (Threads) <ul><li>Función cuya ejecución va en paralelo </li></ul><ul><li>Ejecución </li></ul>UNIVERSIDAD NACIONAL EXPERIMENTAL POLITÉCNICA DE LA FUERZA ARMADA NACIONAL <ul><li>Informaciones propias </li></ul><ul><ul><li>Contador de programa </li></ul></ul><ul><ul><li>Pila </li></ul></ul><ul><ul><li>Registros </li></ul></ul><ul><ul><li>Estado (ejecutando, listo o bloqueado) </li></ul></ul><ul><li>Comparten </li></ul><ul><ul><li>Espacio de memoria </li></ul></ul><ul><ul><li>Variables globales </li></ul></ul><ul><ul><li>Archivos abiertos </li></ul></ul><ul><ul><li>Procesos hijos </li></ul></ul><ul><ul><li>Señales y semáforos </li></ul></ul><ul><ul><li>Contabilidad </li></ul></ul>Estructura <ul><li>El estado del proceso será la combinación de los estados de sus procesos ligeros: </li></ul><ul><li>Si tiene un proceso ligero en ejecución, el proceso (padre) está en ejecución . </li></ul><ul><li>Si no tiene procesos ligeros en ejecución, pero tiene alguno listo, el proceso está en estado de listo . </li></ul><ul><li>Si todos los procesos ligeros están bloqueados, el proceso está bloqueado. </li></ul>Thread 1 Registros Pila Entorno del proceso Recursos Datos Código Thread n Registros Pila ...... Proceso Procesos ligeros Activo Bloqueado por acceso a dis co Bloqueado por comunicación
  5. 5. Comunicación - Sincronización <ul><li>Exclusión mutua : si un proceso Pi está en su sección crítica, ningún otro proceso puede estar ejecutando su sección crítica </li></ul><ul><li>Progreso : si un proceso Pi está en su sección crítica, y otro proceso desea entrar a su sección crítica, sólo los procesos que no estan en el resto del código, pueden participar de la decisión de qué proceso entrará próximamente, y esta selección no se puede postergar indefinidamente </li></ul><ul><li>Espera Acotada : un proceso no puede quedar esperando indefinidamente a entrar en su sección crítica </li></ul>UNIVERSIDAD NACIONAL EXPERIMENTAL POLITÉCNICA DE LA FUERZA ARMADA NACIONAL Deben existir los mensajes: Send(mensaje) / Recive(mensaje) 1.- Comunicación Directa: cada proceso debe explícitamente indicar el nombre del proceso fuente o destino 2.- Interacción Productor / Consumidor 3.- Direccionamiento simétrico y asimétrico 4.- Comunicación indirecta (mail box) Procesos cooperativos: cooperan en torno a una tarea común Semáforos: es una variable entera que es accesada a través de dos operaciones atómicas llamadas wait y signal Sección Crítica y Solución Ambos procesos tienen una parte de su código en el cual accesan variables compartidas
  6. 6. Planificación - Scheduling <ul><li>Justicia o Imparcialidad : todos los procesos son tratados de la misma forma, cada proceso obtiene su porción justa del CPU </li></ul><ul><li>Maximizar la producción : el sistema debe de finalizar el mayor número de procesos por unidad de tiempo </li></ul><ul><li>Maximizar el tiempo de respuesta : cada usuario o proceso debe observar que el sistema les responde consistentemente a sus requerimientos </li></ul><ul><li>Evitar el aplazamiento indefinido : los procesos deben terminar en un plazo finito de tiempo </li></ul><ul><li>El sistema debe ser predecible : ante cargas de trabajo ligeras el sistema debe responder rápido y con cargas pesadas debe ir degradándose </li></ul>UNIVERSIDAD NACIONAL EXPERIMENTAL POLITÉCNICA DE LA FUERZA ARMADA NACIONAL Técnicas que se usan para decidir cuánto tiempo de ejecución y cuando se le asignan a cada proceso del sistema Niveles de planificación (decidir): Alto (a convertirse en procesos compitiendo) Medio (suspender o reanudar) Bajo (le toca ahora ejecutarse) Objetivos
  7. 7. Planificación - Scheduling <ul><li>Cantidad de E/S : bases de datos </li></ul><ul><li>Cantidad de uso de CPU : operaciones con matrices </li></ul><ul><li>Procesos por lotes : lectura de datos </li></ul><ul><li>Procesos en tiempo real : prioridad por turnos </li></ul><ul><li>Longevidad de los procesos : más tiempo o menos tiempo </li></ul>UNIVERSIDAD NACIONAL EXPERIMENTAL POLITÉCNICA DE LA FUERZA ARMADA NACIONAL Caracteristicas a considerar de los procesos Apropiativa / Expulsiva No apropiativa / No Expulsiva Una vez que un proceso le toca su turno de ejecución ya no puede ser suspendido Reloj que lanza interrupciones periódicas Planificador Scheduler Itinerador De job: disco  memoria De CPU: cola ready  CPU
  8. 8. Planificación - Scheduling <ul><li>Utilización de la CPU : % de tiempo que la CPU está ocupada </li></ul><ul><li>Throughput : número de procesos por unidad de tiempo </li></ul><ul><li>Tiempo turnaround : intervalo de tiempo desde la entrega del proceso al sistema hasta su finalización </li></ul><ul><li>Tiempo de espera : suma de todos los tiempos que un proceso espera en la cola sin ocupar CPU </li></ul><ul><li>Tiempo de respuesta : es el tiempo que transcurre entre un requerimiento hasta el comienzo de la respuesta </li></ul>UNIVERSIDAD NACIONAL EXPERIMENTAL POLITÉCNICA DE LA FUERZA ARMADA NACIONAL Criterios de itineración <ul><li>Peluquería (First Come First Served) </li></ul><ul><li>El más corto primero (Short Job First) </li></ul><ul><li>Prioridad </li></ul><ul><li>Round Robin (RR) </li></ul><ul><li>Colas multinivel (Queves multi-level) </li></ul>Algoritmos de itineración
  9. 9. Planificación - Scheduling <ul><li>Es el más sencillo </li></ul><ul><li>Se realiza mediante una cola FIFO </li></ul>UNIVERSIDAD NACIONAL EXPERIMENTAL POLITÉCNICA DE LA FUERZA ARMADA NACIONAL First Come First Served Ventajas Desventajas Ningún proceso espera indefinidamente .- El tiempo medio de espera suele ser elevado .- Bajo nivel de utilización de la CPU .- Pobre tiempo de respuesta en procesos cortos en esquemas con mucha carga .- Tiende a favorecer a los procesos con carga de CPU frente a los que tienen carga de E/S .- Uso ineficiente de los dispositivos de E/S
  10. 10. Planificación - Scheduling <ul><li>Asocia cada proceso con el tiempo de ejecución, tiempo que ocupo CPU la última vez antes de cambiarse a estado de espera </li></ul><ul><li>CPU es asignada a proceso con el menor tiempo de ejecución </li></ul><ul><li>Si dos procesos tienen igual tiempo de ejecución se aplica FCFS </li></ul>UNIVERSIDAD NACIONAL EXPERIMENTAL POLITÉCNICA DE LA FUERZA ARMADA NACIONAL Ventajas Desventajas Parece perfecto Mejor tiempo de espera promedio que FCFS .- Espera indefinida ? .- Cómo estimar tiempo de procesamiento de próximo requerimiento de procesos ? Shortest Job First
  11. 11. Planificación - Scheduling <ul><li>SJF es un caso especial de este tipo </li></ul><ul><li>Se asocia una prioridad a cada proceso y se le asigna CPU a la de mayor prioridad </li></ul><ul><li>Si dos procesos tienen igual tiempo de ejecución se aplica FCFS </li></ul><ul><li>La prioridad se expresa como un rango de números. Generalmente los números menores representan alta prioridad </li></ul>UNIVERSIDAD NACIONAL EXPERIMENTAL POLITÉCNICA DE LA FUERZA ARMADA NACIONAL Por Prioridad
  12. 12. Planificación - Scheduling <ul><li>Es uno de los más usados, sencillos, equitativos </li></ul><ul><li>A cada proceso se le asigna un intervalo de tiempo llamado Quantum </li></ul><ul><li>Un proceso se ejecuta durante ese Quantum de tiempo </li></ul><ul><li>Pueden suceder dos cosas: </li></ul><ul><li>.- El proceso tiene una ráfaga de CPU < Quantum termina antes del Q y se planifica un nuevo proceso </li></ul><ul><li>.- El proceso tiene una ráfaga de CPU > Quantum acaba Q, se le expulsa de la CPU dando paso a otro proceso y el proceso se colocará al final de la cola de procesos listos </li></ul>UNIVERSIDAD NACIONAL EXPERIMENTAL POLITÉCNICA DE LA FUERZA ARMADA NACIONAL Round Robin
  13. 13. Planificación - Scheduling <ul><li>Idea, separar procesos en base a sus necesidades de ejecución </li></ul><ul><li>Procesos interactivos están en las colas de mayor prioridad </li></ul><ul><li>Procesos que usan mucha CPU se cambian a colas de menor prioridad </li></ul><ul><li>Procesos que llevan mucho tiempo en el sistema se cambian a colas de mayor prioridad </li></ul>UNIVERSIDAD NACIONAL EXPERIMENTAL POLITÉCNICA DE LA FUERZA ARMADA NACIONAL Colas Multinivel Retroalimentadas
  14. 14. Planificación - Scheduling UNIVERSIDAD NACIONAL EXPERIMENTAL POLITÉCNICA DE LA FUERZA ARMADA NACIONAL Preguntas

×