¿Qué es la comunicación de interprocesos?
Interprocess Communication (IPC) es un grupo de técnicas utilizadas en la programación de computadoras que permiten que las diferentes piezas de software interactúen. IPC a menudo es facilitado por un sistema operativo informático, aunque existen métodos alternativos. La forma exacta de esta comunicación entre el software puede variar, que van desde mensajes directos hasta un depósito central donde se almacena y se recupera la información. La comunicación entre procesos puede proporcionar beneficios, como un mayor rendimiento, menos recursos informáticos consumidos y seguridad mejorada.
En el mundo de la programación, se habla del software en términos de un proceso o un único código, que se puede ejecutar o ejecutar en la unidad de procesamiento central (CPU) de una computadora. Muchas aplicaciones realmente usan más de un proceso, lo que puede aumentar el rendimiento y la estabilidad. Un navegador web con múltiples páginas abiertas puede usar un proceso separado para cargar cada página; Esto aísla cada página de las otras y evita que una página web malhechada se bloquee el ENTnavegador de ira. En este ejemplo, cada proceso responsable de representar una página web se comunica con uno o más procesos que manejan otros aspectos del navegador, como los componentes de la interfaz de usuario.
La mayoría de los sistemas operativos informáticos proporcionan varios mecanismos diferentes para la comunicación interprocesada. Algunas otras tecnologías de software también ofrecen soporte para IPC. Además, IPC se puede usar en una sola computadora o en una red. Estos mecanismos pueden variar en cómo se implementan, pero la mayoría se puede agrupar en algunas categorías en función de cómo se lleva a cabo la comunicación.
En algunos casos, los mensajes se intercambian directamente entre procesos, a menudo de manera unidireccional o asincrónica. Algunos métodos de IPC que funcionan de esta manera incluyen señales, tuberías y enchufes. La comunicación interprocesada también puede realizarse mediante el uso de una ubicación específica donde MOR puede acceder a los datose que un proceso. Un ejemplo de esto es la memoria compartida, una técnica en la que múltiples procesos acceden a la misma parte de la memoria de una computadora para intercambiar información. El método que un programador puede elegir depende de la tasa y el volumen de intercambio de datos necesario, así como otras consideraciones.
Hay muchas razones por las que un programador puede desear utilizar la comunicación de interprocesos en sus creaciones de software. Dividir una gran aplicación en muchos procesos más pequeños que se comunican a través de IPC pueden aumentar el rendimiento y la seguridad. Un programa puede iniciar y finalizar los procesos según sea necesario en lugar de todos los componentes que se ejecutan a la vez y consumiendo recursos de hardware. Si parte de un programa necesita acceso especial al hardware de una computadora u otro software en ejecución, uno o más procesos pueden funcionar bajo una cuenta de administrador o "root", mientras que el resto del programa se ejecuta como un usuario regular.
.