Plan 9

> My ideal for the future is to develop a file system remote interface (a la Plan 9) and then have it implemented across the Internet as the standard rather than HTML. That would be ultimate cool.
-- Ken Thompson

is there any hope? it seems like plan9 is objectively a better design for an operating system.

Plus, look at the implementation:
>n 1991, Plan 9's designers compared their system to other early nineties operating systems in terms of size, showing that the source code for a minimal ("working, albeit not very useful") version was less than one-fifth the size of a Mach microkernel without any device drivers (5899 or 4622 lines of code for Plan 9, depending on metric, vs. 25530 lines).
en.wikipedia.org/wiki/Plan_9_from_Bell_Labs

vs:
>The Linux kernel source tree is up to 62,296 files with a total line count across all these code files and other files of 25,359,556 lines.
how is 25+ million lines of code sustainable, or, for that matter, secure?

somebody has to start over, and i hope it's plan9

Attached: spaceglenda300.jpg (1910x2208, 639K)

Other urls found in this thread:

redox-os.org/
harvey-os.org/
minix3.org/
qubes-os.org/
github.com/fuchsia-mirror/zircon
fuchsia.googlesource.com/
ipfs.io
wiki.osdev.org/Kernels
en.wikipedia.org/wiki/Mach_(kernel)
technet.microsoft.com/library/cc767881.aspx
twitter.com/SFWRedditGifs

Check out redox-os.org/ , they took "everything is a file" quite seriously, although they reformulated it as "everything is an URL".

>rust

Which is ultimately retarded. Stop shilling that garbage.

that's awful

It's the logical follow-up to Plan9's design.
>implying there are better alternatives to write an OS in right now.

Plus it's a Microkernel architecture, which is a plus.
>inb4 "b-but muh plan9 kernel was smaller than a microkernel but was monolithic!!"
It also had very little hardware support. By the time plan9 would hypothetically support all the hardware that, say, the Linux kernel does, it would most likely end up being only slightly smaller.

Attached: kernels.png (2000x511, 76K)

Plan 9 could be the ideal OS, but to gain adoption it needs:
- A web browser with some javascript support at least.
- A videoplayer with the ability to play common formats (ideally just an ffmpeg port)
- More drivers

Someone has to work effectively on these things or otherwise plan9 will remain just a toy for most people.

Our best hope is now microkernels. Something like Sculpt OS has real potential, and isn't as slow or buggy as previous microkernel systems. Tack on some window manager and basic utilities and Sculpt OS could be used as a day to day operating system.

Fucking disgusting.

Attached: 1522970558174.png (601x469, 217K)

>>implying there are better alternatives to write an OS in right now.
C.

That picture isn't accurate. Hybrid kernels can and often do offload drivers into user space. IIRC Windows NT does it with video drivers and stuff.

Also, Plan9's kernel should be considered a Nanokernel.

>starting over
people/researchers are definitely trying. have a peek at microsoft research midori. some very intersting reading can be found.

I tried sculpt in a VM. It just seems really unorthodox to me. Not saying it'll never be good or that the ideas aren't sound, but it's just really confusing, and I don't think the package installs were working.
I'm probably just a brainlet though

C is the third best choice to write an OS in, after Rust and C++.

Attached: 1530630069961.jpg (662x602, 104K)

>It's the logical follow-up to Plan9's design.
No. It isn't.
Files have a limited number of interfacing possibilities, and are as such easily interoperatable, from which plan9s real power comes from.
Redox is a shitty Rust project that gets shilled by Rust fanatics.

>implying there are better alternatives to write an OS in right now.
There is always C. Take a look at plan9 for how that would look if written by competent programmers.

READ THE M A N P A G E S

C is shit. Your beloved Plan 9 tried to move away from it, only to return because brainwaished people as you cannot do without it.

>It's the logical follow-up to Plan9's design.
You don't understand plan9's design: "everything is a file" is a misrepresentation. It's actually "everything is a file system". The idea is to make every application conform to a universal interface (the 9p protocol) that can be accessed through the use of command line tools.
Everything is a URL doesn't buy you anything, because you can't 'cd' into a URL and then 'ls' its contents, unless that URL just happens to be a file:// URL.

You are retarded, the people making redox are retarded and you should all feel bad for soiling plan9's name by pronouncing it.

>plan9
see: It's a cute little toy for now, but if it ever went big, it would become really bloated like loonix.

To gain adoption it needs first of all better tooling for developers. The reason it failed was, among others, that Rob et al were targeting elegance whereas Unix descendants and newborn Linux where targeting practicality.

