MINIX

Software Screenshot:
MINIX
Software Details:
Version: 3.3.0 / 3.4.0 RC6 updated
Upload Date: 19 Jun 17
Developer: MINIX Team
Distribution Type: Freeware
Downloads: 374

Rating: 3.3/5 (Total Votes: 3)

MINIX is an open source, independent and freely distributed UNIX-like computer operating system based on a microkernel architecture. It is a small OS that has been designed from the ground up to be used as an educational tool targeted at low-power laptops and embedded systems.

The OS is distributed as a dual-arch ISO image

The MINIX operating system is distributed as a dual-arch ISO image, which has been archived with the bz2 compression method and engineered to run on computers that support both 32-bit (x86) and 64-bit (x86_64) instruction set architectures. While the bz2 archive has approximately 120MB in size, the ISO image weighs in about 400MB.

The old-school boot menu features four different options

Please note that the ISO image must be written to a CD disc or a USB thumb drive of 512MB or higher capacity in order to boot it from the BIOS of a PC. It will prompt users with a boot menu that features four different options, the ability to start the live system with or without AHCI support, the ability to drop to a shell prompt, and the ability to edit the menu options.

It runs in live mode and can be installed on a local drive

While the system will run smoothly from the bootable medium and many of its pre-installed commands will work properly, you will have to install it on a local drive in order to take full advantage of its functionality, including the graphical desktop environment. By default, you will be dropped to a shell prompt where you must login with the “root” username. Type “setup” (without quotes) to start the installation script.

It is not a Linux or BSD operating system

All things considered, MINIX should not be confused with Linux or BSD. It’s still in heavy development and is nowhere near as mature as the aforementioned UNIX-like operating systems. It is not designed for end-users, as a day-to-day operating system!

What is new in this release:

  • The system is based on a tiny (12,700 lines of code) microkernel
  • The microkernel handles interrupts and message passing and is the only code running in kernel mode.
  • The rest of the operating system runs as a collection of isolated, protected, user-mode processes
  • Each device driver is a separate user-mode process isolated by the MMU hardware
  • If a driver crashes, the system automatically restarts it, with running applications not even noticing
  • This means that MINIX 3.3.0 is self-healing
  • Userland is largely compatible with NetBSD and runs thousands of NetBSD packages
  • By combining an innovative self-healing research OS with NetBSD userland, we got the best of both worlds
  • Both the clang/LLVM and gcc compilers are available, as well as perl, python, etc.
  • MINIX 3.3.0 is available for both the x86 and ARM Cortex A8 architectures, making it ideal for embedded systems
  • Tools for cross compiling MINIX 3 for the ARM on Linux are provided
  • Ports are available now for the BeagleBoard XM, BeagleBone white, and BeagleBone black
  • Extensive documentation is available in the MINIX 3 wiki
  • The code has been improved over MINIX 3.2.1 in hundreds of ways, leading to a cleaner and more reliable system

What is new in version 3.3.0:

  • The system is based on a tiny (12,700 lines of code) microkernel
  • The microkernel handles interrupts and message passing and is the only code running in kernel mode.
  • The rest of the operating system runs as a collection of isolated, protected, user-mode processes
  • Each device driver is a separate user-mode process isolated by the MMU hardware
  • If a driver crashes, the system automatically restarts it, with running applications not even noticing
  • This means that MINIX 3.3.0 is self-healing
  • Userland is largely compatible with NetBSD and runs thousands of NetBSD packages
  • By combining an innovative self-healing research OS with NetBSD userland, we got the best of both worlds
  • Both the clang/LLVM and gcc compilers are available, as well as perl, python, etc.
  • MINIX 3.3.0 is available for both the x86 and ARM Cortex A8 architectures, making it ideal for embedded systems
  • Tools for cross compiling MINIX 3 for the ARM on Linux are provided
  • Ports are available now for the BeagleBoard XM, BeagleBone white, and BeagleBone black
  • Extensive documentation is available in the MINIX 3 wiki
  • The code has been improved over MINIX 3.2.1 in hundreds of ways, leading to a cleaner and more reliable system

