domingo, 18 de abril de 2010

Diecisieteava clase

Hilos Windows, estructura de un proceso en Windows

Implementa mapeo uno a uno

Cada hilo contiene

Ø Una id

Ø Conjunto de registros

Ø Pilas de usuarios y kernel separadas

Ø ESTADO DE HILOS EN WINDOWS

Ejecutables: hilo en posibilidad de ejecutarse: listo, Stanby, Ejecutando

No ejecutable: Transición, Esperando, Finalizado

Ø ESTADOS DE HILOS DE PROCESOS EN LINUX

Comparten el mismo

Ø ESTADO DE HILOS EN SOLARIS

Ejecutables: Planificables x el procesador

No ejecutables: No planificables x el procesador

HILOS DE JAVA PUDEN SER CREADOR POR:

Ø Extensión de la clase de hilos

Ø Implementando una interface que los corra

PLANIFICACIÓN DE LA CPU

Conceptos Básicos

Se encarga como es q se utiliza el procesador, sistemas multiprogramados varios procesos a la vez. Tratar de repartir tiempos, algoritmos de planificación es buena opción para desarrollar este tipo de actividades.

Ø La máxima utilización de la CPU se obtiene con multiprogramación

Ø El ciclo de ráfagas de CPU-E/S- El proceso de ejecución consiste en un

Ø Distribución de ráfagas de CPU

Planificador de CPU

Ø Selecciona de los procesos en memoria aquellos que estén listos para ejecutar, y le entrega la CPU a uno de ellos

Ø Las decisiones de planificación de CPU tiene lugar cuando un proceso:

1. Conmuta de un estado de corrida a un estado de espera

2. Conmuta de un estado de corrida a un estado de listo

3. Conmuta de esperando a listo

4. Termina

Ø La planificación en 1 y 4 no es expropiativa, en los otros es expropiativa (escoge para ejecutar el de mejores condiciones (que el tiempo de ejecución sea menor que el tiempo de atención))

Despachador

Ø Le da control de la CPU al proceso seleccionado por el planificador de corto plazo, esto incluye

1. Conmutación de contexto

2. Conmutación al modo usuario

3. Saltar a la ubicación adecuada en el programa del usuario para reiniciar el programa

Latencia de despacho

Tiempo en que se demora el despachador para parar un proceso e iniciar otro.

Criterios de planificación

Ø Utilización de CPU-Mantener la CPU tan ocupada como sea posible

Ø Rendimiento: numero de procesos que culminan su ejecución por unidad de tiempo

Ø Tiempo de entrega/estancia/retorno

Ø Tiempo de esprea

Ø Tiempo de respuesta

Ø Predicibilidad: Determinístico, bajo las mismas condiciones debe realizar lo mismo y hacer lo mismo

Ningún proceso se muere por inanición, todo proceso debe progresar.

Ø Máxima utilización de CPU

Ø Máximo rendimiento

Ø Minimizar el tiempo de entrega

Ø Minimizar el tiempo de espera

Ø Minimizar el tiempo de respuesta

Ø Justicia

Ø Máximo num de usuarios intereactivos

Ø Máxima capacidad de ejecución

Ø Predicibilidad

Ø Minimización de sobrecarga

Algoritmos de planificación

Reglas por medio de las cuales el sistema determina quién debe ser el primero en iniciar

Ø FCFS/PEPS: Los procesos cortos sufren si llegan después de los procesos largos, a veces justa, predecible.

Ø SJF/SPN: el tiempo restante compensa a todos

Ø Round-Robin, asignación cíclica/turno. Equilibra FCFS/SRTN, usa cola circular con FCFS/ prioridades con slice/quantum para cada proceso

Ø Por prioridad, siempre se elige el de mayor prioridad, compensada por prioridad envejecimiento (la compensación por envejecimiento, mejora la prioridad de los procesos para no dejar de atenderlos)

Ø HRN: Escoge el proceso con tasa de respuesta más alto, es costosa Prioridad=(w+s)/s

Ø MLQ, Colas multinivel: Combina procesos del sistema (por prioridad), interactivos(RR), lotes (FCFS/SRTN)

Ø MLQ con retroalimentación: Los procesos se pueden reubicar en diferentes colas de acuerdo al comportamiento. Los procesos limitados por procesos se envían a la cola de menor prioridad, los interactivos se ubican con mayor prioridad

Ø FSS (fair shale schedule), porción justa o reparto equitativo, los grupo de porción justa obtiene prioridades de acuerdo con su proximidad al logro de sus metas en la utilización de recursos. Los grupos que van mal tienen mayor prioridad.

No hay comentarios:

Publicar un comentario