Programming books are often disappointing. They are like a pyramid - the most books are describing trivial things and copy-pasted documentation; books in the middle are more exciting; and books on the top are really cool.
This book, which I read in the last year, is a very rare one. It describes linkers, loaders, their work in very thorough details (as well as compilers but in a lesser degree). It has a lot of pictures, format specifications, Linux and Windows commands and so on.
The book is so comprehensive, it describes even how do you do versioning you dynamic libraries! 🤯 (this is a very specific task)
I’d like to recommend first few chapters as well as chapters 12 and 13 (for Linux developers).