he empezado a tocar programación Linux a bajo nivel (pthreads, timers, blablabla --> Estándar POSIX), es decir, el C ese feo y horroroso lleno de * por todos lados (uno que es masoca, y le va la droga dura). Bueno el caso es que me han recomendado el libro UNIX. Programación Avanzada.. Este libro tiene como fecha de última edición 2004, vale 35€ en formato físico y casi mil páginas. No lo encuentro en pdf, y la verdad un libraco como este bien molaría que estuviera en formato HTML como los Gitbooks estos de moda.
Bueno, como no me atrevo a comprarlo (aunque no es caro, el precio es alto para mi y tiene 12 años…), he conseguido mirar su versión inglesa más actualizada -> Advanced Programming in the UNIX Environment, 3rd Edition. Esta es de 2013, está en inglés y la verdad que me ha encantado como está estructurado el libro, lleno de ejemplos. Tengo la sensación de que este libro es “una biblia”, esos “must” que todo el mundo debe tener para consultar en su estantería, como los de Código Limpio que recomienda @josejuansanchez o los Patrones de diseño que recomienda @olea.
Este tipo de libros tan gordos, me gusta tenerlos en formato físico, y a poder ser en castellano. No tengo ningún problema en leer en inglés, pero me gusta más leer y aprender en castellano (manías que tiene uno). En fin a lo que iba, ¿merece la pena el libro en castellano de 2004? ¿Sería quizás mas interesante otro? ¿Que más “biblias” hay por ahí que serían interesantes de leer?
¿12 años en programación? Eso es como comprarte un libro de medicina de la Edad Media dónde resuelven los problemas con sanguijuelas.
Aún así, la mayoría de las cosas que estás haciendo (pthread, mutex…) desde C++11 se resuelven de otra forma , con código más limpio y multipltaforma en vez de ser exclusivo de POSIX.
¿Por qué usar un pthread cuando tienes thread que es más potente, limpio y funciona en cualquier otro SO?
Y por último, busca los shared_ptr, porque te van a solucionar muchísimos problemas de punteros.
Como tu sabes, la multiplataforma es el tema que me interesa, por eso lo de bajar a bajo nivel ¿Y si me recomiendas unos buenos recursos donde mirar @MiguelAngelLV ? Desconozco todo lo que me comentas, voy dando palos de ciego poco a poco
La verdad, @klin me parece impactante por tu parte que quieras meterte a tocar Linux a tan bajo nivel, pero oye, es tu salud. Solo te voy a hacer una pregunta: ¿por qué quieres aprender programación UNIX?
@jsalvador porque yo soy de más de esa zona, que de webservices y todo eso (aunque no me importa tocarlo). Si quiero desarrollar un cacharro, o hacer algo eficiente, hay que bajar al lodo.