unidad 2 administración de procesos y del procesador

7

Click here to load reader

Upload: porfis-aguilar-trejo

Post on 30-Jul-2015

631 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: UNIDAD 2 Administración de Procesos y del procesador

INGENIERÍA EN

SISTEMAS COMPUTACIONALES

MATERIA:

“Sistemas Operativos”

TEMA:

“ADMINISTRACION DE PROCESOS Y DEL PROCESADOR”

TERCER SEMESTRE

PRESENTA

PORFIRIO AGUILAR TREJO

AJALPAN, PUEBLA, SEPTIEMBRE DE 2012

Page 2: UNIDAD 2 Administración de Procesos y del procesador

CONCEPTO DE PROCESO.

Un proceso es un concepto manejado por el sistema operativo que consiste en el conjunto formado por las instrucciones de un programa destinadas a ser ejecutadas por el microprocesador.

La diferencia entre un programa y un proceso, y básicamente la diferencia es que un proceso es una actividad de cierto tipo que contiene un programa, entradas salidas y estados.

Los procesos pueden ser cooperantes o independientes, en el primer caso se entiende que los procesos interactúan entre sí y pertenecen a una misma aplicación. En el caso de procesos independientes en general se debe a que no interactúan y un proceso no requiere información de otros o bien porque son procesos que pertenecen a distintos usuarios.

ESTADOS Y TRANSICIONES DE LOS PROCESOS.

Estados de los procesos

• Listo: son los que pueden pasar a estado de ejecución si el planificador los selecciona.

• En ejecución: son los que se están ejecutando en el procesador en ese momento dado.

• Bloqueado: en estado bloqueado están esperando la respuesta de algún otro proceso para poder continuar con su ejecución.

TRANSICIONES

La transacción 1: ocurre cuando un proceso descubre que no puede continuar.

Las transiciones 2 y 3 son causadas por el planificador de procesos, un parte del sistema operativo, sin que el proceso se entere siquiera de ellas.

La transición 2: ocurre cuando el planificador decide que el proceso en ejecución ya se ejecuto durante suficiente tiempo y es ahora de dejar que otros procesos tengan algo de tiempo de CPU.

La transacción 3: ocurre cuando todos los demás procesos han disfrutado de una porción justa y es hora de que el primer proceso reciba otra vez la CPU para ejecutarse.

Page 3: UNIDAD 2 Administración de Procesos y del procesador

La transacción 4: ocurre cuando acontece el suceso externo que un proceso estaba esperando (como la llegada de entrada).

PROCESOS LIGEROS: HILOS O HEBRAS.

Un proceso ligero (thread o hebra) es un programa en ejecución que comparte la imagen de la memoria y otras informaciones con otros procesos ligeros.

Es una unidad básica de utilización de la CPU consistente en un juego de registros y un espacio de pila. Comparte el código, los datos y los recursos con sus hebras pares.

Una tarea (o proceso pesado) está formada ahora por una o más hebras.

Una hebra sólo puede pertenecer a una tarea.

(TAREA CON UNA Y VARIAS HEBRAS)

Page 4: UNIDAD 2 Administración de Procesos y del procesador

CARACTERISTICAS

Se comparten recursos. La compartición de la memoria permite a las hebras pares comunicarse sin usar ningún mecanismo de comunicación inter-proceso del SO.

Un proceso ligero puede estar ejecutando, listo o bloqueado.

ESTADOS DE LOS PROCESOS LIGEROS

(PARALELISMO)

Los procesos ligeros permiten paralelizar una aplicación.

CONCURRENCIA Y SECUENCIABILIDAD.

Los procesos son concurrentes si existen simultáneamente. Cuando dos o más procesos llegan al mismo tiempo a ejecutarse, se dice que se ha presentado una concurrencia de procesos. Para que dos o más procesos sean concurrentes, es necesario que tengan alguna relación entre ellos.

La concurrencia es la propiedad de los sistemas que permiten que múltiples procesos sean ejecutados al mismo tiempo, y que potencialmente puedan interactuar entre sí.

