Componentes de los PC
Lección: 26
Capítulo: Ejecución de programas
Multiprogramación o multitarea
Es la ejecución concurrente de más de un programa a la vez.. En realidad, una
computadora sólo puede ejecutar un programa a la vez, pero la velocidad de
su procesamiento interno es tan rápida que se pueden distribuir por turno
"porciones" del tiempo de la computadora entre varios programas. Esto hace que
parezca que se ejecutan varios programas a la vez. Cuando un trabajo necesita un
proceso de entrada/salida, otro puede iniciarse (o continuar) su realización;
dos o más programas independientes se ejecutan durante el mismo lapso al
intercalar su ejecución.
La ventaja es que se puede intensificar el rendimiento total del sistema. Es
posible aprovechar la gran velocidad de la unidad central y evitar los retrasos
al esperar las operaciones de entrada/salida.
El control de la ejecución de la intercalación o empalme lo realiza el S.O. (si
prevé esta modalidad de trabajo). Es decir que por medio de la multiprogramación
se efectúa la administración en paralelo de dos o más programas que residen
simultáneamente en la memoria del computador.
Características de la multiprogramación
Intercalación : Más de un programa se encuentra carga en el computador en
condiciones de ejecutarse, ejecutándose o demorados. Pero todos ellos
compartiendo
tiempo de procesador y asignaciones de memoria.
Instantaneidad : Se simula trabajar como si existiera un solo programa cargado,
de ejecución instantánea.
Independencia : Se trata de distintos programas, con distintas asignaciones de
memoria y de dispositivos de entrada/salida.
Multiprocesamiento
Implica simultaneidad en vez de concurrencia. Dos o más procesadores centrales
del mismo tipo trabajan paralelamente; es decir que dos o más programas pueden
ejecutarse en el mismo momento porque existen dos o más CPU que comparten una
memoria central común.
El nombre dado a un sistema de multiprocesamiento con diferentes procesadores es
sistema de procesamiento multicomputarizado.
Un trabajo real en paralelo y una ejecución simultánea obliga a aplicar más de
un procesador. El problema consiste en asignar una cantidad de procesadores
n a una cantidad de programas m, donde generalmente n<m, pero sabiendo que n>1.
Cuando un programa termina o se detiene, uno de los procesadores asociados queda
disponible y la lista de programas se podrá rastrear para asignar procesador
a otro programa.