What is your ideal kernel like, user?

What is your ideal kernel like, user?
Do you prefer monolithic kernels, microkernels, exokernels? I know several anons here like exokernels, but honestly I kinda have trouble wrapping my brain around them. They just do scheduling and superminimal memory management, and that's it? Everything else is done in the libOS?

Anyway, discuss your ideal kernel.

Other urls found in this thread:

pdos.csail.mit.edu/archive/exo/
genode.org/
twitter.com/AnonBabble

Linux.

What things specifically about linux do you believe make it the superior kernel?

sel4 seems like the perfect kernel. Too bad there's no full POSIX compliant OS made with it.

SeL4 is only part of a complete breakfast.

L4 with gnu/hurd on top of it, sadly I may not be alive when the hurd is ready

I thought they abandonned this.

No, but with only a dozen people working on it at any time, it's going nowhere fast.

It's still being maintained.

At least, the hurd. If you're talking about porting the hurd to L4, then I don't know. They were content with mach 5 years ago.

I'm talking about ditching GNU mach.

microkernels
Everything beside hardware management is in the userland.
No root required anymore.

I want high parallelism, high IO, high reliability filesystem, and bulletproof OS-level emulation. Ideally I'd love to have the kernel be a microkernel or exokernel (microkernel but IPC is a service in userland). Feature-wise, though, Solaris/Illumos fits the bill best. It has ZFS, it has DTrace, it has Zones, and more. The only drawbacks are it's a heavyweight kernel which I think may be difficult to get onto small/old hardware (ARM or equivalent), and poor device support.
Oracle canned 90% of Solaris and SPARC staff a week or two ago. HOPEFULLY that will free up resources to contribute to Illumos and OpenIndiana. Solaris is the firebird which, upon her ascent, flew too close to the SUN and burst into flames, falling back to Earth, ashes scattered about her nest. Illumos her daughter is but a small point of light born in those ashes; and like a thousand points of light she shall rise and ascend into the heavens again; and by the glory and light of her mother may she consume and become the MOON itself, and forever cast her great light upon this land.
ALL HAIL THE GREAT PHOENIX! LONG LIVE ILLUMOS!

exokernels are like UEFI right? OS does it and ther kernel interfaces with that.

I can't do better than any of the current serious offerings (i.e not NT and ones made by students for learning) so I'll just stick to loonix which is the best.

OP asked about ideal kernels, not practical kernels

Hey its OP. Anyone want to spoon feed me on exokernels? I still don't get it.

The only thing an exokernel does is multiplexing, as low level as it can. Technically also some security, but only what's necesary to avoid anything subverting the multiplexing. This applies to everything from memory to storage, to cpu time to network access. All other abstractions and functions are in untrusted libraries in userspace.

Just seems like instead of doing away with abstractions, you'll be making those abstractions over and over with every library.

...

I don't know anything about kernels except in the superficial sense that they're some kind of intermediate translation layer between inputs and hardware.

All I want my kernel to do is be fast and reliable as fuck and work with as many different kinds of hardware as possible.

What about megalithic kernels?

Doing away with abstractions was never the point. Moving all that stuff to untrusted userspace and minimising trusted kernel code is a major architectural improvement for security. Being able to have different "libary OSs" to support the abstractions from different operating systems is a feature, as is being able to customise more optimal abstractions as required. The MIT exokernel had pretty hefty speedup for a webserver using such techniques. They also found that having abstractions in userspace libraries instead of the kernel made it easier to experiment. See: pdos.csail.mit.edu/archive/exo/

Potential difficulty of communicating between programs using different abstractions is a problem of the design.

Can IPC be done outside the kernel?

In an exokernel IPC is always done outside the kernel. All an exokernel does is handle resource requests, ensuring that a program only gets the resource (chunk of memory, disk block, cpu timeslice, etc) if it's free and the program is allowed to access it. Secure low level hardware multiplexing. That's it.

It just seems everything else is being made a lot more complicated using the excuse of speed. Like if you wanted to make processes that use different libOS's communicate, you'd have to set up a standardized inter libOS protocol, or have a libOS that translates between the two libOS's.

Not just that. The excuses of flexibility and security/provability also feature prominently.

I like my kernels the way I like my immigrants: mantained and well documented. A bdfl to kick out any infracting commits is a bonus.

No kernel. Everything should run in one address space the way God intended.

My ideal kernel would be a Minix-based microkernal and OS embedded right in the CPU, allowing me to do extensive forensic examination of everything connected to the computer, from a remote location, without the computer-owner's knowledge, and some of which would be possible even when the computer is "turned off". Thank goodness such a thing would only be dreamed up in a dystopian, Orwellian nightmare world, even if it were physically possible.

t. AMD FX-83xx user

t. IBM POWER8 user

Genode seems to be the best thing going. Based off the L4 kernel but uses virtualisation to use any driver from any OS.
genode.org/

Yeah. I guess its flexible in the sense that you get to start over from scratch every time you write something.

Do you not know what libraries are or something?

Linux was written by Linus Trovalds, while he was a student at the University of Helsinki, so that he could learn about the 386.

Yes, but you don't seem to know about exokernels and libOS's.

neat

Your mom was fucked by me, while she was whoring herself at the street, so that she could snort cocaine.

Cool shit but
Germany
yeh, that's the trashcan

Linux was written by thousands of people allover the world, Red Hat, Microsoft, Google and other companies, Linus just wrote the first 10 lines while he was a student at the University of Helsinki, so that he could learn about the 386.

Linus is still in charge. You want to remove the OOM killer and replace it with sane error handling? Too bad.

Not to mention autistic shit like "ONLY 1 CPU SCHEDULER ALOUD"

it's free software
where the company is situated is absolutely irrelevant
you are willing to throw something only because it goes against your political believes?

you absolute Holla Forums or Holla Forums faggot, go back

I'd believe it, she did marry you, you car crashing piece of shit.

Hey exokernelfag. You still around?
How does IPC work between libOS's?
If two libOS's have totally different process scheduling, how does that work? It seems like there would be a lot of glue code to get multiple libOS's to play nice with each other.