Go in real-time safety critical applications
summary
Claim: a garbage collected language (Go) proves viable for mechanical real‑time safety‑critical systems when running on a Linux SBC and careful design. Tools actually used: Go on Linux, TinyGo for microcontrollers, LLVM, and the Go runtime/GC. Measured wins: CPU drops from 60% CPU on four cores to 5% on one core, sampling improves 300 to 1000 samples per channel, and 50 tests including 10 live fires show zero software failures while exposing hardware faults. Limitation: TinyGo is promising but not yet suitable for hard real‑time safety‑critical control.
AI-written summary · about
chapters (11)
- 0:00Intro
- 1:52Real-time systems
- 2:51Safety-critical systems
- 3:44Case Study - SBC
- 5:44A little bit of Go Syntax
- 9:29Case study - Why Go?
- 14:05Case Study - Go's impact
- 18:22How it works - Tiny Go
- 19:43TinyGo - What about it?
- 23:16TinyGo - The Runtime
- 25:48TinyGo - Real-time safety-critical?
related talks
23mAn Operating System in Go
23mGo as a Scripting Language in Linux
28mGo Make Something Real – The Potential for Go on the Factory Floor
15mGo as a scripting language in Linux
35mWhy your next embedded project should be written in Go
26mGo is Boring... And That's Fantastic!
45mThe Robustness of Go
38mAn embedded soft real time system in Go
