Ejemplo n.º 1
0
void *
threadPLP(void* vacio)
{
  int PIDActual = 0;
  setvbuf(stdout, NULL, _IONBF, 0);
  log_info(log_kernel,"Se inicio el PLP");



  pthread_t hilo_PLP_destruccion;
  pthread_create(&hilo_PLP_destruccion, NULL, hiloDestruccion, NULL );

  int socketEscucha;
  socketEscucha = setup_listen(configuration.ipKernel,configuration.puertoProg);
  log_info(log_kernel,"El PLP escucha en el socket %d",socketEscucha);
  while (1)
    {
      t_datosEnviar * paquete;
      listen(socketEscucha, 1000);
      struct sockaddr_in addr;
      socklen_t addrlen = sizeof(addr);
      int socketCliente;
      socketCliente = accept(socketEscucha, (struct sockaddr *) &addr,
          &addrlen);

      log_info(log_kernel,"Se recibio una script nueva en el socket %d",socketCliente);

      paquete = common_receive(socketCliente, NULL );
      atenderProgramaEntrante(paquete, socketCliente, &PIDActual);

    }
  pthread_join(hilo_PLP_destruccion, NULL );
  return NULL ;

}
Ejemplo n.º 2
0
void *
threadPLP(void* vacio)
{
  int PIDActual = 0;
  setvbuf(stdout, NULL, _IONBF, 0);
  puts("[KERNEL] - [PLP] - ESCUCHANDO\n");

  pthread_t hilo_PLP_destruccion;
  pthread_t hilo_PLP_multiprogramacion;

  pthread_create(&hilo_PLP_destruccion, NULL, hiloDestruccion, NULL );
  pthread_create(&hilo_PLP_multiprogramacion, NULL, hiloMultiprogramacion,
      NULL );

  int socketEscucha;
  socketEscucha = setup_listen(configuration.puertoProg);
  while (1)
    {
      setvbuf(stdout, NULL, _IONBF, 0);
      t_datosEnviar * paquete;
      listen(socketEscucha, 1000);
      struct sockaddr_in addr;
      socklen_t addrlen = sizeof(addr);
      int socketCliente;
      socketCliente = accept(socketEscucha, (struct sockaddr *) &addr,
          &addrlen);


      paquete = common_receive(socketCliente, NULL );
      atenderProgramaEntrante(paquete, socketCliente, &PIDActual);

    }
  pthread_join(hilo_PLP_destruccion, NULL );
  pthread_join(hilo_PLP_multiprogramacion, NULL );
  return NULL ;

}