3 ms·
I totally agree. I've spent way too much time in the depths of terrible embedded operating systems trying to do basic synchronisation out of whatever terrible p
by david-given 10y ago
I totally agree. I've spent way too much time in the depths of terrible embedded operating systems trying to do basic synchronisation out of whatever terrible primitive they'd decided to implement instead of semaphores, when semaphores would be so much easier.
(Frequently I ended up just implementing semaphores, and then doing everything else in terms of those, frequently using a standard library I had precisely for that purpose...)
(Embedded device flashback moment: a mobile phone OS where the only concurrency primitive was a mutex, each of which contained a fixed-size buffer of waiting tasks. The size of the buffer was smaller than the number of tasks on the system, and if a task blocked on the mutex while the buffer was fill, another task would randomly wake up.)