System Programming with C++

The Unix Operating System is written in C and this will probably not change soon. System Programming (i.e. all programming that interfaces with the machines ressources through system calls like open(), close(), socket(), pipe(), ...) on the other hand is done more often using C++. Developers benefit from the advantages of an object oriented language plus their frameworks like STL along with the power of having direct access to system calls. In other languages - like Java - access to OS ressources is always deeply encapsulated. C++ programmers want to create encapsulation themselves. The writer who writes a taylored http server, is not interested in talking to a black box every time, he opens a TCP/IP connection.

Literature

There are not as many books on C++ system programming as there are on system programming with C. I present a few very good books here. I tried to get a complete coverage of all sysprog topics, without having too many books, which tell about one and the same thing.


C++ World