Introduccion a las redes capa fisica c++

Solo disponible en BuenasTareas
  • Páginas : 4 (876 palabras )
  • Descarga(s) : 4
  • Publicado : 14 de abril de 2010
Leer documento completo
Vista previa del texto
Introducción a las Redes

Proyecto de Simulación

Objetivo
• Realizar una simulación del funcionamiento de un enlace punto a punto con las siguientes características:
– Medio de trasmisióndigital serial simplex con fallas. – Protocolo de capa de enlace de datos
• Detección de errores por medio de FCS. • Tramas tipo PPP de longitud variable.

Herramientas
• • • • Sistema operativoLinux. Compilador C. Programación multiproceso. Servicios de coordinación inter-proceso IPC (inter-process communication).
– Específicamente PIPES.

Conceptos fundamentales
• Programa
– Conjunto deinstrucciones – Usualmente contenidos en archivos. – Para ejecutarse son trasladados a memoria principal.

• Proceso
– Programa en ejecución. – Dos procesos pueden utilizar el mismo programa(instancias).
• Ejemplo: dos instancias del block de notas.

– Los procesos se identifican mediante un PID.

La llamada de sistema fork()
• Genera un proceso clon (hijo) del que la invoca.
– Padree hijo comparten el código. – El espacio de datos es copiado con los valores actuales de las variables. – El desarrollo ulterior de ambos procesos es independiente.
• Espacios y tiempos individuales.• Procesos concurrentes que pueden ser vistos como “paralelos” aunque no lo son. • Para la comunicación entre ellos se recurre a los IPC.

Funcionamiento de fork()
main() { int pid; pid = fork();if( pid == 0 ) printf( “Soy el hijo\n”); else printf( “Soy el padre\n”); }

Pipes
• Mecanismo de comunicación entre procesos. • Implementa una “tubería” bidireccional. • Los procesosindependientes pueden utilizarlo para comunicarse y coordinarse.

Utilizando pipes
• Se declara un arreglo de elementos enteros.
– int tubo[2];




Se inicializa el pipe.
– pipe(tubo);

Se escribecon write en el elemento 1
– write( tubo[1], &dato, sizeof(dato) ); – Si el pipe está lleno el proceso que escribe es congelado hasta que se abra espacio.



Se lee con read en el elemento 0...
tracking img