Is there any nice to read Linux API reference like the one offered by MSDN or boost? I like the detailed information about the parameters from MSDN and the pre- an post conditions from the boost documentation. But until now I found nothing comparable in the net for Linux.
The man pages are definitely a good start, as others have noted. If you'd like something more formal and rigorous, however, I would recommend reading the POSIX specification. Here is the index of functions in the standard:
http://pubs.opengroup.org/onlinepubs/9699919799/functions/contents.html
Looking at what the standard requires, rather than what the current implementations of these functions on Linux happen to do, will also help you write more portable, robust software.
Read first good books like Advanced Linux Programming (you can download it) and Advanced Unix Programming
Be aware that GNU/Linux is by definition less monolithic than Windows (because many contributors are working on it, and) because it is made of many independent programs.
Therefore, there is no well defined Linux API (except for the kernel syscalls; but GNU/Linux is more than the kernel)
Of course, read the man pages, in particular start with the intro(2) man page about syscalls and other man-pages.
Be aware that Linux is nearly implementing (a superset of) the POSIX standard specification from the OpenGroup.
Read also many good documentations from TLDP.
If you are interested by desktop application development, understand first what X11 is, (beware, X11 is very complex in the details). Then read documentation from freedesktop. Better yet, learn to use a graphical toolkit like Qt or Gtk
And GNU/Linux is made of free software, you can download and study the source code and improve it. You'll very often use some existing free software library, and you may study its source code (and each of them has its own documentation). Part of your work is finding good free software related to your needs. freecode and sourceforge are good resources (and they are many others).
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With