¿Qué es el subprocesamiento múltiple?
En el mundo de la informática, el subprocesamiento múltiple es la tarea de crear un nuevo hilo de ejecución dentro de un proceso existente en lugar de comenzar un nuevo proceso para comenzar una función. Esencialmente, la tarea de subprocesamiento múltiple tiene como objetivo hacer un uso más inteligente de los recursos de la computadora al permitir que los recursos que ya están en uso sean utilizados simultáneamente por una ligera variante del mismo proceso. El concepto básico de subprocesamiento múltiple ha existido durante algún tiempo, pero ganó más atención a medida que las computadoras se volvieron más comunes durante la década de los años noventa.
Esta forma de multiplexación por división de tiempo crea un entorno donde un programa está configurado para permitir que los procesos se bifurquen o dividan en dos o más hilos de ejecución. La ejecución paralela de subprocesos dentro del mismo programa a menudo se promociona como un uso más eficiente de los recursos del sistema informático, especialmente con los sistemas de escritorio y portátiles. Al permitir que un programa maneje múltiples tareas con un modelo de subprocesos múltiples, el sistema no tiene que permitir que dos programas separados inicien dos procesos separados y que tengan que usar los mismos archivos al mismo tiempo.
Si bien hay muchos defensores del subprocesamiento múltiple, también hay quienes entienden que el proceso es potencialmente perjudicial para la tarea de la informática. Algunos piensan que la división de tiempo inherente en permitir que una bifurcación o subproceso se separe de un proceso en ejecución establece circunstancias en las que puede haber algún conflicto entre subprocesos al intentar compartir cachés u otros recursos de hardware. También existe cierta preocupación de que la acción de subprocesamiento múltiple podría reducir el tiempo de respuesta de cada subproceso único en el proceso, lo que anularía efectivamente cualquier ahorro de tiempo generado por la configuración.
Sin embargo, el subprocesamiento múltiple sigue siendo una de las opciones viables en la multitarea informática. No es inusual que un procesador permita tanto subprocesos múltiples como la creación de nuevos procesos para manejar diversas tareas. Esto le permite al usuario final todos los beneficios del cambio de contexto mientras hace el mejor uso de los recursos disponibles.