Dear all,

The MINIX team is proud to announce the latest MINIX release, named 3.2.1, a year after the previous release, 3.2.0. 3.2.1 boasts significantly more polish again in terms of base-system expansion and cleanup, in areas such as userland utilities, libraries, the build system, but also drivers and kernel improvements, various performance improvements, and more. A detailed list follows:

  • Development

    • Support for dynamically linked executables, also build shared versions of base system libraries

    • 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.

    • 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).

    • 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)

  • 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

  • Keymaps

    • Portuguese keymap

    • Brazilian keymap

  • Userland

    • Rewritten sprofalyze in C for better performance.

  • There are exciting new developments coming in the near future that aren’t part of this release. For example, the MINIX team has been working hard on MINIX/ARM support, of which significant parts have made it to mainline, yet official ARM support is slated for the near future and is not officially part of this release. Also a fully dynamic linked userland (packages and base system), updated packages, and more, is coming soon. Keep an eye on our discussion group at https://groups.google.com/forum/#!forum/minix3 for more info.

    You are invited to try our release 3.2.1 and become part of our contributing community! See http://www.minix3.org/ and http://wiki.minix3.org/ for more info.

    Our IRC channel is #minix on freenode.

    To download 3.2.1, visit http://www.minix3.org/download/

    Regards,

    The MINIX team