The memory model of a programming language is a broad topic. Rust's, as of writing this book, must be understood from the inspection of the Rust documentation, the rustc source code, and research into LLVM. That is, Rust's memory model is not formally documented, though there are rumblings in the community of providing it. Independent of that, it is also important for the working programmer to understand the underlying machine. There's a staggering amount of material to be covered.
These notes are a small start, focusing especially on the Rust documentation that relates most to this chapter:
- High Performance Code 201: Hybrid Data Structures, Chandler Carruth, available at https://www.youtube.com/watch?v=vElZc6zSIXM&index=5&list=PLKW_WLANyJtqQ6IWm3BjzHZvrFxFSooey. This, in point of fact, is a talk from CppCon 2016. Carruth is an engaging...