Rust 1.62 Released With Faster Mutexes On Linux, Bare Metal x86_64 Target Promoted
Rust 1.62 is out today as the latest update to this popular systems programming language with a few notable changes.
First up, Rust's x86_64-unknown-none target has been promoted to tier two status, which is their "guaranteed to build" state. Rust's x86_64-unknown-none target is for generating freestanding/bare-metal x86_64 ELF binaries for firmware, kernels, and other low-level software. This cross-compiled target lacks Rust standard library support, no default allocator, does not use any vector or FP registers, but should work for bare metal x86_64 programs.
Also notable with Rust 1.62 is the Rust standard library on Linux now shipping a raw Futex-based implementation. The Mutex/Condvar/RwLock Rust behavior has been implemented using the pthreads library while now for Linux is raw Futex-based implementations for these locking primitives so they are lighter weight, don't require extra allocations, and basically amount to being "thinner and faster" than the prior implementations.
Rust 1.62 also stabilizes a number of new APIs, introduces the cargo add command for adding dependencies directly from the command-line, and other improvements.
Downloads and more details on Rust 1.62 via Rust-Lang.org.
First up, Rust's x86_64-unknown-none target has been promoted to tier two status, which is their "guaranteed to build" state. Rust's x86_64-unknown-none target is for generating freestanding/bare-metal x86_64 ELF binaries for firmware, kernels, and other low-level software. This cross-compiled target lacks Rust standard library support, no default allocator, does not use any vector or FP registers, but should work for bare metal x86_64 programs.
Also notable with Rust 1.62 is the Rust standard library on Linux now shipping a raw Futex-based implementation. The Mutex/Condvar/RwLock Rust behavior has been implemented using the pthreads library while now for Linux is raw Futex-based implementations for these locking primitives so they are lighter weight, don't require extra allocations, and basically amount to being "thinner and faster" than the prior implementations.
Rust 1.62 also stabilizes a number of new APIs, introduces the cargo add command for adding dependencies directly from the command-line, and other improvements.
Downloads and more details on Rust 1.62 via Rust-Lang.org.
100 Comments