
Show HN: Minoca OS – A new lightweight kernel, completely from scratch - EvanGr
http://www.minocacorp.com/download/
======
SwellJoe
I suspect novel proprietary kernels are a very difficult business niche. I'm
unaware of any new commercially viable OS kernel that has come along in the
past decade...maybe even longer. Linux (and to a lesser degree, BSD) seem to
have a very firm lock on the market, from quite small devices on up to very
large ones. Certainly, there's still room at the very bottom (devices smaller
than RPi) and at the very top (what little big iron remains) that isn't owned
completely by free and Open Source systems...but, it's looking like a pretty
tight squeeze, to me, for a system that targets the small end of Linux'
market, and does so without some dramatic differentiation (the mentioned 5MB
size is entirely do-able with Linux, even modern Linux...old Linux kernel
versions could fit on a floppy with room to spare for utilities).

It's not that I don't like seeing new kernels and new ideas. I'm just not
seeing a path to profitability for something like this (but I thought Dropbox
was a bad idea, so I may be stupid).

So, what's the market niche for this that isn't better served by an Open
Source platform?

~~~
riyadparvez
QNX is a commercially successful micro-kernel being used in automotive
industries.

~~~
SwellJoe
QNX is 30+ years old, and is effectively defunct except in a few niche markets
after being acquired by Blackberry (and was losing market share to Linux for
decades before that). QNX is not an example of a new and successful
proprietary kernel competitor to Linux, despite being well-regarded and pretty
neat technology.

------
ori_b
It looks like this is a closed binary blob. Disappointing, since I'm curious
to see what exactly it does differently.

I'm also not entirely sure why I would want to use this over Linux, from
reading the website.

~~~
sievebrain
Better debugging, commercial support, stable/better driver API I would assume.
They explicitly state they take away the pain of constantly maintaining
patches.

~~~
sciurus
[http://www.windriver.com/products/linux/](http://www.windriver.com/products/linux/)

------
Matthias247
That page is really missing a description who is maintaining it (who is the
team, how big is it, where is it located?), especially if it is marketed as a
commercial offer. I don't think anybody will download binaries from some
unknown individual and build a commercial product on top of it. In Germany you
could even get sued for a page like this.

------
api
It would be really awesome if you could provide a quick and easy way to test
it. If this is really so small one possibility would be to port to run on one
of the many JavaScript machine emulators like:

[http://bellard.org/jslinux/](http://bellard.org/jslinux/)

It would let you try the OS in the browser.

------
kevincox
The "Product" page gives a much better explanation of why we should care then
the linked "Download" page.

------
matsur
Interesting. How much "smaller" is this in practice than a stripped down Linux
image?

~~~
EvanGr
It boots to a shell in about 5MB of RAM, with networking and USB. Both Linux
and Minoca can get smaller than that depending on how much you're willing to
strip. The goal was to start lean and clean and then go up or down depending
on specific needs. (Disclaimer: I work on Minoca OS).

------
nickpsecurity
People used to use eCOS and RTEMS for this stuff. Plenty of components
available for each, too. Anyone wanting minimal OS should check them out.

------
projektfu
Can it provide any real-time guarantees? The main reason why I would change OS
on the Raspberry Pi 3 is to get real-time behavior.

~~~
EvanGr
Not at the moment, but our interrupt overhead and number of background tasks
is so low it's something we're thinking about. Is there a specific scenario
you're trying to enable?

~~~
projektfu
I don't mind the "heaviness" of Linux on the RPi but I cannot rely on its
user-space interrupts for GPIO use from userland. Instead, I have to write
kernel software or give up on guarantees. So far it hasn't been much of a
problem, but if I wanted to do more tightly timed things, I'd need to use a
real-time OS.

Meanwhile, it's nice having the support of lots of Linux software so it's hard
to justify switching to a non-real-time OS with much less support.

I've noticed, browsing the RPi forums, that people are disappointed that they
can't get real-time behavior from Raspbian.

------
gpt
Cool! Can you describe a user who would see this as a perfect fit?

~~~
EvanGr
We're systems people, so we can help folks building new hardware devices with
tasks like bring-up and sustained support. There's a stable kernel API, which
makes component level updates within the kernel possible.

------
cordite
It looks neat, but is this something I'd use a RPi as an overpowered arduino
for? What does this offer?

~~~
EvanGr
Yes, you could use Minoca to manage GPIO and other low level hardware. One
area where we're working to excel is power management. There's so little in
the OS that we're able to go very idle, and stay there for long periods.
Another area we're focused on is component level servicing: being able to
update components within the kernel while maintaining a high degree of
stability.

To user mode we'd like to present a largely compatible interface, while in the
kernel we want to innovate using new designs and a clean slate.

------
qz_
Is this a commercial product? If so, what's your business model? This looks
really neat by the way.

~~~
smhenderson
Just a quick review of the site - the "Product" page - shows a lite version
and a pro. Lite has debugging symbols built in that can't be stripped. It is
compiled at a lower optimization level than pro.

It says for Access to Source: Lite - Limited, Pro - Unlimited

Not sure what that means though, I didn't dig very far.

Found the above here:
[http://www.minocacorp.com/product/](http://www.minocacorp.com/product/) \-
scroll down a bit to find the product comparison. I quickly checked each top
level page and did not see any prices. Unless I missed something it looks like
it's a contact us and we'll tell you situation wrt pricing...

~~~
koolba
(emphasis mine):

> It says for Access to Source: Lite - Limited, Pro - _Unlimited_

In the software world I'd consider anything less than BSD/MIT licensed source
code limited.

~~~
cyphar
> In the software world I'd consider anything less than BSD/MIT licensed
> source code limited.

Or GPL. Any free license would be acceptable.

~~~
haikuginger
GPL is by nature limited. All viral licenses are.

~~~
belorn
All software licenses are limited. Im limited to following the BSD license
conditions in BSD licensed software or I won't be able to redistribute the
software.

The only non-limited license is the non-license that goes under the name
_public domain_ , but then I am again limited to only use software that was
developed 100 years after the developers death. Some punched cards "programs"
from IBM in the late 1800s should thus now be the first unlimited "software"
which everyone is free to use.

------
ComputerGuru
What's the hardware compatibility like? If you're open to it, there is a
market for something that will boot with the bare minimum non-specialized
generic drivers on _all_ hardware into a shell or some form of UI.

~~~
EvanGr
We currently run on x86 PCs and a number of ARM SoCs (the linked page should
give you an idea of which ones). Adding support for new SoCs and boards is
pretty straighforward. Feel free to reach out to me directly with what you
have in mind: evan AT minocacorp.

------
wjimenez5271
Very cool! Do you think this has an application outside of embedded, like
microkernels for lightweight containers?

------
dfritz
This project looks promising, but I can't find the link on the website to
download the sources.

