Представлен стабильный релиз операционной системы MINIX 3.2.0, разработку которой курирует известный учёный Эндрю Таненбаум при финансовой поддержке Европейского исследовательского совета. Новая версия отличается целым рядом значительных улучшений и изменений, позволяющих рассматривать MINIX не только как систему для экспериментов и образовательных нужд, но и как платформу для производителей встраиваемой техники, отличающуюся модульностью, высокой надёжностью и низким потреблением памяти.

ОС MINIX построена на базе микроядерной архитектуры: код, работающий на уровне ядра, составляет всего несколько тысяч строк, остальное работает на пользовательском уровне. Базовое программное окружение Minix вобрало в себя большое число стандартных для BSD-систем утилит и библиотек, портированных из NetBSD. Дополнительно в репозитории представлено около 650 пакетов с разнообразными приложениями.

Исходные тексты MINIX распространяются под BSD-подобной лицензией, что повышает привлекательность системы для компаний, которые считают неприемлемыми условия GPL. Для загрузки доступен готовый загрузочный iso-образ (366 Мб), который можно использовать в роли Live-окружения или запустить под управлением систем виртуализации VMWare, QEMU или VirtualBox (поддерживается только работа с задействованием механизмов аппаратной виртуализации VT-x или AMD-V). С января началась разработка порта MINIX для архитектуры ARM.

Ключевые новшества MINIX 3.2.0:

  • Использование Clang в качестве компилятора по умолчанию (GCC доступен в виде опции);
  • Интеграция новой стандартной библиотеки Си (libc), портированной из NetBSD. Новая библиотека позволила существенно упростить портирование приложений из NetBSD;
  • Задействование по умолчанию формата исполняемых файлов ELF;
  • Реализован работающий в асинхронном режиме многопоточный модуль с реализацией абстрактной виртуальной файловой системы (VFS), позволяющей унифицировать процесс интеграции поддержки различных ФС;
  • Экспериментальная поддержка SMP-режима, дающая возможность задействовать все ресурсы многоядерных CPU;
  • Поддержка механизма FUSE, позволяющих обеспечить работу с реализациями файловых систем, работающих в режиме пользователя;
  • Переход на использование формата файла с паролями от системы NetBSD;
  • Включение в базовую систему новых пользовательских утилит и библиотек, портированных из NetBSD: ext2 fsck и mkfs, gzip, m4, man, mkdep, mkdir, mkfifo, mktemp, rm, rmdir, tic, uniq, libcurses, libcrypt, libprop, libterminfo, libutil, bzip2, date, indent, mdocml (mandoc), sed, zoneinfo;
  • Изменения в инфраструктуре файловых систем:
    • Задействован файл /etc/fstab;
    • Для ФС MFS реализована поддержка флага "грязного" размонтирования, позволяющего выявить когда файловая система была размонтирована корректно, а когда нет;
    • Полная интеграция в базовую систему ФС ext2 и утилит newfs и fsck. Поддержка установки MINIX на раздел ext2;
    • Реализация корректного запуска "fsck -p" в процессе загрузки для всех ФC, отражённых в fstab;
  • Интеграция загрузчика из проекта NetBSD;
  • Поддержка ProcFS (псевдо-fs /proc);
  • В драйвер AHCI добавлена поддержка многопоточности и NCQ;
  • Улучшение возможностей по отладке: поддержка GDB и core dump, возможность трассировки работы блочных устройств;
  • Увеличение надёжности:
    • Поддержка прозрачного для файловых систем восстановления в случае краха драйвера блочного устройства.
    • Реализация прозрачного для ФС повтора выполнения драйвером блочных устройств сбойных операций ввода/вывода;
    • Новый драйвер Faulty Block Device для симулирования дисковых сбоев в целях тестирования и отладки;
    • Серверные модули и драйверы запускаются под непривилегированным пользователем;
    • Исправлены все ошибки, выявленные в процессе внедрения Clang;
  • Улучшение поддержки виртуализации: добавлена библиотека libvassert для поддержки VMWare VAssert, реализован новый драйвер для синхронизации времени в VirtualBox;
  • В процессе разработки представленной версии был осуществлён переход на систему управления исходными текстами Git.


Источник: http://www.opennet.ru/opennews/art.shtml?num=33226