We are still actively working on the spam issue.

MINIX

From InstallGentoo Wiki
Revision as of 10:50, 28 February 2014 by Wkn Mako (talk | contribs) (Initial page draft. Needs revision and expansion later.)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
MINIX 3 Racoon: Small, Cute, Clever, Agile, and Eats Bugs

MINIX 3 is a small free UNIX clone designed for very high reliability. It is especially well-suited for low-end PCs, resource-constrained systems, and embedded applications. It is free and open-source, which makes it well-suited to classroom or self-study by those wishing to learn the inner machinations of operating systems.

History and Origin

For Whom the Bell Labs Toll

Way back when the fine folks over at Bell Labs released UNIX version 6, it was the toast of the academic world as scholars and computer-scientists the world over intensely studied the source code of the system. With the next iteration, however, Bell Labs decided UNIX v.7 needed a "no teaching" clause and abruptly ended an era where computer science students could actually use the internals of a real OS to learn from instead of just vague theory.

Big Pappa Andy "Sexfiend" Tanenbaum wasn't having that and exclaimed "Fuck these corporate whores and their hatred of all things scholastic. I'll do it myself!" and wrote the first version of MINIX (MIni uNIX) from scratch, completely free of any proprietary UNIX code. He released a book titled Operating Systems: Design and Implementation which not only taught the internal workings of a UNIX-like OS, but contained a complete printed listing MINIX's source code in the book to do so. The OS was designed to run on cheap(ish) PCs that the typical college student of the day could likely have access to, such as the IBM 5150 boasting a modest 64k+ of RAM, a floppy-disk drive or two, and no hard drive.

The victory would prove bittersweet, however, as the system's code at the time was not completely free to modify or redistribute.

MINIX vs. The World

As MINIX's popularity grew in the academic world, so did the desire of programmers around the world to extend it's capability as a fully-fledged OS. Tanenbaum successfully resisted the desire to turn MINIX into a big project at the time, citing his intention for it to be small and simple enough to teach in classrooms, much to the chagrin of the hacker community at large. A certain Finnish university student named Linus Torvalds was one of them. Dissatisfied with MINIX's limited capabilities, he set out to create his own 32-bit operating system. Although he did not directly copy the source code, he did develop his system on MINIX and use the inner workings as a strong influence and model. He would later announce his modest little project on the Usenet group comp.os.minix, taking suggestions for improvement and code from those who were interested. The rest is history.

Evolution

Operating Systems: Design and Implementation (3rd Edition)

MINIX 2

The years wore on and MINIX did eventually expand as the computing world changed. An updated version of Operating Systems: Design and Implementation was released alongside MINIX 2.0 in 1997 for the x86 and SPARC architectures.

MINIX 3

After becoming more and more concerned with software modularity and the notion that MINIX may have become too bloated and complicated, Tanenbaum decided a complete re-writing was in order and gave rise to something completely different from the previous two interations. OSDI's third edition was released in 2006 along with a brand-spankin' new MINIX 3: reborn and repurposed to be a variable juggernaut that can chug through bugs and repair itself via reincarnation servers running in user-space.

Current State

MINIX's current version stands at 3.2.1 (released February 22, 2013). The primary goals of the project are to provide an extremely stable and reliable OS for embedded systems along with it's original purpose for teaching OS mechanics. The current development efforts focus primarily on porting over NetBSD userland utilities and applications while expanding capabilities on embedded-oriented architectures like ARM.


External Links