MINIX


MINIX
MINIX
Minix3.png
The MINIX 3.1.8 boot screen
The MINIX 3.1.8 boot screen
Company / developer Andrew S. Tanenbaum
Programmed in C
OS family Unix-like
Working state Current
Source model Open source (originally COSS, now FOSS)
Latest stable release 3.1.8 / October 4, 2010; 13 months ago (2010-10-04)
Latest unstable release 3.2.0 / ?
Marketing target Teaching (v1, v2)
embedded systems (v3)
Available language(s) English
Available programming languages(s) C, C++, FORTRAN, Modula-2, Pascal, Perl, Python
Supported platforms PC, PC/AT, PS/2, Motorola 68000, SPARC, Atari ST, Commodore Amiga, Macintosh, SPARCstation, Intel 386, PC compatibles, NS32532, ARM and INMOS transputer
Kernel type Microkernel
Default user interface Command line interface (ash)
License Originally proprietary, BSD license since 2000
Official website minix3.org

MINIX is a Unix-like computer operating system based on a microkernel architecture created by Andrew S. Tanenbaum for educational purposes; MINIX also inspired the creation of the Linux kernel.

MINIX (from "mini-Unix") was first released in 1987, with its complete source code made available to universities for study in courses and research. It has been free and open source software since it was re-licensed under the BSD license in April 2000.

Contents

Implementation

MINIX 1.0

Andrew S. Tanenbaum created MINIX at Vrije Universiteit in Amsterdam to exemplify the principles conveyed in his textbook, Operating Systems: Design and Implementation (1987).

An abridged 12,000 lines of the C source code of the kernel, memory manager, and file system of MINIX 1.0 are printed in the book. Prentice-Hall also released MINIX source code and binaries on floppy disk with a reference manual. MINIX 1 was system-call compatible with Seventh Edition Unix.[1]

Tanenbaum originally developed MINIX for compatibility with the IBM PC and IBM PC/AT microcomputers available at the time.

MINIX 1.5

MINIX 1.5, released in 1991, included support for MicroChannel IBM PS/2 systems and was also ported to the Motorola 68000 and SPARC architectures, supporting the Atari ST, Commodore Amiga, Apple Macintosh and Sun SPARCstation computer platforms. There were also unofficial ports to Intel 386 PC compatibles (in 32-bit protected mode), National Semiconductor NS32532, ARM and INMOS transputer processors. Meiko Scientific used an early version of MINIX as the basis for the MeikOS operating system for its transputer-based Computing Surface parallel computers. A version of MINIX running as a user process under SunOS and Solaris was also available, a simulator called SMX.[2][3]

MINIX 2.0

Demand for the 68k-based architectures waned, however, and MINIX 2.0, released in 1997, was only available for the x86 and Solaris-hosted SPARC architectures. It was the subject of the second edition of Tanenbaum's textbook, co-written with Albert Woodhull and was distributed on a CD-ROM included with the book. MINIX 2.0 added POSIX.1 compliance, support for 386 and later processors in 32-bit mode and replaced the Amoeba network protocols included in MINIX 1.5 with a TCP/IP stack. Unofficial ports of MINIX 2.0.2 to the 68020-based ISICAD Prisma 700 workstation[4] and the Hitachi SH3-based HP Jornada 680/690 PDA[5] were also developed.

Minix-vmd

Minix-vmd is a variant of MINIX 2 for Intel IA-32-compatible processors, created by two Vrije Universiteit researchers, which adds virtual memory and support for the X Window System.

MINIX 3

MINIX 3 was publicly announced on 24 October 2005 by Andrew Tanenbaum during his keynote speech on top of the ACM Symposium Operating Systems Principles conference. Although it still serves as an example for the new edition of Tanenbaum and Woodhull's textbook, it is comprehensively redesigned to be "usable as a serious system on resource-limited and embedded computers and for applications requiring high reliability."

MINIX 3 currently supports only IA-32 architecture PC compatible systems. It is available in a Live CD format that allows it to be used on a computer without installing it on the hard drive, and in versions compatible with hardware emulation/virtualization systems, including Bochs, Qemu, VMware Workstation/Fusion, VirtualBox and Microsoft Virtual PC.

Version 3.1.5 was released 5 November 2009. It contains X11, emacs, vi, cc, gcc, perl, python, ash, bash, zsh, ftp, ssh, telnet, pine, and over 400 other common Unix utility programs. With the addition of X11, this version marks the transition away from a text-only system. It can also withstand driver crashes. In many cases it can automatically replace drivers without affecting running processes. This feature will be improved in future releases. In this way, MINIX is self-healing and can be used in applications demanding high reliability. MINIX 3 also has support for virtual memory management, making it suitable for desktop OS use.[6] Desktop applications such as Firefox and OpenOffice.org are not yet available for MINIX 3 however.

With the creation of MINIX 3, and its transition to a graphical interface, some commercial software and hardware developers have started to implement some systems with MINIX in the late 2000s.[citation needed]

MINIX and Linux

The design principles Tanenbaum applied to MINIX greatly influenced the design decisions Linus Torvalds applied in the creation of the Linux kernel. Torvalds used and appreciated MINIX, however, his design deviated from the MINIX architecture in significant ways, most notably by employing a monolithic kernel instead of a microkernel. This was famously disapproved of by Tanenbaum in the Tanenbaum–Torvalds debate. Tanenbaum explained again his rationale for using a microkernel in May 2006.[7]

Early Linux kernel development was done on a MINIX host system, which led to Linux inheriting various features from MINIX, such as the MINIX file system.

