Administrando Comunicación entre Procesos

Cuando tu necesitas resolver varios problemas, lo ideal es distribuir el problema a varios programas usando el fork(), creando asi otras instancias (hijos) de tu programa y ejecutas algún código que ayuda a tu programa principal. Pero de que uso es crear mas instancias para que compartan el trabajo si no se pueden comunicar con el papa? Quien va tener el resultado final del esfuerzo combinado.

Una forma de comunicarte es por medio de TCP, usando zócalos (sockets). Pero esto es tal vez preferido para programas que son externos y también remotos (osea que no son copias, sino otros programas). Por ejemplo: sistemas de chat, donde existe un programa para el servidor y un programa para el cliente.

Para comunicarnos entre procesos el System V IPC (sistema 5 CEP) es usado para comunicarse con procesos interiores, ya que contiene coleta (colas), semáforos, y memoria compartida. Esto da un beneficio mayor para usar fork(), ya que ahora se pueden comunicar tus instancias de programa.

Muchas de la versiones de Unix traen esto ya en el paquete, ya que fue adoptado ya ratos. Para ver las coleta (colas), semáforos, y memoria compartida, habré la consola de tu operador Unix (Linux, Ubuntu, etc), y entra lo siquiente:

Esto te mostrara todo lo que esta ya tomado, que usuario, llave, cantidad, y mas información de CEP.

Si quieres borrar algunos procesos que se hayan quedado huérfano, puedes usar el comando ipcrm:

Claro que esto es solo para manejar/administrar los recursos que algún programa aya creado por accidente o el programa se sale antes de limpiar los recursos. Por ejemplo: Cuanto estés corrigiendo el programa.

[icon:user]ABCO
notice

No Trackbacks

No hay trackbacks todavia, sea el primero, Copie el enlace de arriba.
notice

No comments

No hay comentarios todavia, pero tu puedes dejar tu comentario
add comment

Deje su comentario