Académique Documents
Professionnel Documents
Culture Documents
Contents
[hide]
• 1 Implementation
○ 1.1 MINIX 1.0
○ 1.2 MINIX 1.5
○ 1.3 MINIX 2.0
1.3.1 Minix-vmd
○ 1.4 MINIX 3
• 2 MINIX and Linux
• 3 Licensing
• 4 See also
• 5 References
• 6 External links
[edit] Implementation
[edit] 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.
[edit] 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]
[edit] 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.
[edit] Minix-vmd
Main article: 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.
[edit] MINIX 3
Main article: 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] It is expected that MINIX may become an influential operating system in
the 2010s as large kernel operating systems have peaked as a software technology.[citation needed]
[edit] 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, but 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]
[edit] 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
licence,[11] but by this time other operating systems had surpassed its capabilities, and it remained
primarily an operating system for students and hobbyists.
[edit] See also
Free software portal
• MINIX file system
• Minix-vmd
[edit] References
1. ^ Operating Systems Design and Implementation
2. ^ http://www.minix3.org/previous-versions/CD-ROM-2.0/README.TXT
3. ^ http://www.csd.uoc.gr/~hy345/assignments/99b/smx_howto.html
4. ^ http://dspace.dial.pipex.com/town/way/fr30/minix/
5. ^ http://web.archive.org/web/20021211135921/http://minixsh.tripod.co.jp/index.html
6. ^ [1]
7. ^ Tanenbaum-Torvalds Debate: Part II
8. ^ Alexis de Tocqueville Institution/Kenneth Brown, 'Samizdat's critics... Brown replies',
http://www.adti.net/samizdat/brown.reply.june.04.html
9. ^ Tanenbaum, Andrew S. 'Some Notes on the "Who wrote Linux" Kerfuffle',
http://www.cs.vu.nl/~ast/brown/
10. ^ Tanenbaum, Andrew S. 'MINIX 3 FAQ', http://www.MINIX3.org/doc/faq.html#legal
11. ^ "The Minix licence". http://www.minix3.org/license.html.
• Official website
• MINIX at the Open Directory Project
• History of MINIX from Andrew Tanenbaum
• MINIX 3: a Modular, Self-Healing POSIX-compatible Operating System on YouTube
[show]v · d · eUnix and Unix-like operating
systems
G
e
nCopyleft · Events and Awards · Free software · Free Software Definition · Gratis versus libre ·
eList of free and open source software packages · List of project directories/Comparison of
rhosting facilities · Open-source software
a
l
OAROS · BSD · Darwin · eCos · FreeDOS · GNU · Haiku · Inferno · Linux · Mach · MINIX ·
pOpenSolaris · Plan 9 · ReactOS · Symbian
e
r
a
t
i
n
g
s
y
s
t
e
m
f
a
m
i
l
i
e
s
D
e
v
e
l
Eclipse · Free Pascal · GCC · Gambas · Java · LLVM · Lua · NetBeans · Open64 · Perl · PHP ·
o
Python · ROSE · Ruby · Tcl
p
m
e
n
t
H
i
s
tGNU · Haiku · Linux · Mozilla (Application Suite · Firefox · Thunderbird)
o
r
y
L
i
c
eApache · Artistic · BSD · GNU GPL · GNU LGPL · ISC · MIT · MPL · Ms-PL/RL · zlib · FSF
napproved licenses
c
e
s
L
i
c
e
n
s
e
sOpen Source Definition · The Free Software Definition · Debian Free Software Guidelines
t
a
n
d
a
r
d
s
C
h
a
lBinary blob · Canonical's contributor agreement · Digital rights management · Graphics
lhardware compatibility · License proliferation · Mozilla software rebranding · Proprietary
esoftware · SCO-Linux controversies · Security · Software patents · Hardware restrictions ·
nTrusted Computing · Viral license
g
e
s
t
o
p
i
c
s
Bottom of Form
Navigation
• Main page
• Contents
• Featured content
• Current events
• Random article
• Donate to Wikipedia
Interaction
• Help
• About Wikipedia
• Community portal
• Recent changes
• Contact Wikipedia
Toolbox
• What links here
• Related changes
• Upload file
• Special pages
• Permanent link
• Cite this page
Print/export
• Create a book
• Download as PDF
• Printable version
Languages
• العربية
• বাংলা
• Беларуская
• Беларуская (тарашкевіца)
• Български
• Català
• Česky
• Dansk
• Deutsch
• Eesti
• Español
• Esperanto
• فارسی
• Français
• Galego
• 한국어
• Hrvatski
• Ilokano
• Bahasa Indonesia
• Interlingua
• Italiano
• עברית
• Lietuvių
• Magyar
• മലയാളം
• Nederlands
• 日本語
• Norsk (bokmål)
• Norsk (nynorsk)
• Polski
• Português
• Română
• Русский
• Simple English
• Slovenčina
• Српски / Srpski
• Suomi
• Svenska
• Türkçe
• Українська
• 中文
• This page was last modified on 2 April 2011 at 20:57.
• Text is available under the Creative Commons Attribution-ShareAlike License;
additional terms may apply. See Terms of Use for details.
Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit
organization.
• Contact us
• Privacy policy
• About Wikipedia
• Disclaimers
•
MINIX file system
From Wikipedia, the free encyclopedia
Jump to: navigation, search
MINIX file system
Developer Open Source Community
Full name MINIX file system version 3
Introduced 1987 (MINIX 1.0)
Partition identifier 0x81 (MBR)
Features
last metadata change, last file
Dates recorded
change, last file access
Date resolution 1s
File system
POSIX
permissions
Transparent
No
compression
Transparent No (provided at the block
encryption device level)
Supported operating
MINIX 3 and Linux
systems
The MINIX file system is the native file system of the MINIX operating system.
Contents
[hide]
• 1 History
• 2 Design and implementation
• 3 References
• 4 See also
• 5 External links
[edit] History
MINIX was written from scratch by Andrew S. Tanenbaum in the 1980s, as a Unix-like
operating system whose source code could be used freely in education. The MINIX file system
was designed for use with MINIX; it copies the basic structure of the Unix File System but
avoids any complex features in the interest of keeping the source code clean, clear and simple, to
meet the overall goal of MINIX to be a useful teaching aid.[1] When Linus Torvalds first started
writing his Linux operating system kernel (1991), he was working on a machine running MINIX,
so the initial releases based a lot of functionality on Minix subsystems.[2] Until the April 1992
introduction of the Extended file system, Linux used the MINIX file system.[3] The format is still
used by some Linux distributions for bootable disks and other situations where a simple and
compact file system is needed.[citation needed]
[edit] Design and implementation
A MINIX file system has six components:[1]
• The Boot Block which is always stored in the first block. It contains the boot loader that
loads and runs an operating system at system startup.
• The second block is the Superblock which stores data about the file system, that allows
the operating system to locate and understand other file system structures. For example,
the number of inodes and zones, the size of the two bitmaps and the starting block of the
data area.
• The inode bitmap is a simple map of the inodes that tracks which ones are in use and
which ones are free by representing them as either a one (in use) or a zero (free).
• The zone bitmap works in the same way as the inode bitmap, except it tracks the zones
• The inodes area. Each file or directory is represented as an inode, which records metadata
including type (file, directory, block, char, pipe), ids for user and group, three timestamps
that record the date and time of last access, last modification and last status change. An
inode also contains a list of addresses that point to the zones in the data area where the
file or directory data is actually stored.
• The data area is the largest component of the file system, using the majority of the
space. It is where the actual file and directory data are stored.
[edit] References
1. ^ a b Tanenbaum, Andrew S; Albert S. Woodhull (14 January 2006). Operating Systems:
Design and Implementation (3rd ed.). Prentice Hall. ISBN 0131429388.
http://www.pearsonhighered.com/educator/academic/product/0,,0131429388,00%2Ben-
USS_01DBC.html.
2. ^ Torvalds, Linus; Diamond, David (2001). Just For Fun. Texere. ISBN 1-58799-080-6.
3. ^ Card, Rémy; Ts'o, Theodore; & Tweedie, Stephen (1994). "Design and Implementation
of the Second Extended Filesystem". Proceedings of the First Dutch International
Symposium on Linux. http://e2fsprogs.sourceforge.net/ext2intro.html. Retrieved 2007-03-
23.
[edit] See also
• List of file systems
• MINIX 3
[edit] External links
• File, file system, and memory size limits in Minix
• Minix Fileystem Tool
[hide]v · d · eFile system
AFS · OpenAFS • AFP • DFS • GPFS • Google File System • Lustre • NCP • NFS •
NAS
POHMELFS • Hadoop • HAMMER • SMB (CIFS) • More...
Bottom of Form
Navigation
• Main page
• Contents
• Featured content
• Current events
• Random article
• Donate to Wikipedia
Interaction
• Help
• About Wikipedia
• Community portal
• Recent changes
• Contact Wikipedia
Toolbox
• What links here
• Related changes
• Upload file
• Special pages
• Permanent link
• Cite this page
Print/export
• Create a book
• Download as PDF
• Printable version
Languages
• Dansk
• Deutsch
• Español
• Français
• Polski
• Русский
• This page was last modified on 18 January 2011 at 06:18.
• Text is available under the Creative Commons Attribution-ShareAlike License;
additional terms may apply. See Terms of Use for details.
Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit
organization.
• Contact us
• Privacy policy
• About Wikipedia
• Disclaimers