Bell System

social.omar.website

Omar Rizwan . @omar,

was talking with people about structured concurrency a few weeks ago, and it does feel like an underrated part of making a responsive / concurrent 'OS' is the ability to *cancel* those concurrent tasks

Open thread
Omar Rizwan . @omar,

like you can do this pretty cleanly in Unix at the level of whole processes, so the system as a whole mostly works

but you can't really abort individual filesystem operations (which Plan 9 fixed, which I think is basically why its network-transparent fs works and doesn't hang all the time like FUSE stuff), and it's usually not safe to abort pthreads within a process (and in the browser, webworkers are similarly messy, iirc)

Open thread
Omar Rizwan . @omar,

this cancellation problem is also a lot of what characterizes an *OS* as opposed to a normal program -- in an OS, you have very little upfront sense of the workload that you're going to run; you're constantly getting new user input that invalidates current work, you're disconnecting from networks, you're compiling and swapping in new process code (that might still be buggy and need further replacement)

Open thread