Procesos

Solo disponible en BuenasTareas
  • Páginas : 12 (2886 palabras )
  • Descarga(s) : 0
  • Publicado : 27 de marzo de 2011
Leer documento completo
Vista previa del texto
Procesos
1. Definición de proceso.
Un proceso es un programa en ejecución. Son administrados por el sistema operativo
2. Estado de un proceso.
El principal trabajo del procesador es ejecutar las instrucciones de máquina que se encuentran en memoria principal. Estas instrucciones se encuentran en forma de programas. Para que un programa pueda ser ejecutado, el sistema operativocrea un nuevo proceso, y el procesador ejecuta una tras otra las instrucciones del mismo. El estado de un proceso define su actividad actual. Un proceso puede pasar por diferentes estados discretos que se describen a continuación:
[pic]
Nuevo: Se dice que un proceso está en estado de nuevo cuando apenas se encuentra en proceso de crearse.
Listo: Un proceso está en estado de listo, cuando podríausar una UCP, si hubiera una disponible.
En ejecución: Se dice que un proceso está estado de ejecución, si en ese momento tiene esta ocupando la CPU.
Bloqueado: Se dice que un proceso está en estado de bloqueado, si espera que ocurra algo, como por ejemplo, la terminación de una E/S, para así poder ponerse en marcha.
Terminado: Cuando un proceso se ha completado su ejecución pasa a ser unproceso terminado.
1. Transiciones de estados.
Admitido (Proceso): Nuevo Listo: Cuando un proceso se ha creado y se le es permito para competir por la CPU.
Despacho (Proceso): Listo En ejecución: La asignación de la CPU al primer proceso de la lista de listos es llamado despacho y es ejecutado por la entidad de sistema llamada despachador. Mientras que el proceso tenga la CPU se dice queesta en ejecución.
Tiempo excedido (Proceso):En ejecución Listo: El S.O , cuando un proceso se le expira el intervalo de tiempo asignado para estar en ejecución (CUANTO), hace que este proceso que se hallaba en estado de ejecución pase al estado de listo y inmediatamente el despachador hace que el primer proceso de la lista pase a estado de ejecución.
Bloqueo (Proceso): En ejecución Bloqueado: Siun proceso que se encuentra en estado de ejecución inicia una operación de E/s antes que termine su cuanto, el proceso voluntariamente abandona la CPU, es decir, el proceso se bloquea a sí mismo.
Despertar (Proceso): Bloqueo Listo: La única transición posible en nuestro modelo básico ocurre cuando acaba una operación de E/S (o alguna otra causa por la que esté esperando el proceso), y estatermina pasa a el estado de listo.
Salir (Proceso): En ejecución Terminado: Esta transición ocurre cuando el proceso se ha terminado de ejecutarse, y pasa a un estado de terminado.
3. Semáforos
1. Definición.
Un semáforo es un mecanismo de sincronización que se utiliza generalmente en sistemas con memoria compartida, bien sea un monoprocesador o un multiprocesador. Su uso en unmulticomputador depende del sistema operativo en particular. Un semáforo es un objeto con un valor entero al que se le puede asignar un valor inicial no negativo y al que sólo se puede acceder utilizando dos operaciones atómicas: wait y signal (también llamadas down o up, respectivamente). Las definiciones de estas dos operaciones son las siguientes:
wait(s){
s = s - 1;
if (s < 0)
Bloquear alproceso;
}
signal(s){
s = s + 1;
if ( s 0 ) { //si hay sillas libres
SillasLibres -- //se sienta en una
V(Cliente) //avisa al barbero, el cual está esperando, que haya un cliente
V(SillasAccesibles) // no se necesitan bloquear las sillas
P(Barbero) // ahora le toca al cliente, pero espera si el barbero está ocupado
//se le está cortando el pelo al cliente
} else { // no haysillas libres
V(SillasAccesibles) //libero el bloqueo de las sillas
//se va de la barbería
2. El problema de los filósofos.
Cinco filósofos se sientan alrededor de una mesa y pasan su vida cenando y pensando. Cada filósofo tiene un plato de fideos y un tenedor a la izquierda de su plato. Para comer los fideos son necesarios dos tenedores y cada filósofo sólo puede tomar los que...
tracking img