Por favor necesito hacer un programa en C, que use el puerto paralelo para enviar mensajes y archivos de un PC a otro. Un programa parecido al comando Talk de unix.
1 respuesta
Respuesta
1
1
Anónimo
El puerto paralelo es un dispositivo que permite enviar pequeños mensajes de 8 bits de un equipo a otro. Lo que necesitas es documentación detallada sobre el puerto paralelo del PC, como por ejemplo el "Indispensable Hardware Book". En Internet tampoco te será difícil encontrar información. Una vez que conozcas bien la capa física, sobre todo los errores que pueden ocurrir (overunning, errores de paridad, etc.) tendrás que realizar un protocolo de nivel de enlace que significa mandar bytes con el puerto paralelo con el objetivo final de que el resto del programa puede mandar mensajes de un PC al otro con las siguientes características: los mensajes o tramas serán de una longitud óptima para maximizar las prestaciones del canal en consideración (cógete un libro que hable de Teoría de la Comunicación de Shannon), la probabilidad de error tiene que ser casi 0, debe haber control de flujo (algoritmo de checksum), lo que significa que no se pueden perder mensajes porque el ordenador que recibe no los coja a tiempo y se llene su cola, el protocolo debe ser orientado a la conexión. Lo que significa que debe haber un par de primitivas, estblecimiento de la conexión iniciada por uno de los PCs y desconexión, ejecutada por el mismo que ha iniciado la conexión (primitivas CONNECT, DISCONNECT). Por supuesto, las primitivas principales son SEND y RECEIVE. RECEIVE Todos los protocolos de comunicaciones, incluido el que quieres hacer, utilizan algún tipo de colas de mensajes a enviar y recibir. Lo normal es que utilices un algoritmo de ventanas deslizantes para implementar el protocolo.