Minix 3 (2014)

86 pointsposted 8 hours ago
by droideqa

24 Comments

linsomniac

6 hours ago

"News" page last update: March 2016. Maybe need a "(2014)" on the title, looks like that was when 3.3.0 was released.

dang

5 hours ago

Ok, added. Thanks!

jmorenoamor

6 hours ago

I remember having to implement partial file locking in Minix as an assignment in college. Good times,

jschulenklopper

2 hours ago

Same here. I adapted the file system to honor user quota, and changed the kernel to support priority process scheduling. We also needed to implemented a change in the memory management part... that ironically I cannot remember anymore.

teddyh

7 hours ago

Now mostly used in the Intel Management Engine.

mrweasel

4 hours ago

Does anyone know why Intel would pick Minix? I can understand not picking Linux, from a licencing perspective, but surely some BSD would have been easier to hire for and more likely to have a modern upstream.

teddyh

3 hours ago

Intel may have needed some of Minix’ unique (for the time) features, like its microkernel architecture and seamless live updates of system components.

Rochus

2 hours ago

Actually I would be interested to see an official confirmation by Intel that they indeed still use Minix, and which version of it. So far all such claims I'm aware of came from third parties.

lacoolj

6 hours ago

not sure what makes this "news" but it did give me some nostalgia in the "Getting Started" page:

> Now you are ready to start the installation procedure. When installing to the bare computer, put the CD-ROM in the drive, close the door and shut the computer down.

henning

7 hours ago

Dead project?

boricj

5 hours ago

Deader than disco. I seem to reiterate the technical reasons every couple of months or so [1], therefore this time I'll talk more about the management of the project, although I was not a member of the core team so it's mostly observation from the outside in.

Historically, the operating system was largely used as a research platform for writing papers and theses [2]. Unfortunately, research code isn't production-grade code, so despite a lot of effort done to mainline some of it, not all of it was merged. Also, while there was a steady supply of new students to work on MINIX3, there was also a steady turnover because students who finish their studies generally move on to new things.

With the looming retirement of Andrew Tanenbaum in 2014, the project pivoted focus to embedded systems, due to the technical strengths and weaknesses of the system at that time. The ARM port was done around that time as part of it to leverage small board computers. Eventually, the funding dried up and the project slowed to a standstill, largely I believe due to an unsustainable maintenance burden caused by accumulated tech debt over decades that the remaining development manpower (all contributors working on their free time, including myself) couldn't address.

MINIX3 still has some unique cool stuff to this day like seamless live updates of system components, but for me it's too shackled by its past to have a future. It'd be a lot of work to bring it up to modern standards and personally by the time I'd be done with that I think ought to be done, it wouldn't look like MINIX anymore.

[1] https://news.ycombinator.com/item?id=40762110

[2] https://wiki.minix3.org/doku.php?id=publications

SoftTalker

4 hours ago

I'm sure the emergence of other open-source operating systems (Linux and BSD) also contributed to the drop in interest?

If you were teaching an OS class in the late 1980s/early 1990s and wanted to have students work on and compile the source code of a UNIX-like system, using desktop PCs of the era, Minix was pretty much it wasn't it?

boricj

3 hours ago

> I'm sure the emergence of other open-source operating systems (Linux and BSD) also contributed to the drop in interest?

At that time, MINIX had a proprietary license (it wasn't open-source until 2000) and its stated purpose was being a teaching tool for education, not being a production operating system. I can't find the quote itself, but I recall Tanenbaum once said something along the lines of "Turns out I do want to turn MINIX3 into a product, it just took me thirty years to realize it!" (please don't quote me on that unless I manage to dig up the actual quote).

> If you were teaching an OS class in the late 1980s/early 1990s and wanted to have students work on and compile the source code of a UNIX-like system, using desktop PCs of the era, Minix was pretty much it wasn't it?

Nowadays, xv6 fills that niche. Recent versions of MINIX3 arguably outgrew that with the switch over to the NetBSD userland.

SoftTalker

3 hours ago

> At that time, MINIX had a proprietary license

Thanks, I didn't remember that but now that you say it that sounds right. Still, I think it was one of the few ways students at the time could inspect the code of a complete OS, modify it, recompile it, and run their changes, all on the PC that many of them had at home or in classrooms.

GianFabien

2 hours ago

Minix was the foundations upon which Linus built his early versions of Linux.

GianFabien

2 hours ago

For me Minix became bloated when they transitioned to supporting BSD userland and X11.

The considerable bloat detracted from the principle of using Minix to teach OS principles.

chipdart

5 hours ago

> Deader than disco.

The real question is whether the project is deader than HURD.

boricj

5 hours ago

Given that HURD has a steady trickle of commits and an ongoing quarterly status update on their website, it's more alive than MINIX3 currently is.

my123

4 hours ago

Harder to say in practice than that, because Minix 3 has production deployments on the Intel (CS)ME, across hundreds of millions of machines, something that the Hurd never had

boricj

3 hours ago

Tanenbaum published an open letter about this [1]. The gist of it is that Intel took MINIX3 to create the Intel Management Engine, but never contributed anything back. This was permitted by the BSD license, but all these deployments didn't actually help MINIX3 itself grow as a project.

[1] https://web.archive.org/web/20240920163544/https://www.cs.vu...

Rochus

2 hours ago

> because Minix 3 has production deployments on the Intel (CS)ME

Is there actually an official Intel document which confirms this? So far I only saw claims by third parties. Do we know which version of Minix was used, and which parts of it?

ChocolateGod

5 hours ago

easy win, HURD was never alive in the first place to be dead