Multitarea basada en procesos y en subprocesos – Part 1

El sistema operativo multitarea es un sistema operativo que le da la percepción de 2 o más tareas/trabajos/procesos ejecutándose simultáneamente. Lo hace dividiendo los recursos del sistema entre estas tareas/trabajos/procesos y cambiando entre las tareas/trabajos/procesos mientras se ejecutan una y otra vez. Por lo general, la CPU procesa solo una tarea a la vez, pero el cambio es tan rápido que parece que la CPU está ejecutando varios procesos simultáneamente. Pueden admitir la multitarea preventiva , en la que el sistema operativo asigna tiempo a las aplicaciones (prácticamente todos los sistemas operativos modernos) o la multitarea cooperativa , en la que el sistema operativo espera a que el programa le devuelva el control (Windows 3.x, Mac OS 9 y versiones anteriores), lo que lleva se cuelga y se bloquea. También conocido como tiempo compartido, la multitarea es una extensión lógica de la multiprogramación. 

Requisito previo: subproceso , diferencia entre multitarea, multiproceso y multiprocesamiento 

La programación multitarea es de dos tipos: 

  1. para la multitarea basada en procesos
  2. Multitarea basada en subprocesos

Multitarea basada en procesos

Multitarea basada en subprocesos

En la multitarea basada en procesos, se pueden ejecutar dos o más procesos y programas simultáneamente. En la multitarea basada en subprocesos, se pueden ejecutar dos o más subprocesos al mismo tiempo.
En la multitarea basada en procesos, un proceso o programa es la unidad más pequeña. En la multitarea basada en subprocesos, un subproceso es la unidad más pequeña.
El programa es una unidad más grande. El hilo es una unidad más pequeña.
La multitarea basada en procesos requiere más gastos generales. La multitarea basada en subprocesos requiere menos gastos generales.
El proceso requiere su propio espacio de direcciones. Los hilos comparten el mismo espacio de direcciones.
El proceso para procesar la comunicación es costoso. La comunicación hilo a hilo no es cara.
Aquí, no puede obtener acceso durante el tiempo de inactividad de la CPU. Permite tomar acceso durante el tiempo de inactividad que toma la CPU.
Es un peso comparativamente pesado. Es comparativamente ligero.
Tiene una multitarea de velocidad de datos más rápida porque se pueden ejecutar dos o más procesos/programas simultáneamente. Tiene una multitarea de velocidad de datos comparativamente más lenta.
Ejemplo: Podemos escuchar música y navegar por internet al mismo tiempo. Los procesos en este ejemplo son el reproductor de música y el navegador.  Ejemplo: Mediante un navegador podemos navegar por la página web y al mismo tiempo descargar un archivo. En este ejemplo, la navegación es un hilo y la descarga es otro hilo. También en una aplicación de procesamiento de textos como MS Word, podemos escribir texto en un hilo y el corrector ortográfico verifica los errores en otro hilo. 

Publicación traducida automáticamente

Artículo escrito por Anshika Goyal y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *