sábado, 18 de septiembre de 2021

2.1 Concepto de proceso

Un proceso no es más que un programa en ejecución, e incluye los valores actuales del

contador de programa, los registros y las variables. Conceptualmente cada unos de estos

procesos tiene su propia CPU virtual. Desde luego, en la realidad la verdadera CPU conmuta

de un proceso a otro.



Un proceso es un concepto manejado por el sistema operativo que consiste en el conjunto

formado por:

 Las instrucciones de un programa destinadas a ser ejecutadas por el

microprocesador.

 Su estado de ejecución en un momento dado, esto es, los valores de los registros de

la CPU para dicho programa.

 Su memoria de trabajo, es decir, la memoria que ha reservado y sus contenidos.

 Otra información que permite al sistema operativo su planificación.

Esta definición varía ligeramente en el caso de sistemas operativos multihilo, donde un

proceso consta de uno o más hilos, la memoria de trabajo (compartida por todos los hilos)

y la información de planificación. Cada hilo consta de instrucciones y estado de ejecución.

Los procesos son creados y destruidos por el sistema operativo, así como también este se

debe hacer cargo de la comunicación entre procesos, pero lo hace a petición de otros

procesos. El mecanismo por el cual un proceso crea otro proceso se denomina bifurcación

(fork). Los nuevos procesos pueden ser independientes y no compartir el espacio de

memoria con el proceso que los ha creado o ser creados en el mismo espacio de memoria.

En los sistemas operativos multihilo es posible crear tanto hilos como procesos. La

diferencia estriba en que un proceso solamente puede crear hilos para sí mismo y en que

dichos hilos comparten toda la memoria reservada para el proceso.

En este modelo: todo software ejecutable de la computadora, lo que a menudo incluye al

sistema operativo, esta organizado en una serie del proceso secuenciales, o simplemente

procesos.

La idea clave aquí es que un proceso es una actividad de algún tipo: tiene programa,

entrada, salida y un estado. Se puede compartir un procesador entre varios procesos,

usando algún algoritmo de planificación para determinar cuando debe de trabajar en un

proceso para atender a uno distinto.

Los sistemas operativos que manejan el concepto de proceso deben contar con algún

mecanismo para crear todos los procesos necesarios. en los sistemas muy sencillos, o en

los diseñados para ejecutar solo una aplicación.

En otros sistemas operativos existen llamadas al sistema para crear un proceso, cargar su

memoria y ponerlo en ejecutar. Sea cual sea la naturaleza exacta de la llamada al sistema.

Los procesos necesitan poder crear otros procesos.

En MINIX, los procesos se crean con la llamada al sistema FORK (bifurcar), que crea una

copia idéntica del proceso invocador. El proceso hijo también puede ejecutar FORK, así que

es posible tener un árbol de proceso

No hay comentarios.:

Publicar un comentario

1.1. Definición y concepto

Sin el software, una computadora solo es una masa metálica sin utilidad. Con el software, una computadora puede almacenar, procesar y recupe...