Memory Safety: Rust vs. C
summary
Argues that government pushes for memory-safe languages overstate immediate benefits, noting a Ferine qualified Rust toolchain exists but is certified only for x86/ARM and documents the compiler rather than providing a reference spec. Emphasizes mature C/C++ ecosystem: standards (MISRA, ISO 26262 ASIL D), tooling (ASan/UBSan, fuzzing, static analysis, TrustInSoft) and new C23 features (checked integer ops). Notes Rust’s limited tooling, hardware/API interop challenges, scarce Rust safety engineers, and that eliminating memory corruption alone does not fix input‑validation and web vulnerabilities.
AI-written summary · about
chapters (18)
- 0:00Introduction and context
- 3:51Defining safety and security
- 8:44Security dependencies
- 10:55C language philosophy
- 14:01C charter updates
- 15:47Addressing memory safety
- 16:58Practical memory safety
- 20:22Industry history and risk
- 23:46Rust adoption barriers
- 25:09Ferrocene and certification
- 28:20Ecosystem and tooling
- 37:00Programmer availability
- 40:25Migration challenges
- 43:56Vulnerability analysis
- 49:37Improving C and C++
- 52:55Tooling and sanitizers
- 55:08Testing and validation
- 58:06Concluding thoughts
related talks
58mRust for The Curious C++ Developers
36mRust as a High-Level Langage
44mUnsafe Rust
40mWhat's up with Rust?
01h 09mThe Rust Programming Language: Origin, History and Why it's so important for Arm today
34mTransitioning to memory safety: lessons from the Android project
40mWhy Rust?
45mBuilding Safe and Secure Systems in Rust
