This is seriously underappreciated IMO. You can entirely replace access control with private namespaces without any real loss in generality. In fact, they're more flexible and secure.
You see some of these ideas in Linux, but as with all Linux kernel technologies they all feel like they've not been written with a design in mind from the start (just look at epoll, namespaces, /proc, and so on).
As graphics fan, I wonder how this would work out with modern GPU driver layers.
https://marc.info/?a=111558719100068&r=1&w=4
Though Rob Pike might have not been very cooperative or enthusiastic
https://marc.info/?l=9fans&m=111558699517143&w=4
He goes on about some interesting architectural advantages already in Plan 9 from a graphics programming standpoint and capitalizing on them someday.
It'd be interesting to hear about how far along he got.
https://marc.info/?l=9fans&m=111558698816997&w=4
Here he talks about trying to hack Plan 9 to run Quake https://marc.info/?l=9fans&m=111558698416915&w=4
- Truly everything is a file. No exceptions; no special cases.
- Symlinks do not feel like a hack causing trouble. If you need a reference to a directory in another path, you mount it. If your software writes its binaries into its custom directory and you want the binaries within the $PATH, you mount that custom directory into /bin (or so, from what I remember).
- Namespace isolation for processes.
- Distributed file system