Systems programming provides the foundation for the world's computation. Writing performance-sensitive code requires a programming language that puts programmers in control of how memory, processor time, and other system resources are used. The Rust systems programming language combines that control with a modern type system that catches broad classes of common mistakes, from memory management errors to data races between threads.
With this practical guide, experienced systems programmers will learn how to successfully bridge the gap between performance and safety using Rust. Jim Blandy, Jason Orendorff, and Leonora Tindall demonstrate how Rust's features put programmers in control over memory consumption and processor use by combining predictable performance with memory safety and trustworthy concurrency.
Rust's fundamental data types and the core concepts of ownership and borrowingHow to write flexible, efficient code with traits and genericsHow to write fast, multithreaded code without data racesRust's key power tools: closures, iterators, and asynchronous programmingCollections, strings and text, input and output, macros, unsafe code, and foreign function interfaces
This revised, updated edition covers the Rust 2021 Edition.