4 ms·
Advanced Linux Programming
- Mithrandir 14y agoHere is the book and code bzip2ed: https://dl.dropbox.com/u/94483242/linux.tar.bz2 https://dl.dropbox.com/u/94483242/linux.tar.bz2
- cubancigar11 14y agoAny ebook version?
- turingbook 14y agoAn old and not really advanced Linux programming book. See comments on Amazon: http://www.amazon.com/Advanced-Linux-Programming-CodeSourcery-LLC/dp/0735710430 http://www.amazon.com/Advanced-Linux-Programming-CodeSourcer...
- badhairday 14y agoAs one of the Amazon reviewers states, "sockets receive a scant five pages." Does anyone know of an education resource like this that does cover some real world socket programming examples in C (or C++)? This would help me immensely in an upcoming project.
- jon6 14y agoBeej's networking guide is pretty good http://beej.us/guide/bgnet/ http://beej.us/guide/bgnet/
- ajross 14y agoStevens's Unix Network Programming is the classic. Any edition will do -- quite frankly the first is clearest. He gets coverage-happy (STREAMS, seriously?) in the 2nd and the 3rd (completed by another author after Stevens's death) is just plain too big.
- void-star 14y agoNo, really. Whatever else you refer to, make sure you include Stevens' UNP. (edit: agree also, 1st edition is the best by far)
- deleted 14y ago[deleted]
- cturner 14y agoI found that opening a socket and using select is pretty straightforward. When I write an app, the head-scratching is generally over how to build an event-loop to juggle all the stuff I have going on. Most of the time when I write a tool it will need to do this, but I haven't seen any good books that cover it. Are there any book recommendations about taking the next step? i.e. Structuring your application so you do regular reads and writes, sleep at sensible times so you aren't sledging the host, useful message-passing patterns. That talk about the tradeoffs, and optimisations, whether you should be doing one select per loop, or trying to do a greedy read on each pass, possibly even running select a few times in order to get that data in. Stevens volume I seems like it would have been a good place for this, maybe it's out of scope. It focuses on ways you can use the unix API, but avoids straying into application design issues.
- bebna 14y agoI prefer to use libevent, it is more tested and proven than i could make.
- skb_ 14y agoThe Linux Programming Interface by Kerrisk has pretty thorough coverage of sockets (and everything else). http://www.amazon.com/The-Linux-Programming-Interface-Handbook/dp/1593272200/ http://www.amazon.com/The-Linux-Programming-Interface-Handbo...
- r4pha 14y agoAfter reading the Beej's guide to networking programming [1], I wondered what could be the simplest approach to making a multiclient socket server using unix pthreads/mutexes. I ended up writing [2] (C++), mostly as an exercise. Although I have never tested it properly nor I consider myself to be a great programmer, it seems to work. Not something to learn from, though. Anyway, any feedback is really appreciated. [1] http://beej.us/guide/bgnet/ http://beej.us/guide/bgnet/ [2] https://github.com/raaapha/multichat https://github.com/raaapha/multichat
- gizzlon 14y agoI Advanced UNIX Programming with Linux 1 Getting Started 2 Writing Good GNU/Linux Software 3 Processes 4 Threads 5 Interprocess Communication II Mastering Linux 6 Devices 7 The /proc File System 8 Linux System Calls 9 Inline Assembly Code 10 Security 11 A Sample GNU/Linux III Appendixes A Other Development Tools A.1 Static Program Analysis 259 A.2 Finding Dynamic Memory Errors 261 A.3 Profiling 269 B Low-Level I/O Reading and Writing Data 282 stat 291 Vector Reads and Writes 293 Relation to Standard C Library I/O Functions 295 B.5 Other File Operations 296 B.6 Reading Directory Contents 296 C Table of Signals
- quincunx 14y agoHmm not so sure about the example code.. Shouldn't the code be checking for EINTR when calling read/write/etc..?
- brg 14y agoThis is an excellent book. When I left school, I read it and did a few side projects. That was more than enough to prepare for my interviews.