User Tools

Site Tools


www:documentation:features

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

www:documentation:features [2014/11/19 17:08]
lionelsambuc created
www:documentation:features [2015/07/19 14:17] (current)
dcvmoole [General Characteristics] clarify footprint
Line 1: Line 1:
 +Here are some of the more interesting features of MINIX 3.
  
 +===== General Characteristics =====
 +
 +  * POSIX-compliant operating system with a NetBSD userland
 +  * Open source, with a BSD license
 +  * Runs on x86 PCs and well as x86 virtual machines (VMware, etc.)
 +  * Runs on ARM Cortex A8 (e.g., BeagleBoard XM, Beaglebones)
 +  * Networking with TCP/IP
 +  * Virtual memory
 +  * Virtual file system
 +  * Unified block cache shared by virtual memory and file systems
 +  * Dynamic linking
 +  * Small memory footprint (kernel is 600 kB; full OS is 25 MB)
 +
 +===== MINIX-specific Features =====
 +
 +  * Tiny microkernel that runs in kernel mode
 +  * Most of the operating system runs in user-mode protected processes
 +  * Each device driver is a separate user-mode process
 +  * Reincarnation server can reload failed drivers
 +
 +===== Reliability Features =====
 +
 +  * Reduced kernel size
 +  * Bugs are caged
 +  * Drivers'​ memory access is limited
 +  * Bad pointer references are not always fatal
 +  * Infinite loops are not always fatal
 +  * Buffer overruns are not always fatal
 +  * Access to kernel function calls is restricted
 +  * Access to I/O ports is restricted
 +  * Communication with OS components is restricted
 +  * Dead or sick drivers can be reincarnated
 +  * Interrupts and messages are integrated
 +  * [[.:​reliability|Click here]] for more details
 +
 +===== Languages and Compilers =====
 +
 +  * Languages: C, C++, clisp, mawk, Perl, Python, tcl, etc.
 +  * Compilers: gcc and clang/LLVM
 +  * Native compilation (self hosting) on x86
 +  * Cross compilation for x86 and ARM
 +
 +===== Packages =====
 +
 +  * Shells (e.g., bash, mksh, mudsh, pdksh, zsh)
 +  * Editors (e.g., elvis, joe, jove, pico, uemacs, vim)
 +  * Games (e.g., crafty, exchess, ioquake)
 +  * Mail (e.g., fetchmail, getmail, mutt, thunderbird)
 +  * Over 4000 other NetBSD packages
www/documentation/features.txt · Last modified: 2015/07/19 14:17 by dcvmoole