In May 2004, Kenneth Brown of the Alexis de Tocqueville Institution made the accusation that major parts of the Linux kernel had been copied from the MINIX codebase, in a book called Samizdat.[8] These accusations were rebutted universally—most prominently by Andrew Tanenbaum himself, who strongly criticised Kenneth Brown and published a long rebuttal on his own personal website.[9][10]

Licensing

At the time of its original development, the license for MINIX was considered to be rather liberal. Its licensing fee was very small ($69) compared to those of other operating systems. Although Tanenbaum wished for MINIX to be as accessible as possible to students, his publisher was not prepared to offer material (such as the source code) that could be copied freely, so a restrictive license requiring a nominal fee (included in the price of Tanenbaum's book) was applied as a compromise. This prevented the use of MINIX as the basis for a freely distributed software system.

When free and open source Unix-like operating systems such as Linux and 386BSD became available in the early 1990s many volunteer software developers abandoned MINIX in favor of these. In April 2000, MINIX became free/open source software under a permissive free software license,[11] but by this time other operating systems had surpassed its capabilities, and it remained primarily an operating system for students and hobbyists.

See also

References

  1. ^ "Operating Systems Design and Implementation". 1997. ISBN 0-13-638677-6. http://minix1.woodhull.com/osdi2/. Retrieved August 2, 2011. 
  2. ^ "WELCOME TO MINIX" (TXT). July 22, 2005. http://www.minix3.org/previous-versions/CD-ROM-2.0/README.TXT. Retrieved August 2, 2011. 
  3. ^ M. Flouris. "Installing and running MINIX for Solaris (SMX)". http://www.csd.uoc.gr/~hy345/assignments/99b/smx_howto.html. Retrieved August 2, 2011. 
  4. ^ George Harvey. "Minix on the Prisma". http://dspace.dial.pipex.com/town/way/fr30/minix/. Retrieved August 2, 2011. 
  5. ^ "MINIX for Jornada". Sep. 23, 2002. Archived from the original on December 11, 2002. http://web.archive.org/web/20021211135921/http://minixsh.tripod.co.jp/index.html. Retrieved August 2, 2011. 
  6. ^ Ulrich Schmidt (November 10, 2010). "New to minix". http://groups.google.com/group/minix3/msg/86c914a0c13376fe. Retrieved August 2, 2011. 
  7. ^ Andrew S. Tanenbaum (May 12, 2006). "Tanenbaum-Torvalds Debate: Part II". http://www.cs.vu.nl/~ast/reliable-os. Retrieved August 2, 2011. 
  8. ^ Kenneth Brown (June 4, 2004). "Samizdat's critics... Brown replies". Alexis de Tocqueville Institution. Archived from the original on March 3, 2009. http://web.archive.org/web/20090303090226/http://adti.net/samizdat/brown.reply.june.04.html. Retrieved August 2, 2011. 
  9. ^ Andrew S. Tanenbaum (May 20, 2004). "Some Notes on the "Who wrote Linux" Kerfuffle". http://www.cs.vu.nl/~ast/brown/. Retrieved August 2, 2011. 
  10. ^ Andrew S. Tanenbaum (May 10, 2011). "MINIX 3 FAQ". http://www.MINIX3.org/doc/faq.html#Legal_Questions. Retrieved August 2, 2011. 
  11. ^ "The Minix licence". http://www.minix3.org/license.html. 

External links


Wikimedia Foundation. 2010.

Look at other dictionaries:

  • MINIX 3 — running X11 with TWM as Window Manager. Company / developer Andrew S. Tanenbaum OS family Unix like Working state …   Wikipedia

  • Minix — 3.1.3a Разработчик Эндрю Таненбаум …   Википедия

  • Minix — Parte de la familia Unix MINIX 3.1.2a Desarrollador …   Wikipedia Español

  • MINIX FS — ó MINIX file system Desarrollador(a) Comunidad Open Source Nombre completo MINIX file system Introducido (MINIX 3.1.2) Identificador de la partición Estructuras Contenido del directorio …   Wikipedia Español

  • MINIX — 3.1.2a Minix est un système d exploitation, clone d UNIX, fondé sur un micro noyau créé par un professeur nommé Andrew S. Tanenbaum à des fins pédagogiques, volontairement réduit afin qu il puisse être compris entièrement par ses étudiants en un… …   Wikipédia en Français

  • Minix — 3.1.2a Minix est un système d exploitation, clone d UNIX, fondé sur un micro noyau créé par le professeur Andrew S. Tanenbaum à des fins pédagogiques, volontairement réduit afin qu il puisse être compris entièrement par ses étudiants en un… …   Wikipédia en Français

  • MINIX fs — Introduction 1987 (MINIX 1.0) Identificateur de partition 0x81 Limitations Taille maximale du nom de fichiers 14 Taille maximale de volume 64 Mio …   Wikipédia en Français

  • MINIX Fs — est le système de fichiers utilisé par l OS Minix et le premier à avoir fonctionné sous Linux. Il a de nombreuses limitations (partition de 64 Mo et noms de fichiers de 14 caractères au maximum, un seul horodatage, etc). Néanmoins il reste très… …   Wikipédia en Français

  • Minix fs — est le système de fichiers utilisé par l OS Minix et le premier à avoir fonctionné sous Linux. Il a de nombreuses limitations (partition de 64 Mo et noms de fichiers de 14 caractères au maximum, un seul horodatage, etc). Néanmoins il reste très… …   Wikipédia en Français

  • Minix — hat im EDV Bereich folgende Bedeutungen: das Betriebssystem: siehe Minix (Betriebssystem) das Dateisystem: siehe Minix (Dateisystem) Diese Seite ist eine Begriffsklärung zur Unterscheidung mehrerer mit demselben Wort bezeichne …   Deutsch Wikipedia