You are on page 1of 3

Proceso.

Introducción.

En este documento se describe las características que presentan los sistemas


operativos para la administración de procesos en los sistemas multiprocesos, para
comenzar les explicare un poco sobre la funcionalidad de un proceso para ir
detallando poco a poco la funcionalidad de la multitarea, así como la estructura de
información de los procesos, estado de los procesos, procesos ligeros, y la
planificación, las señales y excepciones que se emiten.
3.1 Procesos.
¿Qué es un proceso?
Un proceso es un programa en ejecución, todos los programas, cuya ejecución
solicitan los usuarios, se ejecutan en forma de procesos, de ahí la importancia para
el informático de conocerlos en detalle. Como ya se vio en el Capítulo 2, el proceso
se puede definir como un programa en ejecución y, de una forma un poco más
precisa, como la unidad de procesamiento gestionada por el sistema operativo. Una
vez definido que es un proceso nos podríamos preguntar cuál es la diferencia entre
un programa y un proceso, y básicamente la diferencia es que un proceso es una
actividad de cierto tipo que contiene un programa, entradas salidas y estados.
• Un proceso está formado por:
– Código del programa: Instrucciones.
– Conjunto de datos asociados a la ejecución del programa
Una parte muy importante de estas informaciones se encuentra en el llamado
bloque de control del proceso (BCP). El sistema operativo mantiene una tabla de
procesos con todos los BCP de los procesos.
Jerarquía de procesos
La secuencia de creación de procesos vista en la Sección 2.2 genera un árbol
de procesos como el incluido en la Figura 3.1. Algunos sistemas operativos, como
UNIX, mantienen de forma explícita esta estructura jerárquica de procesos —un
proceso sabe quién es su padre—, mientras que otros sistemas operativos como el
Windows NT no la mantienen.
Entorno del proceso
El entorno del proceso consiste en un conjunto de variables que se le pasan al
proceso en el momento de su creación.
PATH=/ USR/ bin: / home / pepe / bin
TERM= vt 100
HOME= /home/pepe
PWD= / home /pepe /libros / primero
Grupos de procesos
Los procesos forman grupos que tienen diversas propiedades. El conjunto de
procesos creados a partir de un shell puede formar un grupo de procesos. También
pueden formar un grupo los procesos dependientes de un terminal
3.2. MULTITAREA
Como ya se vio en el capítulo anterior, dependiendo del número de procesos y
de usuarios que puedan ejecutar simultáneamente, un sistema operativo puede ser:
• Monotarea o mono proceso:
Se denomina sistema monotarea a aquel sistema operativo que solamente
permite ejecutar un solo programa o proceso y no permite atender ningún otro hasta
que el proceso anterior no sea finalizado.
• Multitarea o multiproceso:
El sistema operativo multitarea o multiproceso, como también se le conoce,
es aquel sistema que permite al usuario y al equipo, realizar varias operaciones,
funciones o ejecuciones de manera concurrente o simultánea. Lo que los hace
especiales, es que debido a la arquitectura de los CPU´s, los equipos están
diseñados para ejecutar una sola tarea por vez, es decir, se necesitarían varias
CPU´s para realizar varias operaciones simultáneamente. Sin embargo, los
sistemas operativos multitarea permiten realizar varias operaciones a la vez, debido
a que realizan una operación denominada cambio de contexto, la cual actúa de la
siguiente manera: Quita un proceso del CPU, ingresa uno nuevo, y luego vuelve a
ingresar el proceso que quitó del CPU en una especie de cola de ejecución, sin que
el procesador se entere de todo lo que está pasando, de modo, que pueda realizar
varias tareas simultáneas. Es como una especie de engaño, que permite mejorar el
rendimiento de los ordenadores y facilitar el trabajo a los usuarios.
3.3 Base de la multitarea
La multitarea se basa en las tres características siguientes:
• Paralelismo real entre E/S y procesador.
• Alternancia en los procesos de fases de E/S y de procesamiento.
• Memoria principal capaz de almacenar varios procesos.

Proceso nulo
Como se indicó en el Capítulo 1, el procesador no para de ejecutar nunca.
Esto parece que contradice a la Figura 3.4, puesto que muestra un intervalo en el
que el procesador no tiene nada que hacer. Para evitar esta contradicción, los
sistemas operativos incluyen el denominado proceso nulo.
Un problema que debe resolver un sistema operativo multitarea es, qué
debería hacer el sistema cuando no hay nada que ejecutar. Por ejemplo, cuando
la cola de listos se encuentra vacía.
Este problema es resuelto en muchos sistemas operativos con el proceso
NULO que es creado por el sistema en el momento de arranque. El proceso nulo
nunca termina, no tiene E/S y tiene la prioridad más baja en el sistema. En
consecuencia, la cola de listos nunca está vacía, además la ejecución del
planificador puede hacerse más rápida al eliminar la necesidad de comprobar si la
cola de listos está vacía o no. Algunas de las tareas que se le pueden dar al proceso
nulo, por ejemplo, es realizar estadísticas de uso de procesador, o asistencia de
vigilancia de la integridad del sistema, etc.

You might also like