367-page cc-by-nc-sa textbook; though the license permits modification, no source format seems to be provided, just a pdf. it covers mostly introductory userland programming, though there's a chapter on interrupt handling. on skimming the table of contents i don't see anything about page tables, tlbs, atomics, the amd64 memory consistency model, running before sdram is enabled, iommus, mtrrs, or simd. none of those things are necessary to write a compiler or debug most compiled code, except maybe simd<p>this book also looks like it could be a very solid base for a course that did cover one or more of those additional topics; the course would also include some supplementary material<p>it probably teaches more than everything i know about amd64 assembly, except the most important thing, which is that arm assembly is much better