Advanced Linux Programming

I stumbled upon a book called Advanced Linux Programming - by Mark Mitchell, Jeffrey Oldham, and Alex Samuel - while reorganizing my Dropbox folder. I started reading the first few pages and got hooked to it, thereby spending the rest of the Sunday reading and trying things out from it. I always wanted to learn about operating systems but wasn’t able to find the resources for it. Berkeley has a nice set of video lectures on operating systems but I felt it was too theoretical and abstract. While there is nothing wrong with that, I couldn’t fathom watching 20 one hour lectures on the topic. I had read the Operating Systems book by Silberschatz earlier and that was a bit boring and I still had no clue about how various system calls in *nix systems worked.

This book is more practical and deals with GNU/Linux specifically though the ideas/APIs are portable to most Unix based systems including OSX (There are some caveats though like the proc filesystem and static linking won’t work on a Mac). It has all you want to know about linking, loading, make files, signals, processes, forking, threading, IPC, filesystems, memory management and more presented in a very readable fashion. So if you feel that whatever you are programming on is too high level and the real things are abstracted away from you, go ahead and grab a copy of this book or download it here.

 
25
Kudos
 
25
Kudos

Now read this

How does Git work?

So what’s behind the abstractions of branches and commits in git? How are the files really stored? . At the heart of git is an object database, everything is an object, commits, files and folders, everything. Inside your repo, the whole... Continue →