Internet Process Communication

Páginas: 8 (1874 palabras) Publicado: 15 de enero de 2013
1. Introducción
Se conoce por InterProcess Communication (IPC) al conjunto de mecanismos clave
en los sistemas para llevar a cabo la compartición de datos (intercomunicación) y
sincronización entre distintos procesos de forma bastante sencilla.
Las técnicas de IPC están divididas dentro de métodos para: paso de mensajes,
sincronización, memoria compartida y llamadas de procedimientosremotos (RPC).
En un sistema, los procesos pueden ejecutarse independientemente o cooperando
entre sí. Los intérpretes de comandos son ejemplos típicos de procesos que no precisan la
cooperación de otros para realizar sus funciones. En cambio, los procesos que sí cooperan
necesitan comunicarse entre sí para poder completar sus tareas.
La comunicación entre procesos puede estar motivada por lacompetencia o el uso de
recursos compartidos o porque varios procesos deban ejecutarse sincronizadamente para
completar una tarea.

2. Funcionamiento de los mecanismos IPC
El sistema operativo provee mínimamente dos primitivas, "enviar" y "recibir",
normalmente llamadas send yreceive. Asimismo, debe implementarse un enlace de
comunicación entre los procesos de la comunicación (pipe). Este enlacepuede ser
unidireccional o multidireccional según permita la comunicación en uno o en varios
sentidos.
La comunicación puede ser:
- Síncrona: Quien envía permanece bloqueado esperando a que llegue una respuesta
del receptor antes de realizar cualquier otro ejercicio.
- Asíncrona: Quien envía continúa con su ejecución inmediatamente después de
enviar el mensaje al receptor.
- Persistente:El receptor no tiene que estar operativo al mismo tiempo que se realiza
la comunicación, el mensaje se almacena tanto tiempo como sea necesario para poder
ser entregado (por ejemplo, un e-mail).
- Momentánea (transient): El mensaje se descarta si el receptor no está operativo al
tiempo que se realiza la comunicación. Por lo tanto no será entregado.
- Directa: Las primitivas “enviar” y“recibir” especifican el nombre del proceso con el
que se comunican.
- Indirecta: Es aquella donde la comunicación está basada en una herramienta o
instrumento ya que el emisor y el perceptor están a distancia.
- Simétrica: Todos los procesos pueden enviar o recibir. También llamada
bidireccional para el caso de dos procesos.

- Asimétrica: Un proceso puede enviar, los demás procesos sólo reciben.También
llamada unidireccional. Suele usarse para hospedar servidores en Internet.
- Uso de búfer automático: El transmisor se bloquea hasta que el receptor recibe el
mensaje (capacidad cero).

Las operaciones básicas send y receive se definen de la siguiente manera:
send (P, mensaje); envía un mensaje al proceso P ( P es el proceso destino).
receive(Q, mensaje); espera la recepción de unmensaje por parte del proceso Q (Q es
el proceso fuente).

3. Mecanismos IPC en Linux
Los medios de comunicación entre procesos (Inter-Process Communication o IPC) de
Linux proporcionan un método para que múltiples procesos se comuniquen unos con
otros. Hay varios métodos de IPC disponibles en Linux:
- Pipes UNIX Half-duplex.
- FIFOs (pipes con nombre).
- Colas de mensajes estilo SYSTEM V.- Semáforos estilo SYSTEM V.
- Segmentos de memoria compartida estilo SYSTEM V.

3.1. Pipes UNIX Semi-duplex
La forma más simple de IPC en Linux son los pipes o tuberías. Proporcionan un
método de comunicaciones en un sentido (unidirecional, semiduplex) entre procesos.
Una tubería (pipe) es simplemente un método de conexión que une la salida
estándar de un proceso a la entrada estándar deotro. Para esto se utilizan “descriptores
de archivos” reservados, los cuales en forma general son:
• 0: entrada estándar (stdin).
• 1: salida estándar (stdout).
• 2: salida de error (stderr).

Para acceder a una tubería directamente, se puede usar la misma llamada al sistema
que se usa para un archivo E/S de bajo nivel.
Para enviarle datos a la tubería, se usa la llamada al sistema...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Effective communication during the teaching process.
  • Communication
  • Process
  • process
  • Process
  • process
  • Process
  • Distance Communication

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS