Do you understand your operating system?
pmjordan: I'm currently working on a block device driver, which means I'm digging around in kernels. I've found the O'Reilly books on the Linux kernel ("Understanding the Linux Kernel, 3rd ed" and "Linux Device Drivers, 3rd ed") as well as "Mac OS X Internals" by Amit Singh extremely helpful. The latter doesn't only cover the darwin/xnu kernel but also a lot of the OS X user space. All of them are quite technical and can be a bit dry, but they're certainly densely packed with information - and you can safely skip/skim most sections if you like. Linux Device Drivers is probably only useful if you're actually trying to write a kernel driver, I can recommend the others for general interest as well, though.I've also got Windows Internals from MS Press, but I've only looked at it briefly so far. It seems higher-level than even the OSX book.In general, I've found it extremely interesting to see how it all fits together, but I've got a general soft-spot for low-level hackery. (until recently that mainly involved game consoles)