Essentials of Compilation book and lecture series by IU
A big portion of most compiler books focus on parsing. This book instead focuses on implementing a lisp to assembly compiler. Lisp being easy to parse the parsing topic is skipped, instead it focuses on more interesting topics, like register allocation, garbage collection, closure conversion, dynamic typing and so on!
At the end of the book you will have a lisp to assembly compiler and be able to imagine how complicated high level constructs actually run on the machine which is exciting to say the least.
The book is accompanied with optional lectures.
https://iucompilercourse.github.io/IU-P423-P523-E313-E513-Fa...
------
Operating System Design: The Xinu Approach, Second Edition
Unlike most operating system books, this one goes over the implementation of a simple embedded operating system ( Xinu ) and explains its mechanics by going over its code and internal data structures. It also has interesting exercises like extending the OS to support virtual memory.
If you are planning to read this book you should buy one of the supported hardware boards so that you can actually run the OS on it, modify it and load it again to see your changes in action.