Foros del Web » Programación para mayores de 30 ;) » Programación General »

un problema de multiplexado-demultiplexado en C.

Estas en el tema de un problema de multiplexado-demultiplexado en C. en el foro de Programación General en Foros del Web. bueno, el problema planteado esta orientado a fijar conceptos de multiplexado en el contexto de medios de transmisión...pero bueno utilizando algun lenguaje como el C ...
  #1 (permalink)  
Antiguo 03/05/2004, 23:29
 
Fecha de Ingreso: septiembre-2003
Mensajes: 9
Antigüedad: 21 años, 2 meses
Puntos: 0
un problema de multiplexado-demultiplexado en C.

bueno, el problema planteado esta orientado a fijar conceptos de multiplexado en el contexto de medios de transmisión...pero bueno utilizando algun lenguaje como el C y archivos....

se piden dos funciones, la MPX que admite 3 parámetros:

Nombre de archivo de entrada n° 1
Nombre de archivo de entrada n° 2
Nombre de archivo de entrada n° 3

*los archivos mencionados estaran en un mismo subdirectorio...

ésta funcion debe producir un archivo de salida MPX.HEX donde se almacenara el resultado del multiplexado. la informacion que contendra dicho archivo deberá estar representada en Hexadecimal, es decir, utilizando caracteres del 0 al 9 y de la A a la F.

la otra funcion llamada DMPX no requerira parámetros, tomará el archivo MPX.HEX debiendo reconstruir los archivos con sus nombres originales en un subdirectorio distinto y la máxima cantidad y calidad de informacion posible atento a que el archivo MPX.HEX podrá ser manipulado recortando al principio, fin o en partes intermedias del mismoo con la finalidad de simular interrrupciones en el medio de comunicaciones. centrarse detenidamente en el análisis de la estructura del archivo MPX.HEX pensando en:

Economía de espacio al limitar la expansión de informaciones adicionales de control

Capacidad de reconstrucción en caso de recortes arbitrarios de su contenido.

.... bueno ese seria el problema, a alguien se le ocurre como encararlo? y que funciones/estructuras de datos utilizar?
para pasar el archivo a hexadecimal como puedo hacer?, es decir hay algunas funciones que permitan hacer esto de forma sencilla?

bueno, cualquier idea es bienvenida, aclaro que no busco que me resuelvan el problema solo alguna idea de alguna forma de hacer lo que se pide, aunque si alguien lo tiene hecho, vendría de 10...

de antemano gracias!
  #2 (permalink)  
Antiguo 04/05/2004, 17:47
 
Fecha de Ingreso: mayo-2004
Ubicación: Oaxaca
Mensajes: 34
Antigüedad: 20 años, 6 meses
Puntos: 0
¿No entiendo completo?

La primer parte de multiplexar si la entendi pero lo demas no, pero pues lo primero es lo primero.

Primero debes de crear un protocolo para multiplexar los archivos.

Por ejemplo en C abres los tres archivos y otro llamado Multi.txt que sera el de salida, primero escribes en el de salida el nombre del primer archivo seguido por un "*" por ejemplo, posteriormente lees el primer archivo de principio a fin y lo escribes en el de salida, aqui pones un "/" indicando con esto que aqui abaca el primer archivo, luego lees el 2 archivo y haces lo mismo, luego el tercero. y listo cierras multi.txt y ya teines lso 3 en 1.

Para la conversion al reves pues haces al reves lees el nombre que sabes que termina hasta donde encuentres el "*", creas un archivo con ese nombre y comienzas a leer hasta que encuentres un "/", luego igaul para el siguiente archivo y asi.


Ojala te sirva, suerte...

  #3 (permalink)  
Antiguo 04/05/2004, 18:55
 
Fecha de Ingreso: septiembre-2003
Mensajes: 9
Antigüedad: 21 años, 2 meses
Puntos: 0
claro, la idea me parece buena, peroo... el principal problema de la funcion DMPX es reconstruir los 3 archivos a partir del MPX.txt teniendo en cuenta que podrá ser manipulado recortando al principio, fin o en partes intermedias, por lo de simular interrupciones en el medio de comunicaciones, con la mayor cantidad de informacion posible ... e ahí donde se complica el asunto .... me han recomendado por ahi utilizar lógica 2 de 3 , triplicando la info en el mpx.txt ... pero me parece un tanto costoso ...

saludos!
  #4 (permalink)  
Antiguo 04/05/2004, 19:49
 
Fecha de Ingreso: mayo-2004
Ubicación: Oaxaca
Mensajes: 34
Antigüedad: 20 años, 6 meses
Puntos: 0
uyy pues algo complicado..

pero mira, eso teoricamente No puede pasar ya que para que eso pase se necesitaria que el archivo se envie por una red y algo raro pase, para este caso el protocolod e comunicacion lo tendria que resolver pero bueno, estamos en el pero de los casos asi que pues lo unico que se me ocurre es crear sequencias de bits, algo parecido a una red TCP/IP, "paquetes" con informacion detallada, por ejemplo:

1er archivo , N paquetes.

se me ocurre algo asi el mul.txt

************************************************** *
PAQ=1, sec=0,Data="este es el"
PAQ=1, sec=1,Data="archivo n"
PAQ=1, sec=2,Data="umero un"
PAQ=1, sec=3,Data="o para ser"
PAQ=1, sec=4,Data="multiplex"
PAQ=2, sec=0,Data="este es el"
PAQ=2, sec=1,Data="archivo n"
PAQ=2, sec=2,Data="umero do"
PAQ=2, sec=3,Data="s para ser"
PAQ=2, sec=4,Data="multiplex"

************************************************** *

asi el receptor para que tenga lso datos validos tendria que buscar el numero de paquete y la secuencia y ordenarlos, y asi generar el archivo final.

Ahora por lo de que si se PIERDE informacion?? pues eso si esta muy dificil puesto que para volver a generar integro el archivo debes tener todas las partes, lo que te propongo solo resuelve el problema del troceo del archivo.

Ahora si aun quieres mas seguridad deberias aplicar algun algoritmos de verificacion de errores como el CRC (codigo de redundancia ciclica)

Pero asi ya estamos hablando de mucho rollo.

No se es mi idea ojala sirva si no pues como sera?????

Saludos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:20.