| ▲ | cogman10 4 hours ago | |||||||
Certainly such systems can pretty readily exist. You merely need atomic reads/writes in order to implement locks. You can't create userspace locks which is a bummer, but the OS has the capability of enforcing locks. That's basically how early locking worked. The main thing needed to make a correct lock is interrupt protection. Something every OS has. To go fast, you need atomic operations. It especially becomes important if you are dealing with multiple cores. However, for a single core system atomics aren't needed for the OS to create locks. | ||||||||
| ▲ | SkiFire13 14 minutes ago | parent | next [-] | |||||||
> You merely need atomic reads/writes in order to implement locks. Nit: while it's possible to implement one with just atomic reads and writes, it's generally not trivial/efficient/ergonomic to do so without an atomic composite read-write operation, like a compare-and-swap. | ||||||||
| ▲ | colonwqbang 3 hours ago | parent | prev [-] | |||||||
I wrote "multithreaded" but I really meant "multicore". If two cores are contending for a lock I don't see how irq protection help. As long as there is only one core, I agree. | ||||||||
| ||||||||