Monografias.com > Computación > Sistemas Operativos
Descargar Imprimir Comentar Ver trabajos relacionados

Los procesos en los sistemas operativos



Partes: 1, 2

  1. Modelo de procesos.
    Estados de los procesos
  2. Programación
    Concurrente. Grafos de precedencia
  3. Condiciones de
    concurrencia y especificación
  4. Jerarquía
    entre procesos
  5. Bibliografía

Modelo de procesos.
Estados de los procesos

Como ya se indicó, el concepto de proceso juega
un rol fundamental en la teoría y práctica de los
sistemas operativos.

Se señaló que un proceso era simplemente
un programa en ejecución, lo que implicaba la tenencia de
áreas de memoria, valores de registros, contador de
programa, puntero de la pila, etc.

La información acerca de los procesos presentes
en un instante de tiempo se conserva en la tabla de procesos, la
que permite restaurar un proceso que perdió antes el
control de ejecución.

Cada entrada de esta tabla se corresponde con un proceso
en el sistema y recibe el nombre de bloque de control del proceso
(PCB). Este contiene diferentes grupos de información para
un proceso en específico, tales como (Fig 4.8 del
Peterson):

  • Estado del proceso.

  • ? Contador de programa.

  • ? Registros del CPU (acumuladores,
    índice, propósito general, estado).

  • ? Uso de memoria (Dirección, Inicio y
    longitud de los segmentos, tablas de páginas,
    etc).

  • ? Información de contabilidad (Cantidad
    de tiempo real y del CPU utilizado, límites de tiempo,
    número del proceso, etc).

  • ? Información del estado de E/S
    (dispositivos asignados, lista de ficheros abiertos,
    solicitud de E/S, etc).

  • ? Información de planificación
    del CPU (prioridad, punteros a las colas de
    planificación, etc).

En el modelo de procesos todo el Software ejecutable, a
menudo incluyendo el propio sistema de operación, se
organiza como procesos secuenciales. Aparentemente cada proceso
tiene su propio procesador central, pero en realidad este cambia
de uno a otro de acuerdo con el concepto de
multiprogramación (seudoparalelismo).

Los procesos son totalmente aleatorios en el tiempo y el
comportamiento de un conjunto de ellos dependerá de las
condiciones en un instante dado. Esto implica que los programas
no pueden ser elaborados asumiendo lo que pasará en el
futuro cuando se están procesando.

Un proceso puede tener diferentes estados durante sus
existencia. El número de estados dependerá del
diseño del sistema operativo, pero al menos hay tres que
siempre estarán presentes:

  • ? En ejecución: El proceso está
    en posesión del CPU en ese instante.

  • ? Bloqueado: El proceso está esperando
    hasta que ocurra un evento externo (por ejemplo, una
    E/S).

  • ? Listo: El proceso está en condiciones
    de ejecutar, pero está detenido temporalmente para
    permitir a otro proceso la ejecución.

Si a estos tres estados le agregamos las transiciones
entre ellos se obtendría el siguiente grafo.

Monografias.com

Las cuatro transiciones que aparecen en el grafo
dirigido se explican en la forma siguiente:

  • ? La transición 1 implica que el proceso
    estaba en ejecución y se bloquea debido a que necesita
    esperar la ocurrencia de un evento externo. Esta
    transición se logra con la propia ejecución de
    una llamada al sistema con este fin o forzado por el sistema
    operativo (se realizó una solicitud que no puede ser
    satisfecha en ese instante).

  • ? La transición 2 ocurre cuando el
    planificador del procesador (Scheduler, una parte del sistema
    operativo) decide que se debe entregar el control del CPU a
    un proceso, aún cuando el actual estaría en
    condiciones de continuar. Esta decisión puede estar
    motivada por el hecho de que el proceso ya consumió el
    quantum de tiempo asignado o está listo otro que tiene
    mayor prioridad que el actual.

  • ? La transición 3 también es
    realizada por el planificador del procesador y consiste en
    entregar el control de este a un proceso que está
    listo (debido a que el actual terminó, se
    bloqueó o se le quitó).

  • ? La transición 4 ocurre cuando el
    evento externo que el proceso estaba esperando tiene lugar.
    Si en ese instante no hay otro proceso ejecutando o su
    prioridad es superior al que está, de inmediato
    ocurrirá también la transición 3, en
    caso contrario tendrá que esperar en el estado de
    listo.

Haciendo uso del modelo de procesos resulta más
fácil comprender como puede ser un sistema operativo por
dentro. Algunos de los procesos constituyen programas mandados a
ejecutar por los usuarios en sus comandos, pero otros son parte
del sistema (sistema de ficheros, administrador de memoria y
manejadores de dispositivos). Todos estos procesos se bloquean
cuando necesitan esperar por algo y al ocurrir el evento pasan a
listo, son ilegibles para ejecutarse (por supuesto el evento que
espera un manejador de dispositivo es la interrupción
correspondiente).

Partes: 1, 2

Página siguiente 

Nota al lector: es posible que esta página no contenga todos los componentes del trabajo original (pies de página, avanzadas formulas matemáticas, esquemas o tablas complejas, etc.). Recuerde que para ver el trabajo en su versión original completa, puede descargarlo desde el menú superior.

Todos los documentos disponibles en este sitio expresan los puntos de vista de sus respectivos autores y no de Monografias.com. El objetivo de Monografias.com es poner el conocimiento a disposición de toda su comunidad. Queda bajo la responsabilidad de cada lector el eventual uso que se le de a esta información. Asimismo, es obligatoria la cita del autor del contenido y de Monografias.com como fuentes de información.

Categorias
Newsletter