15 ms·
Ask HN: Is Minix dead? No commits since 2018
- COGlory 6y agoI could be wrong, but isn't Intel's management engine running Minix?
- notRobot 6y agoLooks like you're right: https://www.zdnet.com/article/minix-intels-hidden-in-chip-operating-system/ https://www.zdnet.com/article/minix-intels-hidden-in-chip-op...
- aufhebung 6y agoThe article says its a closed source variation, which is no doubt being actively worked on by Intel.
- Ericson2314 6y agoProbably not too actively, tbh. This could easily be a "vendor and forget" situation.
- FlyMoreRockets 6y agoThis begs the question, has Intel taken now over project ownership?
- yjftsjthsd-h 6y agoNot in a way that matters for the public/foss version
- FlyMoreRockets 6y agoWith no commits since 2018, it seems the public/FOSS version has effectively died.
- someperson 6y agoAs someone else mentioned here, MINIX is BSD-licensed rather than using a copyleft license like GPL. Intel is not required to share the source code (and they don't). If MINIX as a publicly developed project does die then it's a data point for copyleft licensing being more robust.
- trasz 6y agoIf it was licensed as copyleft it probably wouldn’t get used by Intel in the first place.
- someperson 6y agoBut now they're stuck with an out-of-date OS that's never getting any security updates. Ever. And it's exposed on the network because its used in Intel Management Engine. Meanwhile the Linux kernel is going strong with many companies helping maintain it. Seems like a shortsighted decision on Intel's part.
- tyingq 6y agoThe ME is 32 bit x86. Linux support there is pretty weak these days. I don't know that Intel has a lot of good choices.
- someperson 6y agoIs Linux kernel support for i386 really that weak? I know they've dropped 486 a few years ago and Debian dropped 586 (but the Linux kernel hasn't) and 686 is definitely still widely used. Linux only drops support when nobody uses the architecture anymore. And if Intel is using it for ME then there's a big case to be made for keeping it.
- tyingq 6y agoOne example: https://www.phoronix.com/scan.php?page=news_item&px=Linux-32-Bit-KPTI-Bug-Fix https://www.phoronix.com/scan.php?page=news_item&px=Linux-32...
- ilaksh 6y agoCheck out Redox OS. Takes a lot of inspiration from Minix.
- huachimingo 6y agoSee also Haiku OS[1], same but from BeOS. Looks very promising, but they are still on Beta. [1]https://www.haiku-os.org/ https://www.haiku-os.org/
- tialaramex 6y agoMmm. Redox has a microkernel like Minix, but written in Rust, so that it's potentially safer or at least easier to reason about what might be unsafe and why. Haiku is a conventional monolithic design, like BeOS, in fact arguably more so than shipped releases of BeOS because BeOS had a separate TCP/IP stack which made its network performance abysmal, Be Inc. had been working to fix that by just plonking the entire stack inside the kernel, and Haiku copies this approach. Like BeOS, Haiku is written in some specific dialect of C++. So the main similarity is that Haiku also hasn't shipped a version 1. Although that's maybe more striking after 20 years of development than Redox's 5-6 years.
- accurrent 6y agoBuilding an operating system is very hard. I'm not surprised that haiku is not yet 1.0. I would be surprised if redox os hit 1.0. It takes a lot of investment and unless you are targeting a few device (like apple does) it is almost impossible to have perfect compatibility with the huge variety of PC hardware out there.
- qchris 6y agoI'm having trouble finding the thread, but I believe the lead developer has stated that even in the kernel, the code only sits at something like 20-30% unsafe anyway, which is a huge reduction in overall vulnerable surface area.
- tyingq 6y agoI suppose https://fuchsia.dev/ https://fuchsia.dev/ is another option if you wanted a microkernel.
- dwheeler 6y agoInteresting, I don't see any announcement of a fork about Minux.
- steelframe 6y agoNetcraft confirms it.
- Pamar 6y agoand in Soviet Russia Minix develops you...
- pmarreck 6y agoEvery technology dies unless there is a human alive who cares enough about it. For futureproofing it, perhaps make a Docker container of it
- skissane 6y ago> For futureproofing it, perhaps make a Docker container of it You can't (directly) put an OS in a Docker container. Docker is an application container technology, not an OS virtualisation technology. Apps inside Docker run in user mode under the Linux (or less commonly, Windows) kernel. What you can do, is put an emulator in Docker, and put the OS in the emulator image. However, if your OS runs on a common platform (e.g x86 or x86-64), there is probably not much value to creating a Docker container vs just serving up the VM (such as a disk image or OVA file) for use with QEMU or VirtualBox or whatever. If you are dealing with a more obscure platform, it can make more sense to package the image and emulator together into a Docker container. For example, I put the 1970s vintage IBM mainframe operating system MVS 3.8J [0] in a Docker container. I think that makes more sense because it requires a less common emulator (Hercules as opposed to QEMU or whatever), and Hercules needs to be configured with a specific configuration to make it work. [0] https://hub.docker.com/r/skissane/mvs38j https://hub.docker.com/r/skissane/mvs38j
- technofiend 6y agoWhat a cool project. Now you have me on the hunt for SIMH docker images for PDP 11 and Vaxen.
- Kye 6y agoThe group linked from the project page is somewhat active: https://groups.google.com/g/minix3?pli=1 https://groups.google.com/g/minix3?pli=1
- kelnos 6y agoAnd someone seems to have asked the same question back in January: https://groups.google.com/g/minix3/c/CaGIAWYbzUo https://groups.google.com/g/minix3/c/CaGIAWYbzUo
- cxr 6y agoPretty much, yeah. https://groups.google.com/g/minix3/c/nUG1NwxXXkg https://groups.google.com/g/minix3/c/nUG1NwxXXkg Short story as I watched it: Tanenbaum got a couple grants totalling several million Euro. He hired some of his grad students to work on making it a production system. They made a lot of improvements, research-wise, but they also sort of made a mess of things. What they didn't do is set up any reasonable project infrastructure (e.g., a bug tracker) that would allow Minix as a project to grow into a healthy, thriving project at a size beyond those who were being paid to work on it, and for it to outlive their interest in it. The userspace was largely replaced by NetBSD's, and that involved clang replacing ack, so builds went from ~10 minutes to 3+ hours. Lots of small stuff like this, adding up to a project where no one is willing to exercise ownership and few outsiders are equipped to deal with it in its current state (even if interested). The best thing that you could do if you want Minix to be a thing is to prepare yourself for a deep dive and not look to "the community" with the belief that there is some consensus/approval to be had. Take charge in a fork of your own and make it the project you want it to be. If you wait for anyone else to take ownership, you're going to be waiting for a long time. If Minix is "dead", it's because poor ownership + the bystander effect killed it. Shades of excuses #1, #2, and #3 from jwz's "nomo zilla" are pretty appropriate here as well.
- Pet_Ant 6y agoI would support a Patreon for someone to work on it. I wonder how many would?
- noobermin 6y agoMoney is often the issue but if they have multimillion grants then that isn't the issue here.
- pyb 6y agoThey had one such grant, many years ago.
- rualca 6y agoYou can dump all the money in the world into a project, but if there is zero ownership among those involved, including top leadership, then that money simply goes to waste.
- dn3500 6y agoDidn't Tanenbaum retire about that time?
- rurban 6y agoHe still maintains the famous electorial college site, though as Hillary fanboy his activity dropped during the Trump years. But still much more than on minix, which is now run by Intel internally.
- winter_blue 6y agoLol, in the end, Andrew S. Tanenbaum won the operating systems wars[*], since MINIX is apparently likely now the most widely used operating system in the world: https://www.networkworld.com/article/3236064/minix-the-most-popular-os-in-the-world-thanks-to-intel.html https://www.networkworld.com/article/3236064/minix-the-most-... Interestingly, Linux might be right behind it, at second place, dominating servers, cars, and all sorts of industrial devices. But funnily enough in the end, when it comes to laptop and desktop computers, the Windows NT kernel, and the macOS Darwin kernel are still the reigning champions. It’s funny, because I think in the 90s, every OS designer was trying to take the place of MS-DOS/Windows/Mac. The two flamewar[*] buddies won out in the end, but likely not in the market segments they had initially expected to win. [*] https://en.wikipedia.org/wiki/Tanenbaum–Torvalds_debate https://en.wikipedia.org/wiki/Tanenbaum–Torvalds_debate
- darksaints 6y agoI think L4 has it beat. One variant alone, OKL4, has shipped in billions (possibly tens of billions) of mobile devices.
- aidenn0 6y agoI would argue that L4 is closer to "unix like" as a class than it is to Minix or Linux. The L4 kernels share a common API, but not necessarily a common ABI. Of course it's complicated because L4 itself is minimalistic, and the common API means you can get a monolith with a pluggable L4 kernel so there isn't a true apples to apples comparison.
- marcodiego 6y agoLinux runs on every android, most smart tv's, servers, routers... These are way more numerous than intel systems. Tanenbaum definitely lost this one.
- dilyevsky 6y agoAlso myriad of networking equipment around the world are in the process of switching or already runs linux
- mixmastamyk 6y agoRIP: Minix was the first "Unix like" I was able to tinker with. It was the very early 90s and I was taking a computer repair class (learning DOS, Mac, and Netware). Eventually I asked a teacher, "what is Unix?" and he said, "oh I've used it once or twice, it is quite elegant compared to DOS..." Sounded interesting, and somehow I found a copy of Minix for my 386 that I cobbled together from parts. Not sure where I got it, but probably downloaded from a BBS. A year or two later after getting a job, I'd discover Sun, SGI, and Linux. My experience with Minix helped me get around at the shell.
- throwawayboise 6y agoFirst ran Minix in the late 1980s on an 8088 PC with two floppy drives and no hard drive. I think it had 512K RAM. Used it for an undergrad operating systems course. Never used it again.
- ctdonath 6y agoLikewise. It was an intro OS-hacking platform, fine for learning about operating systems hands-on but clearly not up to par for serious use. Once learned, it inspired many students to delve into other competing - and more exotic - operating systems; having had a good look around the subject, we then found the real world was running on a small number of robust platforms, and Minix was never even close to being one of them.
- gumby 6y agoMinix is still under continued development but Intel isn't sharing their tree.
- foobar33333 6y agoThe wonders of non copyleft open source.
- deleted 6y ago[deleted]
- ArtTimeInvestor 6y agoLast time I checked it was the most popular OS in the world: https://www.networkworld.com/article/3236064/minix-the-most-popular-os-in-the-world-thanks-to-intel.html https://www.networkworld.com/article/3236064/minix-the-most-...
- morsch 6y agoAre there really that many Intel processors?
- someperson 6y agoThat's an extremely bad article and I wouldn't take any of its claims seriously
- perl4ever 6y agoIncluding the claim that Minix is running on modern Intel CPUs behind the scenes? This is referenced at: https://en.wikipedia.org/wiki/Intel_Management_Engine https://en.wikipedia.org/wiki/Intel_Management_Engine
- kevincox 6y agoThere is a good chance that this isn't true. For example I don't think most Android phones have any Minix and many could servers are running more than one instance of Linux vs the 1 instance of Linux.
- jibanes 6y agoI hope the same doesn't happen to NetBSD noticeably but also the other BSDs in general.
- alexhutcheson 6y agoWhat advantages does NetBSD have that distinguish it from other BSDs and other existing OS options?
- rjsw 6y agoI read the GP comment as feeling that NetBSD was more vulnerable to developers losing interest in it.
- alexhutcheson 6y agoYeah, and I was (sincerely) curious why they’d be disappointed if that happened.
- _huayra_ 6y agoI was looking at this the other day to learn OS stuff. Too bad, as it seems like a very nice design. Does anyone have any OS course / book recommendations? I've worked my way through the excellent MIT course on xv6 [0], but I'm not sure what to work on next. Something related to Linux or one of the BSDs would be nice to see how things are done in the real world. I cannot recommend this MIT course enough for those getting started. The projects are set up in a very nice way (i.e. if you can't complete one tricky assignment, you don't need it as a prereq for later ones) and the code is very simple. They've also gone to great lengths to set it up in a simple way (e.g. using cross-compilation for RISCV on qemu). It's also a great experience to really understand OS, as you'll make mistakes that will leave you scratching your head until you realize you messed up your page table and yeeted your kernel stack out of your address space. [0] https://pdos.csail.mit.edu/6.828/2020/index.html https://pdos.csail.mit.edu/6.828/2020/index.html
- linguae 6y agoThere's a nice free OS textbook by Remzi and Andrea Arpaci-Dusseau named Three Easy Pieces (https://pages.cs.wisc.edu/~remzi/OSTEP/ https://pages.cs.wisc.edu/~remzi/OSTEP/), which was recently featured on this site (https://news.ycombinator.com/item?id=26051386 https://news.ycombinator.com/item?id=26051386). There are some exercises from the textbook that use xv6. Here are some other nice OS textbooks from a Unix standpoint that I've used over the years whenever I need to study some aspect of Unix in depth: - The Design of the UNIX Operating System by Maurice Bach (1986) - The Design and Implementation of the FreeBSD Operating System, 2nd Edition by McKusick, Neville-Neil, and Watson (2014) - UNIX Internals: The New Frontiers by Uresh Vahalia (1996) (note that this book covers the implementations of Unix variants that were contemporary in 1996)
- _huayra_ 6y agoWow thanks! These are awesome resources! Do these books (or perhaps courses around them) contain a graduated set of exercises for understanding? That's the thing that was so great about the MIT course, but it's been difficult to find that elsewhere. A similar course with a great pedagogical progression was CS631 at Stevens [0], which went over Advanced Programming in the Unix Environment with a bunch of videos and exercises. [0] https://stevens.netmeister.org/631/ https://stevens.netmeister.org/631/
- WalterBright 6y agoAs coroner I must aver, I have thoroughly examined it, And it's not only merely dead, It's really most sincerely dead.
- boricj 6y agoFormer MINIX3 contributor here, I'd like to share my perspective. While others have noted that grant money has run out, for me MINIX3 is only as good as its weakest link: its microkernel has a really dated design. Imagine taking 1980s Unix and gutting it until you have a microkernel: it has a fork() primitive oddly enough, it's not SMP-safe, it's 32 bit only, processes only have one thread... It's the one area of the OS that hasn't changed that much since 1987. So while there has been some very good research done on it (https://wiki.minix3.org/doku.php?id=publications https://wiki.minix3.org/doku.php?id=publications, especially of note reliability in face of drivers and services misbehaving or crashing as well as live update of almost all drivers and services without interruption of service), it cannot take advantage of modern 64 bit, multi-core processors. Furthermore, the second weakest link is driver support. Running on bare metal is possible but vintage hardware is best suited for it because of the limited hardware support. Especially problematic is the lack of USB support on x86. NetBSD's rumpkernel would have been a potential in-tree solution to fix this, but sadly it has never been done. Anyways, these days the Zircon microkernel seems extremely promising. The design seems well thought-out, the object/handle/IPC mechanisms are especially interesting because it's rather unlike everything else done at this point that I'm aware of and processes can only interact with the rest of the system through handles, so it's trivial to sandbox things. As for me on OS development, right now I'm having fun hacking on SerenityOS. It's a sin for a micro-kernel guy like me, but who's to say I can't have a little bit of fun on the side?
- jacquesm 6y agoI'm very much in agreement with this comment, it is a fair assessment of Minix' weaknesses.
- maverick74 6y agoZircon... Another Google-product... No thanks! What's your opinion on Genode (on seL4)? (redox-os seems to be heading the way of the dodo as well...)
- boricj 6y agoI'll admit I've never played with or looked into Genode, so I can't meaningfully comment on it. Regarding seL4, I haven't played with it but I did read their whitepaper. I believe they are setting the gold standard for microkernels in reliability and correctness. Not many systems can claim to have a formally-verified trusted computing base of not only their source code, but the binary artefacts too. This is the closest kernel project I know of that can potentially mitigate against attacks as described in the paper "Reflections on Trusting Trust" by Ken Thomson. That is not to say that their approach is fool-proof. Like any proof, they make assumptions, which in this case is that the base hardware (CPU, MMU, memory...) does and only does what their specification claims, which the long list of erratas in Intel CPUs as well as Spectre, Meltdown, rowhammer, the Intel Management Engine debacle and others showed that they definitely don't. Not that other hardware vendors are immune too, by the way. Their formally-verified proof is also limited to the microkernel. So while they claim to guarantee that userland processes can't compromise the microkernel nor compromise other userland processes through the microkernel (which does have its uses in embedded systems requiring high reliability), it has no bearing on what the userland does. Heartbleed wouldn't have been stopped by seL4 for example, not to mention social engineering, evil maid attacks, DMA attacks, attacks on packaging system (I lost count of the number of NPM modules that were compromised over the years), not to mention plain user stupidity. In a way, "Reflections on Trusting Trust" by Ken Thomson has never been more relevant than today. On a typical Linux desktop operating system, we effectively blindly assume that hundreds of millions of lines of code, taken from tens of thousands of code repositories from the Internet, written in mostly unsafe languages (or languages whose interpreters/VMs are written in unsafe languages), running on a monolithic kernel with tens of millions of code written in C, running on hardware that is effectively a big black box, does what they're supposed to do and nothing more. Even if you do audit stuff, a human can't possibly audit everything from the LLVM compiler to your web browser, not to mention we are effectively emotionally-driven, tribal-minded, chemically-influenced, prejudiced, illogical and error-prone ape brains and anyone pretending to be a perfect Vulcan is either delusional or lying. Not to mention, I just read their whitepaper and thought to myself "yeah, sounds good". I haven't actually audited seL4, their methodology and their proof, so... As the meme says: everything is fine?
- schaefer 6y agoDuring the pandemic, I found myself unemployed with mountains of free time. I knew I specifically wanted to dig into minix as a pastime. In my mind, the text book(s), and a fully featured Unix with a small code base were a unique combination... That is, until I sat down to actually buy the book. The $200 price tag was beyond sticker shock. It was literally offensive. I didn’t take long to find Operating Systems: Three Easy Pieces (OSTEP)[1]. The book can be had for Legally FREE or Affordable. And the introduction contained (among everything else) a brief manifesto admonishing the crazy high prices of college text books. The book is funny, technically excellent, and also features a tiny-sized Unix like operating system: xv6. Pouring my hours into this book and learning the XV6 operating system was time well spent. [1]: https://pages.cs.wisc.edu/~remzi/OSTEP/?source=techstories.org https://pages.cs.wisc.edu/~remzi/OSTEP/?source=techstories.o...
- person_of_color 6y agoWhat job did you get with your knowledge?
- anthk 6y agoFrom Unix v6 to Advanced Programming in a Unix Environment it's a tiny step to do, and knowing C+Unix/Posix it's a huge advantage today.
- deleted 6y ago[deleted]
- goatinaboat 6y agoThis is sad. I have fond memories of running MINIX on the Atari ST - my first encounter with Unix.