| ▲ | What is Plan 9?(fqa.9front.org) |
| 100 points by AlexeyBrin 4 hours ago | 26 comments |
| |
|
| ▲ | ori_b an hour ago | parent | next [-] |
| Plan 9 is still alive and kicking -- The next Plan 9 conference will be in Victoria, BC in Canada later this year. https://iwp9.org/ 9front averages several commits a day: https://git.9front.org/plan9front/9front/HEAD/log.html |
| |
|
| ▲ | rcarmo 3 hours ago | parent | prev | next [-] |
| People wanting a Retina-capable drawterm to access Plan9/9front from their Macs are welcome to have a look at https://github.com/rcarmo/drawterm |
| |
|
| ▲ | jes5199 an hour ago | parent | prev | next [-] |
| I’m not sure it still makes sense to do OS research so close to the metal. Most computing is done up on the application level, and our abstractions there suck, and I haven’t seen any evidence that “everything is a file” helps much in a world of web APIs and SQL databases |
| |
| ▲ | marssaxman 41 minutes ago | parent | next [-] | | Some of us are still interested in the world underneath all that web stuff! Multiple experimental operating systems at multiple abstraction levels sounds like a good idea, though. What sort of system software would you like to build? | |
| ▲ | GrowingSideways 37 minutes ago | parent | prev [-] | | > I haven’t seen any evidence that “everything is a file” helps much in a world of web APIs and SQL databases Well for one thing, such an abstraction enables you to avoid web apis and sql databases! |
|
|
| ▲ | pjmlp 3 hours ago | parent | prev | next [-] |
| The transition step between UNIX and Inferno, and between C and Limbo as main userspace language, by its authors. Which tends to be forgotten when praising Plan 9. |
| |
| ▲ | krmboya 3 hours ago | parent [-] | | Is it correct to say Golang is bringing Limbo to the masses? | | |
| ▲ | rcarmo 2 hours ago | parent | next [-] | | No, it's bringing Aleph to the masses. Limbo is a cousin, and Dis was certainly very interesting and something I wish had caught on. | | |
| ▲ | pjmlp 2 hours ago | parent [-] | | Aleph lacked GC, which Rob Pike considered the main reason for its implementation failure on Plan 9, and initially bounds checking was also missing. Two key design difference from Go and its two predecessors. Dis is an implementation detail, Go could offer the same dynamism with AOT toolchain, as proven by other languages with ahead of time toolchains available. |
| |
| ▲ | pjmlp 2 hours ago | parent | prev [-] | | Partially, Go still doesn't support a few Limbo features. However the influence is quite clear, plus the Oberon-2 style methods and SYSTEM package. |
|
|
|
| ▲ | franciscator 4 hours ago | parent | prev | next [-] |
| I would love to see more Rust on Plan9 implementations, IMHO, could be a good modern combination. |
| |
| ▲ | solarexplorer 3 hours ago | parent | next [-] | | I don't know. I use a lot of Swift and C++ and while both are OK languages there is an absurd amount of complexity in these languages that doesn't seem to serve any real purpose. Just a lot of foot traps, really.
Coming back to Plan9 from that world is a breeze, the simplicity is like a therapy for me. So enjoyable. If "modern" means complex, I don't think it fits Plan9. | | |
| ▲ | einpoklum 2 hours ago | parent [-] | | I don't know about Swift, but in C++, the complexity serves at least three purposes: 1. Backwards compatibility, in particular syntax-wise. New language-level functionality is introduced without changing existing syntax, but by exploiting what had been mal-formed instructions. 2. Catering to the principle of "you don't pay for what you don't use" - and that means that the built-ins are rather spartan, and for convenience you have to build up complex structures of code yourself. 3. A multi-paradigmatic approach and multiple, sometimes conflicting, usage scenarios for features (which detractors might call "can't make up your mind" or "design by committee"). The crazy thing is that over the years, the added complexity makes the code for many tasks simpler than it used to be. It may involve a lot of complexity in libraries and under-the-hood, but paradoxically, and for the lay users, C++ can be said to have gotten simpler. Until you have to go down the rabbit hole of course. |
| |
| ▲ | AlexeyBrin 3 hours ago | parent | prev | next [-] | | AFAIK there is no Rust compiler for Plan 9 or 9front. The project is using a dialect of C and its own C compiler(s). I doubt adding Rust to the mix will help. For a research OS, C is a nice clean language and the Plan 9 dialect has a some niceties not found in standard C. If you really want Rust, check this https://github.com/r9os/r9 it is Plan 9 reimplemented in Rust (no idea about the project quality): R9 is a reimplementation of the plan9 kernel in Rust. It is not only inspired by but in many ways derived from the original Plan 9 source code. | |
| ▲ | exitb 3 hours ago | parent | prev [-] | | I’m fairly sure that Rust compiler is bigger than the entire 9front (and 9front has Doom in it). | | |
| ▲ | VorpalWay 2 hours ago | parent [-] | | Since Rust depends on LLVM, which is massive, that is almost certainly true. It seems likely even if you don't include LLVM though. |
|
|
|
| ▲ | irusensei 4 hours ago | parent | prev | next [-] |
| >9front.org frequently questioned answers Knowing that project am I going to be rickrolled? |
|
| ▲ | rramadass an hour ago | parent | prev | next [-] |
| IMO, the biggest curse of the Internet age is how Distributed OS's did not become mainstream. Maybe we should repackage these as Unikernels and run our apps using their distribution services directly on a hypervisor. |
|
| ▲ | ruslan 2 hours ago | parent | prev | next [-] |
| Is there Plan9 port for RISC-V (RV32I) ? |
| |
| ▲ | ori_b 2 hours ago | parent | next [-] | | There's a 9legacy port, and an in-progress 9front port. https://m.youtube.com/watch?v=EOg6UzSss2A | | |
| ▲ | ruslan an hour ago | parent [-] | | That's interesting, thanks. I feel a need for simple multitasking/networking OS for synthesizable RV32I core (not RTOS like, but more like Unix or CP/M). Would be nice to try Plan9 on it once port is out. |
| |
| ▲ | chrsw 2 hours ago | parent | prev [-] | | Probably not. And there aren't many 32-bit RISC-V cores with an MMU. I guess you can use a simulator if you found one. | | |
| ▲ | ruslan an hour ago | parent [-] | | I use one written in SpinalHDL. :-) Next question is how much RAM it needs to boot and can it be used without rio ? |
|
|
|
| ▲ | Eikon 4 hours ago | parent | prev [-] |
| ZeroFS [0] is very thankful for what it brought to Linux with the v9fs [1] subsystem which is very nice to work with (network native) compared to fuse :) [0] https://github.com/Barre/ZeroFS [1] https://docs.kernel.org/filesystems/9p.html |