Un proceso es una instancia de
ejecución de un programa, caracterizado por su contador de programa, su palabra de estado, sus registros del procesador, su
segmento de texto, pila y
datos, etc. Un programa es un concepto estático, mientras que un proceso es un
concepto dinámico. Es posible que un programa sea ejecutado por varios usuarios
en un sistema multiusuario,
por cada una de estas ejecuciones existirá un proceso, con su contador de
programa, registros, etc.
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 o bien porque son procesos que pertenecen a
distintos usuarios.
Proceso - un programa
en ejecución; la ejecución del proceso debe progresar de manera secuencial.
Un Proceso incluye:
·
Program counter
·
Stack
·
Data Section
Información
asociada con cada proceso:
·
Estado del proceso
·
Program Counter
· Registros del CPU
· Registros del CPU
·
Información de planificación del CPU
·
Memoria
·
Información para administración
·
Información de estatus de E/S
Programa o comando en ejecución.
Características:
Ø Un proceso consta de código, datos y pila.
Ø Los procesos existen en una jerarquía de árbol (varios Hijos, un sólo
padre).
Ø El sistema asigna un identificador de proceso (PID) único al iniciar el proceso.
Ø El sistema asigna un identificador de proceso (PID) único al iniciar el proceso.
Ø El planificador de tareas asigna un tiempo compartido para el proceso
según su prioridad (sólo root puede cambiar prioridades).
La
información que compone un proceso es la siguiente:
Ø Contenido
de los segmentos de memoria en los que residen el código y los datos del
proceso. A esta información se le denomina imagen de memoria o core image.
Ø Contenido
de los registros del modelo de programación
Ø Contenido
del BCP.
No hay comentarios:
Publicar un comentario