Після більш ніж року розробки опубліковано реліз DragonFlyBSD 6.0, операційної системи з гібридним ядром, створеної в 2003 році з метою альтернативного розвитку гілки FreeBSD 4.x. З особливостей DragonFly BSD можна виділити розподілену версійну файлову систему HAMMER, підтримку завантаження «віртуальних» ядер системи як процесів користувача, можливість кешування даних і мета-даних ФС на SSD-накопичувачах, що враховують контекст варіантні символічні посилання, можливість заморожування процесів зі збереженням їх стану на диск, гібридне ядро, що використовує легковагові потоки (LWKT).
Основні покращення, додані в DragonFlyBSD 6.0:
- Модернізовано систему кешування у віртуальній файловій системі (vfs_cache). Зміна дозволила підвищити надійність та збільшити продуктивність файлових систем. Покращено кешування повних шляхів за допомогою дзвінка cache_fullpath().
- Значно покращено утиліту dsynth, призначену для локального складання та супроводу бінарних репозиторіїв DPort. У новій версії з'явилася можливість явної вказівки ports-mgmt/pkg для збирання пакетів, додано підтримку алгоритму ZSTD, у команді 'prepare-system' забезпечено видалення застарілих пакетів, додано можливість використання ccache при збиранні.
- Продовжено роботу над файловою системою HAMMER2, яка примітна такими функціями, як окреме монтування снапшотів, доступні на запис снапшоти, квоти на рівні директорій, інкрементальне дзеркалювання, підтримка різних алгоритмів стиснення даних, multi-master дзеркалювання з розподілом даних на декілька х. У новому випуску додана початкова підтримка мультирозділів (multi-volume), що дозволяє об'єднати в один розділ кілька локальних дисків (режим multi-master поки не підтримується). Реалізовано можливість збільшення розміру розділу (додано команду hammer2 growfs). Усунуті серйозні проблеми з дедуплікацією.
- Значно підвищено продуктивність файлової системи tmpfs. Додана утиліта mounttmpfs для спрощення розміщення /tmp та /var/run у tmpfs.
- Додано реалізацію файлової системи Ext2, в якій відсутній код під ліцензією GPL.
- Внесено значні зміни до системи віртуальної пам'яті, у тому числі видалено підтримку MAP_VPAGETABLE mmap(), необхідну для роботи vkernell (віртуальні ядра, що запускаються як процес користувача). У наступному випуску планується повернути vkernel, переробивши на базі HVM.
- Перероблено реалізацію дзвінків callout*().
- Поліпшено підтримку фреймбуфера EFI.
- У драйвер sysmouse додано підтримку evdev.
- Додані виклики clock_nanosleep, fexecve, getaddrinfo та timeout. Реалізовано підтримку fcntl(F_GETPATH) та прапорів IP_SENDSRCADDR і SO_PASSCRED.
- У ядро додано підсистему kmalloc_obj, що дозволяє знизити фрагментацію пам'яті.
- З FreeBSD перенесено підтримку драйвера amdsmn для підсистеми SMN (System Management Network) процесорів AMD.
- У devd забезпечено автоматичне розпізнавання бездротових адаптерів і створення мережних інтерфейсів wlanX.
- Тип sysclock_t переведений з 32-на 64-бітове значення.
- Оптимізовано ланцюжок запуску системних викликів.
- Оптимізовано роботу в умовах нестачі пам'яті.
- Значно перероблено механізм ізольованих оточень Jail. Проведено реструктуризацію sysctl-параметрів jail.*.
- Додана підтримка Ethernet-контролерів Intel I219 та розширена підтримка чіпів Realtek. До драйвера bnx додано підтримку чіпів Broadcom NetXtreme 57764, 57767 і 57787.
- У мережевий стек додано підтримку сімейства адрес AF_ARP, що представляє ARP-адреси.
- Компоненти інтерфейсу DRM (Direct Rendering Manager) синхронізовані із ядром Linux 4.10.17. Оновлено драйвер drm/i915 для GPU Intel.
- Пропускна здатність послідовного порту, що виставляється за умовчанням, підвищена з 9600 до 115200 бод.
- В утиліту ifconfig додано опцію «-f» та можливість фільтрації виведення по групі інтерфейсів.
- З FreeBSD синхронізовані реалізації утиліт shutdown, reboot, printf, test, sh, efivar, uefisign.
- З NetBSD перенесені ігри ching, gomoku, monop та cgram.
- До складу включені утиліти efidp та efibootmgr.
- Розширено можливості бібліотеки pthreads, додано підтримку pthread_getname_np().
- З FreeBSD перенесено бібліотеку libstdbuf.
- У libutil додано підтримку sockaddr_snprintf(), перенесену з NetBSD.
- У паролях, які задаються в інсталяторі, дозволено використання спецсимволів.
- До базового складу включено пакет zstd (версія 1.4.8).
- Оновлено версії сторонніх компонентів, у тому числі dhcpcd 9.4.0, grep 3.4, less 551, libressl 3.2.5, openssh 8.3p1, tcsh 6.22.02, wpa_supplicant 2.9. За промовчанням використовується компілятор gcc-8.
Джерело: opennet.ru