What is new in version 3.2.1:

  • Development:
  • Support for dynamically linked executables, also build shared versions of base system libraries
  • http://wiki.minix3.org/en/UsersGuide/UsingSharedLibraries.
  • Remove the use of Intel segments altogether, giving a performance boost while context switching. Rely exclusively on page tables. (more info)
  • Added support for SYSENTER/SYSCALL based system kernel calls, a significant performance improvement. (more info)
  • Full new clean updated NetBSD build system import. build.sh is supported, allowing crossbuilding MINIX 3.
  • http://wiki.minix3.org/en/DevelopersGuide/Crosscompiling
  • Imported or upgraded many userland utilities and libraries from NetBSD: libc, lorder, join, mtree, tsort, cksum, kill, xinstall, du, libutil, tic, postinstall, flex, zlib, bsdtar, ls, sort, cat, echo, pax, file, mktemp, libc,csu, curses, byacc, tput, test, ln, nvi,ctags, infocomp, nbperf, make, m4, bzip2, libcrypt, printf, passwd, make, ed, nawk, expr, pwd.
  • DDEKIT support (support for USB keyboards, mice and mass storage).
  • http://wiki.minix3.org/en/DdeKitUsb
  • Generalization of the TTY driver.
  • Small and large cleanup represented by retiring MINIXisms such as nonsymbolic rootdev, dev2name, checkhier, badblocks, readall, BIOS_SEG and umap_bios, bios_wini, C macros as _ANSI, _CONST, _VOLATILE, _SIZET, _ARGS, _VOID, PUBLIC, PRIVATE and FORWARD, _PROTOTYPE.
  • VM: Generalized munmap (boot time ramdisk is now freed, saving memory).
  • VFS interaction with drivers is fully asynchronous, making VFS immune to uncooperative drivers. (more info)
  • http://en.wikipedia.org/wiki/Kernel_Normal_Form
  • Exec performance improvement and generalization. Reduce copying, and kernel, RS, VFS and VM all use the same executable parsing code.
  • Some more abstraction in VM to support future improvements.
  • Implemented dynamic mtab support and the mount -a command
  • Generalized the file system cache. (more info)
  • Changes:
  • Make world was replaced with make build
  • Dropped support for a.out binaries
  • Drivers, FS:
  • E1000 add support for 82545EM
  • EXT2 support improvements. (more info)
  • Virtio: virtio-blk, virtio-net drivers
  • How to use: http://wiki.minix3.org/en/UsersGuide/RunningOnQemu
  • Support for AHCI
  • Add VBFS: VirtualBox Shared Folder File System
  • rtl8169: add support for RTL8101E family
  • Keymaps:
  • Portuguese keymap
  • Brazilian keymap
  • Userland:
  • Rewritten sprofalyze in C for better performance.

What is new in version 3.2.0:

  • Major Features:
  • Clang is the default compiler (GCC is also supported)
  • NetBSD C library
  • ELF is the default executable format
  • Asynchronous, multithreaded virtual filesystem (VFS) server
  • Experimental SMP support
  • FUSE support (GSOC project by Evgeniy Ivanov)
  • NetBSD password file format (part of GSOC project by Vivek Prakash)
  • FS types infrastructure:
  • Use a proper /etc/fstab file
  • Clean/unclean FS flag in MFS
  • Full base system ext2 integration: newfs, fsck, can install on ext2
  • Do proper `fsck -p` on each boot for all fstab-listed filesystems
  • NetBSD bootloader
  • Smaller boot images (using gzip)
  • ProcFS: /proc file system
  • Multithreading and NCQ support in the AHCI driver
  • Debugging Improvements
  • GDB and core dump support (GSOC project by Adriana Szekeres)
  • Block device tracing
  • New NetBSD userland utilities (part of them as a GSOC project by Vivek Prakash)
  • ext2 fsck&mkfs, gzip, m4, man&tools, mkdep, mkdir, mkfifo, mktemp, rm, rmdir, tic, uniq
  • libcurses, libcrypt, libprop, libterminfo, libutil
  • bzip2, date, indent, mdocml (mandoc), sed, zoneinfo ports
  • Better reliability
  • Transparent recovery from block device driver crashes in file systems
  • Transparent retry upon failing block device I/O in file systems
  • New Faulty Block Device fault injection driver
  • Servers and drivers run as unprivileged users
  • Fix all (potential) bugs found by Clang's more elaborate warnings
  • Better virtualization support
  • Added libvassert, to enable easier support for VMWare VAssert
  • New VirtualBox time sync driver
  • Other important differences:
  • The MINIX project now uses git as its version-control system
  • Known Issues:
  • VirtualBox: Minix cannot be installed w/o hardware acceleration support (VT-x, AMD-V)
  • Workaround: See UsersGuide/RunningMinixOnVirtualBox
  • Build warnings: Clang has much better diagnostics than ACK, so clang reports more warnings on the MINIX codebase. These warnings are being fixed over time.
  • Clang performance: On MINIX, clang builds more slowly than GCC. We are working on this. In the meantime, you have the option to build MINIX with GCC (CC=gcc).

What is new in version 3.1.7:

  • Userspace scheduling and a scheduling server
  • Proper support for multiple ethernet cards of the same type
  • Bugfixes (such as workaround to run on recent KVM)
  • Debug features ("verbose" boot monitor variable, access to debug registers DR0-DR7 in kernel)
  • Boot monitor allows loading images > 16 MB
  • Root partition size increased to 64MB (and setup script can now more or less safely deal with root partitions with non-default sizes)
  • Buildsystem support for building MINIX with GCC
  • Source tree reorganization/cleanup
  • New ports: Git, GCC updated to version 4.4.3
  • Secondary FS cache layer in VM that uses all available memory, reducing I/O wait time a lot

What is new in version 3.1.6:

  • Major Features:
  • New drivers: Atheros L2, Intel E1000, Realtek 8169, DEC Tulip
  • VirtualPC Network Support (DEC Tulip)
  • PipeFS - removed pipe handling from filesystem drivers
  • HGFS - support for mounting VMware shared folders as file system
  • FPU support
  • System Event Framework (SEF)
  • Experimental APIC support (disabled by default)
  • More ports: more recent QEMU, BSD utilities, Benchmarks
  • Known Issues:
  • VirtualBox 3.1 cannot boot Minix. Please use VirtualBox 3.0 for now.
  • Qemu/KVM 0.12 cannot boot Minix. Please use Qemu/KVM 0.11 for now.
  • VirtualBox: Minix 3.1.6 cannot be installed w/o hardware acceleration support (VT-x, AMD-V)

Similar Software

MccM MixTheme MT
MccM MixTheme MT

15 Apr 15

ktap
ktap

18 Feb 15

Comments to MINIX

Comments not found
Add Comment
Turn on images!