Continue reading "Insights from Writing an Embedded IoT App (Almost) Entirely in Rust"
Paper: What Every Systems Programmer Should Know About Lockless Concurrency
21 May 2020 by Phillip Johnston • Last updated 15 August 2023 “What Every Systems Programmer Should Know About Lockless Concurrency” is a short paper by Matt Kline that explores ways we can synchronize concurrent operations without relying on standard OS constructs, such as mutexes, semaphores, and condition variables. These strategies are also used to implement those same OS constructs. The paper also briefly touches on sources of concurrency problems that arise from compilers and from the hardware itself. Note: This paper was featured as a Reading Club assignment. Files What Every Systems Programmer Should Know About Lockless Concurrency Archive …
Continue reading “Paper: What Every Systems Programmer Should Know About Lockless Concurrency”
Lockless Concurrency
21 May 2020 by Phillip Johnston Lockless concurrency describes methods for synchronizing concurrent operations without relying on standard OS constructs, such as mutexes, semaphores, and condition variables. The same strategies are also used to implement those OS constructs. Situations requiring lockless concurrency tend to pop up most often in the embedded domain and in OS kernel development. These types of development involve interrupt service routines, real-time processing, and cases where blocking would be disastrous. In other cases, code may need to be synchronized before an OS is fully available, or without an OS at all. Under such conditions, a lock-free …
Continue reading “Lockless Concurrency”
