20 ms·
What's Plan9?
by chovybizzass 6y ago
What's Plan9?
- 6pac3rings 6y agoThe Plan9 abstractions give me the impression you can network as One the top 5 superduper computers and get beyond the benchmark metrics that haven't given us machines as intelligent and sensible as 3 to 7yo.
- Angostura 6y agohttps://en.wikipedia.org/wiki/Plan_9_from_Bell_Labs https://en.wikipedia.org/wiki/Plan_9_from_Bell_Labs Plan 9 from Bell Labs is a distributed operating system, originating in the Computing Science Research Center (CSRC) at Bell Labs in the mid-1980s, and building on UNIX concepts first developed there in the late 1960s. The final official release was in early 2015. Under Plan 9, UNIX's everything is a file metaphor is extended via a pervasive network-centric filesystem, and the cursor-addressed, terminal-based I/O at the heart of UNIX-like operating systems is replaced by a windowing system and graphical user interface without cursor addressing, although rc, the Plan 9 shell, is text-based.
- deleted 6y ago[deleted]
- thesuitonym 6y agoImagine if everything they told you about Unix was true. Plan 9 is the operating system Bell Labs made after Unix, to fix many of the problems the designers saw. That said, it's based around what the designers of Plan 9 thought were problems with Unix. It's a very opinionated operating system. But it has so many ideas that were ahead of their time, and in many ways are still lightyears beyond what we have now. It's a really cool piece of computing history, and if you haven't tried it, I suggest you look into it, but keep in mind that even though it looks and sometimes feels like Unix, it very much is not. It's not terribly useful as a daily driver OS due to a lack of software, but it's very, very cool.
- rakoo 6y agoThe interesting conclusion of all this is that if everything looks like a file, then it doesn't matter what OS it runs on. A /dev/screen can be on your local Plan 9, on a remote Windows or on your Linux VPS; as long as it respects the protocol it doesn't matter. Plan 9 is the host of all this experiment but its findings can be (and have been) imported in other places.
- dale_glass 6y agoIs that actually useful in practice? When you're talking about things like displays, performance is extremely important. We're talking about 178MB/s to update a full HD screen at 30 fps, which requires networking pretty much no normal user has.
- floren 6y agoIn my work, there's not much which requires updating a full HD screen at 30 fps... video calls, I suppose. Everything else updates small portions of the screen at lower rates. There's a program called drawterm which implements Plan 9 graphics devices on Linux. You run drawterm locally, connecting to a Plan 9 system, and your applications on the Plan 9 system draw to your drawterm window over the network. I regularly run it at 4k and it performs quite well.
- cycloptic 6y agoI'm guessing these applications do not have any kind of animations or smooth scrolling? That would be a simple test, make your web browser or your image viewer fullscreen in 4K and see if there is lag in the scrolling/panning/zooming.
- hnedeotes 6y agoThere's been some post about upscaling algorithms here lately, perhaps they could be used for diminishing the required bandwidth?
- effie 6y agoYou are seriously overestimating the needed throughput in practice. 60fps 1080p can be streamed with good quality over 16Mbps channel (2MB/s). The real problem is lack of good open source software that will eliminate the annoying latency due to desktop protocols (Xorg...). There are things such as SPICE or X2GO or RDP which are "OK" but I suspect much better experience is possible. The computers are extremely fast already but our software is so bad we can't see it.
- fnord123 6y ago> and in many ways are still lightyears beyond what we have now. I think this wildly overstates it. Much of the good innovations have been adopted in Linux. 9p exists. /proc was adopted (though that was in UNIX first). One unifying principle of plan9 is that everything is a file. But the (POSIX) file api has a lot of limitations. Fuschia, in contrast had some nice ideas about different types of file (blob/object, log, etc).
- ori_b 6y ago> I think this wildly overstates it. Much of the good innovations have been adopted in Linux. The main innovation can't be done by addition. With plan 9, many special cases are removed. You no longer have to wonder what happens if you try to create a Unix socket on an NFS file system, and then mmap it: There's just 9p. Everywhere. 9p is nice, but it isn't special. Making the whole universe 9p is where the improvement lies.
- cycloptic 6y ago>You no longer have to wonder what happens if you try to create a Unix socket on an NFS file system, and then mmap it How does that work? I don't know the details of any implementation, but 9p the protocol appears not to have any concept of mmap: https://9fans.github.io/plan9port/man/man9/intro.html https://9fans.github.io/plan9port/man/man9/intro.html I think I see what you mean about 9p not being that special, it doesn't seem much different than if Windows decided to export every system-level API as a DCOM object, that would also get you the same kind of "the whole universe is networked" kind of deal.
- ori_b 6y ago> if Windows decided to export every system-level API as a DCOM object, that would also get you the same kind of "the whole universe is networked" kind of deal. The difference is that in Plan 9, there is no 'if', and there's no other option for accessing resources. All programs interface with the OS and other programs via 9p, more or less: Notable exceptions are process creation calls like rfork() and exec(). > but 9p the protocol appears not to have any concept of mmap: Correct. Mmap is a kernel feature -- and mmap style stuff is only really done for demand paging of binaries at the moment. You get a cache miss and a page fault? Backfill with a read. Backfilling IO on page fault is really all mmap does, conceptually.
- PeterWhittaker 6y agoMany years ago (30?), the Plan 9 shell, rc, was made available for other platforms. I was working at the Big Nerd Ranch and ran it everywhere I could (I was doing 2nd/3rd level support work that gave me unfettered privileged access almost everywhere), until the nascent in-house software release process (SRP) caught up and sudo started becoming more widespread and privileged access started getting locked down. At that point, I needed muscle memory across all machines more than anything else, and switched back to sh (bash was still very new and not widely available, csh was born borked, and ksh was only available under certain OSes). That was sad. rc had a beautiful, clean C-like syntax without any csh weirdness and was much more powerful than sh. Scripts were a joy to write and maintain.
- LukeShu 6y agoI was going to say, 30 years ago, the 1st edition of the actual Plan 9 wasn't yet released (not until 1992), much less a clone/port of its shell. But it seems that Byron Rakitzis wrote his Unix clone of `rc` in 1991 before Plan 9 was even out! He based it on Tom Duff's paper which described Plan 9's shell. (Plan 9's `rc` was originally written for 10th edition Unix, and would later get ported back to Unix as part of Russ Cox's plan9port in 2003.)
- byronr 6y agoYes, I did! I used Duff's paper as a reference, and relied on the good taste of all my beta testers to guide me towards a working shell. Back when source code was distributed via shar files in an email.
- PeterWhittaker 6y agoThanks for writing rc! I’d forgotten about Duff’s paper and the exact circumstances of rc’s release until I read LukeShu’s and your replies. I had a lot of fun with rc....
- byronr 6y ago
- bitmapbrother 6y ago>and in many ways are still lightyears beyond what we have now I'm struggling to find these ideas that are lightyears beyond what he have now.
- outworlder 6y ago> and in many ways are still lightyears beyond what we have now. How close were they to Lisp Machines? :)
- anthk 6y agoJust build tiny Scheme compiler for plan9, anything with r5rS support and call it a day.
- williesleg 6y agoNo, it's not.
- CalChris 6y agoIt’s a file.
- goatinaboat 6y agoYou’re a file
- de6u99er 6y agoI scream, you scream, we scream for ice cream.
- Shared404 6y agoCan I be a file?
- andrewflnr 6y agoYou're a file! And you're a file! Everyone is a file!
- 0xdeadbeefbabe 6y agoNot everyone can echo > ctl though
- Koshkin 6y agoA person is a phile, not 'file.'
- goatinaboat 6y agoI don’t know why this is flagged, I’m observing the point that a user, like everything else, is a file
- Someone 6y agoFTA: “Starting in the late 1980s, a group led by Rob Pike and UNIX co-creators Ken Thompson and Dennis Ritchie developed Plan 9. Their motivation was two-fold: to build an operating system that would fit an increasingly distributed world, and to do so in a clean and elegant manner. The plan was not to build directly on the Unix foundation but to implement a new design from scratch. The result was named Plan 9 from Bell Labs – the name an inside joke inspired by the cult B-movie "Plan 9 from Outer Space." Plan 9 is built around a radically different model from that of conventional operating systems. The OS is structured as a collection of loosely coupled services, which may be hosted on different machines. Another key concept in its design is that of a per-process name space: services can be mapped on to local names fixed by convention, so that programs using those services need not change if the current services are replaced by others providing the same functionality.“
- nosianu 6y ago> inspired by the cult B-movie "Plan 9 from Outer Space." It's of course not relevant in the current context but still fun so I dare add that it is famous because it's so bad. It's known as "worst movie ever". It is worth watching the start and a few scenes - even if one does not have the patience for the whole thing - just for some laughs. It already starts (4 minutes in) with a scene in a hilarious airplane cockpit, which does not look like one at all (those controls..!). The zombies are really funny too. Full movie: https://youtu.be/Ln7WF78PolA https://youtu.be/Ln7WF78PolA
- Koshkin 6y agoMaybe the "worst" but at least it's not boring like some more recent big-budget ones are. (Incidentally, there's some enjoyment to be had watching B-rated movies from the late 50s to the 80s.)
- Someone 6y agoComparing https://m.imdb.com/title/tt0052077/reviews https://m.imdb.com/title/tt0052077/reviews (“Plan 9 from outer space? reviews) with https://www.imdb.com/title/tt0060666/reviews https://www.imdb.com/title/tt0060666/reviews (“Manos: the hands of death” reviews), I don’t think it qualifies as “worst movie ever”. One of the reviewers of ‘Manos’ says: “What can I say about a movie so bad that it makes Plan 9 From Outer Space look like Casablanca?”, another “I have endured a thing or two in my life: Plan 9 from outer space. Hercules against the moon men. Godzilla versus Megalon. German musical comedies from the early sixties. However, THIS was too much for me. About one hour or so into the movie, I quit.”
- MisterTea 6y agohttps://www.cs.cmu.edu/~410-s14/lectures/L31_P9.pdf https://www.cs.cmu.edu/~410-s14/lectures/L31_P9.pdf Well explained in this PDF.
- deleted 6y ago[deleted]