Procesos e hilos

Solo disponible en BuenasTareas
  • Páginas : 5 (1083 palabras )
  • Descarga(s) : 0
  • Publicado : 14 de septiembre de 2010
Leer documento completo
Vista previa del texto
Sistemas Operativos Tema 4. Procesos

© 1998-2008 José Miguel Santos – Alexis Quesada – Francisco Santana
1

Contenidos
Concepto de proceso Estructuras de datos: BCP y colas de procesos Niveles de planificación Creación y finalización de procesos Hilos

2

Concepto de proceso
Un proceso es un programa en ejecución Un proceso necesita recursos para poder ejecutarse: memoria,dispositivos de E/S, la CPU, etc. Áreas típicas de la memoria:
código datos (variables globales, memoria dinámica) pila (parámetros y variables locales de subrutinas)

3

Estados de un proceso
A medida que un proceso se ejecuta, cambia de estado:
nuevo: recién creado por el S.O. en ejecución: está en la CPU ejecutando instrucciones bloqueado: esperando a que ocurra algún evento (ej. una operaciónde E/S) preparado: esperando a que le asignen un procesador terminado: no ejecutará más instrucciones y el S.O. le retirará los recursos que consume

4

Estados de un proceso
admitido planificador llamada al sist. o excepción

nuevo

terminado

preparado
interrupción

ejecución

finaliza la operación u ocurre el evento

llamada al sist. de E/S o espera por un evento

bloqueado5

Bloque de control de proceso (BCP)
Para cada proceso, el S.O. debe guardar su estado y cualquier otra información que debe mantenerse mientras no está en ejecución. Bloque de control de proceso:
estado actual (preparado, en espera...) registros de la CPU (contador de programa, otros registros) información del planificador (id, prioridad, etc.) apuntadores a las zonas de memoria delproceso info. de contabilidad (tiempo consumido, etc.) info. de E/S (dispositivos por los que espera, lista de archivos abiertos, etc.) etc.

6

Planificación de procesos
Objetivo de la multiprogramación:
Maximizar el aprovechamiento de la CPU

Objetivo del tiempo compartido
Conmutar la CPU entre procesos con tal frecuencia que los usuarios puedan interactuar con cada programa durante suejecución

Sistemas con un solo procesador
Los procesos esperan por CPU y por dispositivos de E/S

7

Cola de planificación
Conjunto de procesos esperando por la utilización de un determinado recurso Generalmente se implementa mediante una lista encadenada, donde cada elemento es una estructura de control que representa la petición a servir Su administración se lleva a cabo de acuerdo con lapolítica de planificación ejecutada por el planificador del recurso
PLANIFICADOR (política de planificación) cola de planificación

recurso
estructura de control (petición)

8

Colas de procesos
El S.O. organiza los BCP en colas de espera por el procesador o por los dispositivos de E/S. (colas de planificación: cola de procesos, colas de dispositivos)
cola de preparados

CPU

E/Scola de espera por E/S

E/S

cola de espera por E/S

9

Procesos: ubicación en memoria
SO
BCPPA BCPPB BCPPN

Espacio del núcleo

. . . BCPPA código datos Espacio de usuario pila . . . BCPPB código datos pila . . . Proceso de usuario A

Proceso de usuario B

10

Niveles de planificación
En los sistemas por lotes, existe un planificador de largo plazo (PLP) o de alto nivel,que suministra procesos a la cola de preparados. El planificador de corto plazo o de bajo nivel es el que asigna y desasigna la CPU. El PLP trata de conseguir una mezcla adecuada de trabajos intensivos en CPU y en E/S. Se ejecuta con poca frecuencia. Planificador de medio plazo. Envía al disco procesos bloqueados, para liberar memoria principal a los otros procesos => Intercambio (swapping).

11 Niveles de planificación
cola de trabajos

PLP
cola de preparados

PCP
CPU

E/S

cola de espera por E/S

PMP
memoria secundaria

12

Cambio de contexto

(context switch)

Es la operación que consiste en desalojar a un proceso de la CPU y reanudar otro. Hay que guardar el estado del proceso que sale en su BCP, y recuperar los registros del proceso que entra. Cada...
tracking img