DragonFlyBSD
Материал из Bryansk Linux Users Group.
Старт
16 июля 2003 года один из разработчиков ОС FreeBSD Мэтью Диллон (Matthew Dillon) в почтовых рассылках проекта объявил о старте "нового ответвления" в развитии этой операционной системы. До этого он прошел серьезную школу одной из лучших пользовательских платформ прошлого - Amiga (для которой создал, в частности, известный C-компилятор DICE), он является автором обновленных систем управления виртуальной памятью и свопингом ОС FreeBSD, а также до сих пор использующегося в различных Unix-совместимых системах планировщика задач Dcron.
Эволюция в "Стрекозу"
Система DragonflyBSD началась как ветвь FreeBSD 4.x, но архитектура системы претерпела серьёзные изменения. Прежде всего, в отличие от Linux и FreeBSD, используются не "тяжёлые" процессы, а легковесные потоки (нити) ядра, LWKT (потоки выполнения, не имеющие собственного контекста "тяжелого" процесса). Планировщиков задач (sheduler) - по числу процессоров, каждый отвечает за выполнение потоков на своём процессоре. В отличие от FreeBSD драйвера вынесены в пользовательский режим, что даёт реальную возможность унифицировать их программные интерфейсы (что означает отсутствие необходимости модификаций кода ядра ОС при добавлении драйверов), а также применить принцип виртуализации физических устройств. Фундаментальным изменением является отказ от традиционных вызовов подпрограмм в пользу асинхронного механизма передачи сообщений, что сближает DragonflyBSD с микроядерными системами. Целостность концепции DragonflyBSD обеспечивается и радикальным изменением одного из самых сложных и важных механизмов ядра любой Unix совместимой ОС - виртуальной файловой системы (VFS). Здесь в "стрекозе" изменяется практически все, что можно изменить - VFS вместо сложнейшей реентерабельной (повторно входимой) программы превращается в сервер сообщений, полностью перестраиваются политики кэширования, значительная часть кода переводится в пользовательский режим.
Не обошлось в DragonflyBSD и без модификации подсистемы выделения памяти ядра - в ней использован slab allocator, реализация которого, в силу архитектурной специфики, в три раза компактнее аналога, например применяемого во FreeBSD 5.x. Кроме этого, по аналогии с AmigaOS "стрекоза" обладает возможностью сокращения времени запуска больших программ, задействующих множество динамических библиотек (что достигается созданием "снимка" на диске задействованной виртуальной памяти программы и повторным его использованием при новых запусках).
С момента "отпочкования" разработчики заимствовали идеи и наработки из NetBSD, OpenBSD, Solaris. Например, система управления пакетами pkgsrc - из NetBSD (с версии 1.4.x. DragonFly больше не поддерживает порты FreeBSD).
Ссылки
DragonflyBSD - "стрекоза с рожками"
Алексей Федорчук. DragonFlyBSD: Установка и первичная настройка


