I picked up a copy of Linux System Programming to help me understand how to directly interact with the Linux kernel and from that, use these skills to help with reverse-engineering malware. While my expectations weren’t exceeded by any means, the book could have been so much more.
From an introductory standpoint— the book is alright. Decent examples— enough to (hopefully) drive your curiosity and further your exploration into kernel development.
From a REM perspective, you can take the code snippets in this book, compile them, and then use a little fu to extract the assembler and take a look at that.
objdump -d ./$1|grep '[0-9a-f]:'|grep -v 'file'|cut -f2 -d:|cut -f1-6 -d' '|tr -s ' '|tr '\t' ' '|sed 's/ $//g'|sed 's/ /\x/g'|paste -d ” -s |sed 's/^/”/'|sed 's/$/”/g'
Overall, the book wasn’t bad, but at the same time, wasn’t great. If you’re a C guy (or gal) and are looking to get your feet wet in kernel development, this would probably be a good fit for you.
You can read more about it here.