Giter Site home page Giter Site logo

belu_kafe's Introduction

Belu_Kafe

Universidad de Costa Rica
CI-0123
Proyecto Integrador de Redes de Comunicación de Datos y Sistemas Operativos
Repositorio de Proyectos

belu_kafe's People

Contributors

nosarabs avatar felipesolisjimenez avatar katherineangulo97 avatar luchor27 avatar katherineam97 avatar johancordoba avatar

belu_kafe's Issues

Documentación

  • Pseudocódigo
  • Máquina de Estados
  • Decisiones de Diseño
  • Requerimientos Adicionales
  • Presentación

Realizar método encolar en receptor

  • crear estructura que guarda hilos ya creados
  • mandar a encolar lo recibido en la Cola(estructura del sistema operativo ya creada en una clase llamada Cola)
  • controlar la creación de hilos escritores con ayuda de la estructura en el punto 1

Socket Cliente (Lector)

Incorporar socket en el lector

  • crearlo con socket( )
  • Verificar que el IP sea correcto con RegEx
  • conectarlo con connect( )
  • mandar y recibir datos con read( ) y write( )

Realizar pruebas de conexión

  • Primer prueba con archivo txt (se reciben datos correctamente y el casting a struct funciona correctamente).
  • Segunda prueba(cuando esté método encolar) ya probando si el archivo txt se escribe correctamente.
  • Tercer prueba con una imagen.
  • Cuarta prueba con varias imágenes o archivos.

Crear Receptor

  • Crear socket que se conecte con cliente (emisor)

  • Crear vector de colas para guardar cada mensaje que llega

  • Hilo maestro : Recibe mensaje, lee encabezado, si existe, la encola en la posición indicada del vector.

  • HiloArchivo : Desencola de la posición indicada, y escribe al archivo

Socket Servidor (Contador)

Incorporar socket en el contador

  • Separar los hilos del contador:
    -Hilo que cuenta y guarda en estructura la info (IP, puerto, oración, # de palabras)
    -Hilo que recibe clientes
  • crearlo con socket( )
  • enlazar el socket a una dirección con bind( )
  • buscar conexiones con listen( )
  • aceptar una conexión con accept( )

Bug de Lector

  • El fork está teniendo problemas al crear contratistas, (creo que en el segundo archivo no incluye el '/' que está antes de home Ver foto, el primer archivo si lo encola todo bien)

Screenshot from 2019-04-06 14-25-34

Definir protocolo

  • como elijo que naranja comienza con token

  • como elijo que nombre darle al nodo azul

Problema Struct Paquete

Ocurre un error al compilar porque creo que hace falta definir algo del struct Paquete.
Tal ves sea por falta de un forward declaration.

Screen Shot 2019-03-30 at 8 24 08 PM (2)

Terminar el programa

  • El emisor, debe esperar que termine el receptor con todos los archivos para poder terminar(de no ser así se interrumpe la conexión y no funciona), y debe avisarle al lector, que es el único que sabe las imágenes totales, entonces el lector cuando ya le sea comunicado que el receptor terminó con todos los archivos puede decirle al hilo enviador del emisor y al emisor que terminen.

Bug de emisor en señal

  • El while del Emisor parece que no espera a recibir señal indicada y sigue creando hilos y archivos
    Screenshot from 2019-04-06 14-25-34

Contador

  • Poner el lector y el contador en dos clases diferentes

  • Que el cliente mande mensajes y el servidor las reciba

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.