Plan 9 / Harvey / 9front / experimental operating systems with a focus on clustering

i’m reading up on plan9 and while the going is slow reading up and actually getting around to being able to install it (there are only docs, barely anyone has actually done anything with it since the 80s, i’m pretty sure every daily user is named in the docs) but i do think it would be cool to use it for what’s it’s intended: clustering heterogeneous hardware!

in short, all these operating systems linked (and some others, there’s one that uc berkeley was developing for a bit called akaros there is more info in more depth than i can provide here: http://fqa.9front.org/fqa0.html#0.1) were designed at bell labs after unix to take everything is a file to the extreme so that the end result is that one can mount another machine’s cpu to one’s terminal’s file system (plan9 terminals consist of the bare necessities to operate graphically and computationally) and use the cpu for computations. same with network interfaces, graphics cards, sound cards, literally any device your terminal has permissions to access on the network can be used.

idk about you but i find this to be fascinating and incredible, imagine the possibilities posed by being able to easily share computational resources over a network with very little extra work like configuring message passing interfaces, schedulers, and provisioning systems as is done in more traditional computer clusters.

i’m still learning a bunch about all this, and obviously nothing i wrote is comprehensive, but it’s the broader big ideas of what i think would be possible with plan 9 and its clones.

more links to things (and apparently new users can only put two links in a post. these are the ones i have here are the most important of the 5 i wanted to add in)
man.9front.org/1/intro

1 Like

Here are notes and links from our former Plan 9 class.

https://www.noisebridge.net/wiki/Plan_9

This is a really interesting area.

I think modern attempts at multi-user federated computing either go for a very light “SaaS product” type experience (think Twitter/Reddit, and clones on the Fediverse), are designed for fully trusted environments (e.g. HDFS, Hadoop, Spark clusters inside a company), or are so immersed in the crypto-hype that it’s hard to recognize the underlying computing capability underneath.

Other areas to look:

I thinks there’s a massive design space if you think carefully about trust and federation. You could imagine having multiple rings: devices you own / are using (full trust), devices your closest friends/family owns (full trust, with privacy screening), devices your broader friend circle owns (full cooperation, but potentially byzantine — trust but verify), and devices from acquaintences on the web (interact but do not trust).

1 Like

If you are asking about federated networks, the tools we do use at Noisebridge would be Scuttlebutt, Matrix, IRC, email lists. Services are either colocated at iocoop by #rack and our github team in Ansible, run out of Noisebridge or run off of our community maintained VPS. Actually setup Syncthing on the network at the space just yesterday for sharing Blender resources. imho these are totally different from Plan 9 as an operating system. All are fun.

Perhaps a different topic, but we could absolutely join the tildeverse. We don’t technically qualify as a librehost, but they are awesome to use.

i’m thinking something a bit different than the tildeverse (which i really think is awesome): starting a network designed on plan 9’s and the 9p protocol’s ability to make distributed and heterogeneous hardware shareable over a network.

i’m not sure if the practical barrier to entry is lower due to the fairly esoteric nature of plan 9, but theoretically logging into an existing network full of plan 9 machines is simpler than running a tilde, and the use case is a bit different.

while a single tildehost (i’m guessing at the terminology) might have a few gpus and a big cpu and tons of memory, a user on a less powerful tildehost wouldn’t be able to easily get access to those resources without having to ssh in and give up their local environment. on the other hand on this theoretical network it would be as simple as mounting hardware on the network that they have permissions to use.

so really this is a proposal and notification that i’m working on figuring this out.

2 Likes