I R E A D T H E D O C U M E N T A T I O N

check out harvey-os.org/

>Files have a limited number of interfacing possibilities, and are as such easily interoperatable, from which plan9s real power comes from.
This is exactly how Redox works, everything, including sockets, drivers, IPC, etc, uses the same file interface of open/read/write/dup/fsync/close. The only difference is that Redox's filenames start with schema as in "tcp:192.168.1.2:80" for tcp socket, "network:1" for NIC driver, "sys:" for procfs, "file:/etc/resolve.comf" for files, "http:/192.168.1.2/index.txt" for remote files, etc.
>Rob Pike
>competent programmer
R-right.

>The reason it failed was
...actually it failed because AT&T didn't let them give it a reasonable license until as late as 2002.

Sure. Wanna compare an OS written in C (GNU+Linux) with an OS written in C++ (Windows)?

> because you can't 'cd' into a URL and then 'ls' its contents
Except you can in Redox, URL means that filenames are prefixed with schema which is used to implement the operations, otherwise it's the Plan9 approach.

Sure, Windows is better designed overall and Linux is a mess.

windows kernel is written in C.

>if it ever went big, it would become really bloated like loonix.
Maybe LOC wise, but you can still structure your code and modularize it enough that it is always clear and concise about what is happening.
Also you don't need to include and/or compile for every possible hardware combination, so I fail to see how LoC directly corresponds to messiness or bloatedness.
Considering this, a monolithic approach might even be slimmer in the end.
The other way is true too for Operating Systems based on microkernels.
They can still become bloated messes, even though the Kernel itself stays "isolated".
Microkernels are basically just some dumb marketing term Andrew spouted again and again so that he can sell more of his dumb books.

The fact that we will never see any of that happen is pretty sad though.
It will be linux and windows for ever.

>projects started 30 years ago is a good demonstration of relative usefulness of modern program languages

>Microkernels are basically just some dumb marketing term Andrew spouted again and again so that he can sell more of his dumb books.
nope, it's a legitimate approach that Google is using for their new OS

Attached: Google-Fuchsia-AB-684x513.jpg (684x513, 22K)

>Hybrid kernels
This is a fucking marketing term. Linux has loadable modules. Is it hybrid a well? I am not sure what "nanokernel" means for you (I think it used to refer to what we call microkernel nowadays) but Plan 9 is bona fide monolithic. Modularity has nothing to do with it.

minix3.org/
Your CPU probably runs it.

That's impossible because the equivalent of ls literally doesn't exist for an arbitrary url

qubes-os.org/

Most of Linux lines are driver lines, you don' need to touch them

And we will see how that will pan out.
My prediction: it will likely be pretty bad, but with google pushing it on phones it will get some adoption.
The real question is: if google would try taking a monolithic approach to the Kernel, would it turn out better?
Who knows.

github.com/fuchsia-mirror/zircon

The phone thing to me kinda disproves the performance meme. If this could run smoothly on phones, the microkernel performance overhead clearly can't be that bad these days

here's the full sauce
fuchsia.googlesource.com/

Sure. Let's discuss this obvious botnet mess.

>Rob Pike
>competent programmer
without any doubt

ipfs.io

Sculpt already has a terminal with vim and openssh, as well as window management. All it needs is a native port of Firefox or QtWebEngine+PyQt.

>mess
I haven't really looked into it. In what way?

Sculpt you mean the Genode-based system?

He's saying that it's by Google and therefore spyware. Not considering of course that it's open source, and could be forked, as with Android custom roms and Linux-libre distributions

>Windows is better designed overall
(Former) Windows kernel developer here (also made drivers for Linux kernel).
...

*inhale*

AHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHA *inhale* AHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHA

*inhale*

Windows is (Linux Hacks)^10. YOU HAVE NO FUCKING IDEA.
YOU HAVE NO FUCKING IDEA.
NO.
NO FUCKING IDEA ABOUT WHAT YOU'RE TALKING ABOUT.

*inhaaaaaaaaaaale*
AHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHAAHAHAHAHAHAHAHAHA

story time

>processes and threads are not files
>you can't fork by copying a file
>fork doesn't return file descriptor of a child thread

anyway, nothing new will ever succeed as desktop in next decade because of browser culture

>browser culture
This right here is the worst thing to ever happen to technology

