Administración de procesos y del procesador

Solo disponible en BuenasTareas
  • Páginas : 9 (2058 palabras )
  • Descarga(s) : 0
  • Publicado : 13 de marzo de 2012
Leer documento completo
Vista previa del texto
Administración de procesos y del procesador.
2.1 Concepto de proceso.
Un proceso es un programa en ejecución, 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 obien porque son procesos que pertenecen a distintos usuarios.

2.2 Estados y transiciones de los procesos.
Estados de los procesos
Un proceso puede estar en cualquiera de los siguientes tres estados:
* Nuevo: Cuando el proceso se está creando.
* Ejecución: Es cuando se están ejecutando instrucciones.
* Espera: Es cuando el proceso está esperando que ocurra un evento.
* Listo: Escuando un proceso está a la espera de ser asignado a un procesador.
* Terminado: Es cuando el proceso ha terminado su ejecución.
Transiciones de los procesos:
Cuando un proceso se crea, pasa a la cola de procesos listos. Se dice que existe una transición de estado cuando un proceso cambia de un estado a otro.
Los estados de transición son los siguientes:

* Nuevo-Listo: Este estadoindica que ha un proceso recién creado se le permite competir por los recursos del CPU.
* Listo-Ejecución: Es cuando a un proceso tiene la CPU a su disposición, aquí se encuentra en ejecución.
* Ejecución-Listo: Es cuando a un proceso se le expira el intervalo de tiempo asignado para estar en ejecución aquí existe un cambio de transición:

* Ejecución-Bloqueado: Esta transición sucedecuando un proceso realiza una operación de Entrada/Salida antes de que termine su tiempo de ejecución. El proceso abandona la CPU y se bloquea así mismo.
* Bloqueado-Listo: Ocurre cuando se acaba una operación de Entrada/Salida, terminando en el estado de Listo.

* Ejecución-Terminado: Esta transición ocurre cuando el proceso se ha terminado de ejecutarse, y pasa a un estado determinado.2.3 Procesos ligeros (hilos o hebras).
Un proceso:
* Unidad de propiedad de los recursos: el proceso incluye memoria (sección de código, sección de datos) y otros recursos como: archivos abiertos, señales,...
* Unidad de expedición: sigue un camino de ejecución que puede ser intercalada con la de otros procesos. (Contador de programa, conjunto de registros, espacio de pila, estado)Estas dos características puede ser tratadas de manera independiente por el SO, apareciendo el concepto de hebra.
* Una hebra (o proceso ligero) es la unidad básica de utilización de la CPU (unidad de expedición). Consta de:
* Contador de programa.
* Conjunto de registros.
* Espacio de pila.
* Estado
* Una tarea es la unidad de propiedad de los recursos.
* Sección decódigo.
* Sección de datos.
* Recursos del SO (archivos abiertos, señales,..).
Una hebra comparte con sus hebras pares una tarea.
* Un proceso pesado o tradicional es igual a una tarea con una hebra.
* Una Hebra posee:
* Un estado de ejecución (Ejecución, Listo, etc.).
* El contexto del procesador se salva cuando no está ejecutando.
* Una pila de ejecución.
*Almacenamiento estático para las variables locales.
* Acceso a la memoria y a los recursos del proceso, compartidos con todos los hilos del mismo.
Ventajas:
Se obtiene un mayor rendimiento y un mejor servicio debido a:
* Se reduce el tiempo de cambio de contexto, el tiempo de creación y el tiempo de terminación.
* En una tarea con múltiples hebras, mientras una hebra servidora está bloqueada yesperando, una segunda hebra de la misma tarea puede ejecutarse (depende del tipo de hebras)
* La comunicación entre hebras de una misma tarea se realiza a través de la memoria compartida (no necesitan utilizar los mecanismos del núcleo).
* Las aplicaciones que necesitan compartir memoria se benefician de las hebras.
Funcionalidad de las hebras:
Al igual que los procesos, las hebras...
tracking img