Existen tres modelos de computadora en los que se pueden ejecutar procesos concurrentes:

Page 5: UNIDAD 2 Administración de Procesos y del procesador

• Multiprogramación con un único procesador. El sistema operativo se encarga de ir repartiendo el tiempo del procesador entre los distintos procesos, intercalando la ejecución de los mismos para dar así una apariencia de ejecución simultánea.

• Multiprocesador. Es una maquina formada por un conjunto de procesadores que comparten memoria principal.

• Multicomputadora. Es una maquina de memoria distribuida, que está formada por una serie de computadoras.

En general, la concurrencia será aparente siempre que el número de procesos sea mayor que el de procesadores disponibles, es decir, cuando haya más de un proceso por procesador. La concurrencia será real cuando haya un proceso por procesador.

Existen diversas razones que motivan la ejecución de procesos concurrentes en un sistema:

• Facilita la programación de aplicaciones al permitir que éstas se estructuren como un conjunto de procesos que cooperan entre sí para alcanzar un objetivo común.

• Acelera los cálculos. Si se quiere que una tarea se ejecute con mayor rapidez, lo que se puede hacer es dividirla en procesos, cada uno de los cuales se ejecuta en paralelo con los demás.

• Posibilita el uso interactivo a múltiples usuarios que trabajan de forma simultánea.

• Permite un mejor aprovechamiento de los recursos, en especial de la CPU, ya que pueden aprovechar las fases de entrada-salida de unos procesos para realizar las fases de procesamiento de otros.

NIVELES, OBJETIVOS Y CRITERIOS DE PLANIFICACIÓN.

La planificación hace referencia a un conjunto de políticas y mecanismos incorporados al sistema operativo que gobiernan el orden en que se ejecutan los trabajos que deben ser cumplimentados por el sistema informático.

El objetivo principal de la planificación es optimizar el rendimiento del sistema y proporcionar un buen servicio a todos los procesos que se encuentren en el. En general, la planificación trata de cubrir los siguientes objetivos:

• Planificación.

• Máxima capacidad de ejecución

• Máximo número de usuarios interactivos.

Page 6: UNIDAD 2 Administración de Procesos y del procesador

• Predecibilidad.

• Minimización de la sobrecarga.

• Equilibrio en el uso de recursos.

• Seguridad de las prioridades. .

• Evitar la postergación indefinida.

Los criterios que se pueden utilizar son los siguientes:

• Utilización del CPU: aquí se pretende utilizar el procesador al máximo, es decir en una escala del 0 al 100% de utilización.

• Tasa de procesamiento: si el CPU está ocupado ejecutando procesos, se estará llevando a cabo un trabajo. Un proceso largo se considera el que se terminara uno por hora, los cortos son los que se pueden completar en 10 minutos o menos.

• Tiempo de ejecución: este es el intervalo que va desde la iniciación del proceso hasta su terminación. Este es la suma de los periodos que el proceso invierte en espera para cargarse en memoria, esperar en la cola de procesos preparados, ejecutarse en el CPU y realizar las operaciones de E/S.

• Tiempo de espera: este es la suma de los periodos invertidos en la espera en la cola de procesos preparados.

• Tiempo en respuesta: es el tiempo en que un proceso tarda en empezar a responder, no el tiempo en que tarda en enviar una salida toda la información de respuesta.

Page 7: UNIDAD 2 Administración de Procesos y del procesador

TÉCNICAS DE ADMINISTRACIÓN DEL PLANIFICADOR.

Se refieren a los diferentes algoritmos que puede utilizar el planificador para asignar recursos del procesador para la ejecución de procesos en base al tipo de proceso, tiempo de ejecución, prioridad, etc.

Hay dos tipos de técnicas de administración:

• Los algoritmos apropiativos, en los que un proceso se ejecuta hasta que termina o hasta que este se bloquea.

• No apropiativos, en los que un proceso en ejecución puede interrumpirse y pasarse a una cola de procesos listos que se está ejecutando puede ser interrumpido y pasado a cola de listos si el sistema operativo lo considera prudente.