>t. has never tried to write an OS.
C may be prone to a certain kind of problems, but the benefit far outweight the drawbacks in that respect. Remember that:
1. most C compilers offer special facilities for bound checking / undefined behavior sanitization.
2. The more abstract a language becomes, the harder it become to debug it in depth. For example, it is super easy to debug a C program, since you can just pop up a gdb window and then poke around at asm level (it's very easy to match the assembly structure with the flow of your program, even without gdb's help facilities). Compare and contrast with the average output of a C++ compiler error message, which basically becomes a masterpiece of postmodern literature after expanding a couple of fat pointers.
Here, let me spoonfeed you:
wiki.osdev.org/Kernels

Attached: 72a.jpg (600x800, 77K)

>develop a file system remote interface
sounds like webdav desu

>microkernel
yeah, that sounds slow
which is especially dumb considering iOS destroys lagdroid in Geekbench already

The main problem with C is it's hard for humans to reason correctly about memory usage above a certain project size. Something with compile time memory safety, whether Rust or another language, will take over most of C's role in userspace.

iOS and OS X use a XNU kernel based on the Mach microkernel.

>implying that Rust is better than C for OS development

>The hybrid kernel, often called the macrokernel, is primarily a monolithic kernel.
>Also a monolithic model, the modular kernel [...]
So buzzwords.

>mach
>microkernel
lol
en.wikipedia.org/wiki/Mach_(kernel)
>However, not all versions of Mach are microkernels.
>These include all using the XNU operating system kernel which incorporates an earlier, non-microkernel, Mach as a major component.
google
picks heavyweight ball and chain Java for lagdroid
picks microkernel architecture for kernel
lrn2performance google shills

Not entirely, but mostly

could have had buttery smooth iOS and Applebros
picked forever alone lagdroid java + microkernel instead

Attached: wojak.png (640x529, 91K)

Even android runs on phones since 10 years.
Even fucking javascript.
Phones are really powerful machines. Crap running on them disproves nothing.

If he was saying the truth, he will have written it already. Obviously a fakefag. By secondhand knowledge, NT, though not sure how much was MS-made and not bought or taken by others, was massively ahead of its time. It had features that Linux only got the recent decade. Linux has evolved; NT was designed.

I am amazed how an enormous monolith like Linux kernel is even working. People in cloud business would be stunned if they knew how things are done in kernel

You don't know how "things are done in the Kernel" either, so stop spouting what you heard somewhere.
People in the cloud business can just compile the kernel without all that hardware support, and Linux won't be as massive anymore.
It's still big, but mostly because it has to live with the reality of shitty hardware.

> that NEET who is always pretending otherwise on Jow Forums

>IIRC Windows NT
IIRC Windows XP had parts of its GUI run in kernel mode

>it's hard for humans to reason correctly about memory usage above a certain project size
Learn to modularize your code correctly then. You don't program an OS in C like you program a climbing game in C#.

>rust
kys

a schema is a hierarchy tumor

>plan9
>concept OS
>basic functionalities
>no drivers

vs
>linux
>advanced functionalities like virtualization, cgroups, netfilter, kprobes, async io, accelerated rendering
>support for many file systems and network protocols built-in
>drivers for almost everything

how is this sustainable? modularization and good documentation.
what makes plan 9 secure? just because it's small doesn't mean it's more secure than Linux.

> NT was designed
oh boy. just give a quick looks at the windows API
> NT_ISSURELYWELLDESIGNED(NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL)

Plan 9 is not great for their security you dipshit. Plan 9 is about good architecture
> everything is a chan(file)
> private namespaces
> clean, non intrusive ui

read the post I quoted, you dipshit.

Oh, even more bullshit. I guess I'm right then.

[citation need]

>concept OS
How is a concept OS the moment I can not only run it on QEMU but on bare hardware as well?

technet.microsoft.com/library/cc767881.aspx
>Most of the source code for Windows NT is written in C or C++.
>A small amount of the code in Windows NT is written in assembly language.
>Conveniently, device drivers are written in C for Windows NT so they are portable across different processor types.

B-b-but you can't play videogames on it!!!1!11

it has doom

learn to reading comprehension you fucking mongoloid, security was a marginal point

> provide a friend's friend cringeworthy quote
> no arguments
yes you're right

>modularization and good documentation.
It isn't really modular, and the documentation isn't good
It's just good enough to mostly work

9front

People would just ruin it the same way they ruined Linux.

>distributed operating system
how about no

what's the point of inferno? is it just a demo for limbo's vm?

sounds like redox needs a detox

Haiku is written in C++

>how is 25+ million lines of code sustainable, or, for that matter, secure?
Those lines include comments
Most of the kernel code is device drivers.
>Let's throw all that out and start again while supporting fewer devices.
Makes total sense.

How hard would it be to port them?