Historias
Slashboxes
Comentarios
 

Libro sobre Programación Concurrente y Tiempo Real

editada por nettizen el 02 de Febrero 2014, 07:43h   Printer-friendly   Email story
Tunguska nos cuenta: «La Escuela Superior de Informática de Ciudad Real de la Universidad de Castilla-La Mancha lanza bajo licencia Creative Commons la segunda edición del Libro 'Programación Concurrente y Tiempo Real', especialmente pensado para estudiantes de segundo o tercer curso de titulaciones de Ingeniería en Informática y que pretende ser una contribución, desde una perspectiva práctica, al diseño y desarrollo de sistemas concurrentes. Puedes descargar tanto el libro como el material docente asociado en la página web dedicada al mismo.»

Este hilo ha sido archivado. No pueden publicarse nuevos comentarios.
Mostrar opciones Umbral:
Y recuerda: Los comentarios que siguen pertenecen a las personas que los han enviado. No somos responsables de los mismos.
  • por stuka75 (46489) el Domingo, 02 Febrero de 2014, 08:26h (#1354309)
    En muchas asignaturas ponen como bibliografía básica el del profesor de la asignatura, sin el cual es difícil (casi imposible en algún caso) aprobar el examen.
    Enhorabuena a los impulsores de la iniciativa.
  • Demasiado básico.

    (Puntos:1)
    por erchurro (39865) el Domingo, 02 Febrero de 2014, 10:49h (#1354313)
    Le he echado un vistazo por encima y me parece tremendamente básico, pero muy clarito y muy simple para estudiantes.

    Los libros sobre estos temas así de claros son bastantes difíciles de encontrar en español, y gratis ya ni te digo.
  • Interesante. Pequeña crítica.

    (Puntos:1, Interesante)
    por pobrecito hablador el Domingo, 02 Febrero de 2014, 11:36h (#1354315)
    El libro está muy bien, será básico para un programador experto o un ingeniero especializado en tiempo real. Pero para un informático al uso recuerda los duros tiempos de la carrera ;-)

    Desde el punto de vista didáctico, creo que es un texto excelente para la docencia.

    La pequeña crítica: comete el error de la mayoría de las publicaciones "libres": ponerle una licencia CC pero solo publicar el texto "opaco" (formato PDF), lo que en software equivale a publicar los binarios sin sus fuentes.

    Como mínimo deberían publicar, si no las fuentes LaTeX, al menos formatos menos opacos como HTML o, mejor aun, ePub. Solo entonces será realmente útil su liberación.
  • Le he echado

    (Puntos:0)
    por pobrecito hablador el Domingo, 02 Febrero de 2014, 13:15h (#1354325)
    un vistazo y está bastante bien. Sólo C y C++, incluyendo monitores. Algo que sólo había visto en Java y tenía curiosidad por saber las directivas POSIX.
  • por pobrecito hablador el Domingo, 02 Febrero de 2014, 15:14h (#1354330)
    ... para todo aquel que quiera ser un profesional cualificado con conocimientos con fundamento.

    Para el mundo real es de poca aplicabilidad salvo que se realice desarrollo de sistemas. En el mundo real se tienen que utilizar mecanismos que escondan toda la complejidad inherente a la programación concurrente (es una cuestión económica). Abstracciones de más nivel como el "async await" o plink de C#, la programación funcional o el tratamiento de conjuntos (sql) ofrecen mecanismos que resuelven prácticamente automáticamente los problemas asociados con la concurrencia y permiten centrarse más en la solución que en la implementación de la misma.

  • por pobrecito hablador el Lunes, 03 Febrero de 2014, 01:35h (#1354346)
    El libro es muy básico, simplista, y a veces incorrecto. Por ejemplo (en un vistazo rápido), dice que el uso de hilos en vez de procesos en multiprocesadores incrementa enormemente el rendimiento de la aplicación (será si la caché no está continuamente saltando de un procesador a otro), no comenta las desventajas de usar hilos, y lo peor de todo, tiene una implementación _incorrecta_ del algoritmo de Peterson en C; una implementación correcta necesita barreras: http://stackoverflow.com/a/11656926/371250 [stackoverflow.com]
  • por pobrecito hablador el Martes, 04 Febrero de 2014, 11:28h (#1354406)
    Para empezar, como han comentado aqui, el libro es demasiado basico. Esta bien como algo introductorio (igual las primeras 4 o 5 clases), pero no para una asignatura completa.

    Leyendo el libro, y sobre todo las pequeñas reseñas de sus autores, me da la impresion de que los autores carecen de cualquier tipo de experiencia practica en la materia. Como van a aprender los estudiantes de alguien que jamas se ha dedicado a eso? Es esta la enseñanza que queremos?

    Para empezar, el libro se enfoca a Linux. Una de los mayores problemas en sistemas concurrentes en la misma maquina es la gestion de memoria concurrente por los mismos threads, cosa que este libro ni toca.

    La memoria es de muchisima importancia, y ya que se programa en C y C++ esperaba que se diera un poco mas de eso. Ni se toca la alineacion de fragmentos de memoria, ni la fragmentacion de la memoria, ni la adquisicion de la memoria, y SOBRE TODO NADA SOBRE LA GESTION DE ERRORES.

    Sobre tiempo real, no hay ni una palabra sobre la optimizacion de los compiladores. Por ejemplo, no es una buena estrategia usar "switch" en un sistema de tiempo real hard, es mejor usar un if-else, ademas de desabilitar la optimizacion del compilador (y por tanto del procesador a la hora de predecir que rama va a ejecutar), de modo que garanticemos tiempos de ejecucion homogeneos.

    Lo dicho, muy muy muy basico, y con falta de cosas que realmente se necesitan en el mundo laboral. Una pena de universidad, la verdad.