Safekipedia

DragonFly BSD

Adapted from Wikipedia · Adventurer experience

Screenshot of DragonFly BSD 6.2.1 UEFI boot loader

DragonFly BSD is a free and open-source Unix-like operating system. It started in June 2003. It was created by Matthew Dillon. Matthew was an Amiga developer in the late 1980s and early 1990s. Later, he worked on FreeBSD from 1994 to 2003.

Matthew started DragonFly BSD because he thought some new ways in FreeBSD 5 might cause problems. He could not change FreeBSD directly, so he began this new project.

DragonFly BSD was meant to continue the ideas of the FreeBSD 4.x series. But it has become very different. It uses special ways to handle tasks and pass messages inside the computer. It also has a special way to organize files called HAMMER. Many of its ideas come from AmigaOS, the operating system Matthew worked with on the Amiga computer. Even though DragonFly BSD and FreeBSD are separate projects, they still share helpful updates and fixes.

System design

Kernel

DragonFly BSD has a special messaging system in its kernel, like some advanced computers. This helps things run smoothly.

The creator, Matthew Dillon, is improving how the computer handles devices and file systems. This makes it easier to fix problems because parts of the kernel can be tested separately without stopping the whole system. If a part crashes, the rest can still keep working.

System calls, how programs talk to the kernel, are split into two parts. This makes the kernel smaller and simpler and helps different versions of DragonFly work together.

Threading

DragonFly BSD works best on modern 64-bit processors. It can handle many tasks at once. Each processor has its own scheduler to manage these tasks, helping the system run better.

Shared resources protection

On computers with multiple processors, DragonFly uses special methods to make sure tasks don’t try to change the same thing at the same time. It uses simple methods to avoid problems and make the system easier to manage.

Virtual kernel

Since version 1.8, DragonFly BSD can run a special version of itself inside the main system. This helps test new features safely without affecting the real system.

Package management

DragonFly BSD offers software through binary packages or a special collection called DPorts.

CARP support

DragonFly BSD supports CARP, a way for multiple computers to share the same network address. This was added in 2011.

HAMMER file systems

DragonFly BSD supports special file systems called HAMMER and HAMMER2. HAMMER2 became the default file system in version 5.2.0. These file systems can keep past versions of files and check for errors.

devfs

In 2007, DragonFly BSD added a new way to handle device files. This changes based on which devices are connected, making it easier to manage devices.

Application snapshots

DragonFly BSD can take snapshots of programs when they start. This helps them load faster later. This is useful for large programs with many shared parts.

Development and distribution

DragonFly BSD, like FreeBSD and OpenBSD, is updated by its developers to use newer programming standards. It includes special safety features to protect against certain types of attacks. DragonFly has a system that helps developers find and fix problems in the main part of the operating system.

The operating system can be used right away from a CD or USB drive. This lets users try it out or fix problems on their computers without installing it permanently. It is shared freely under open terms, allowing anyone to use, change, or share it.

VersionDateChanges
6.4.29 May 2025
Bug fixes
6.4.130 April 2025
Bug fixes
6.430 December 2022
6.2.19 January 2022
NVMM ported to DragonFly
Added support for growfs to changing the size of an existing HAMMER2 volume.
Added xdisk. Remote HAMMER2 disks can be mounted (experimental feature)
Imported amdgpu driver, matches Linux 4.19 support.
Updated DRM
6.010 May 2021
Improved work of 'dsynth' - tool that allow to maintain local DPort repository
Removed support of MAP_VPAGETABLE mmap(), as result no 'vkernel' in this release able to work
5.83 March 2020
5.617 June 2019
Improved virtual memory system
Updates to radeon and ttm
Performance improvements for HAMMER2
5.43 December 2018
Updated drivers for network, virtual machines & display
GCC 8.0 with the previous GCC releases
Hammer with more issue fixes
5.210 April 2018
HAMMER2 filesystem is now considered stable
Meltdown and Spectre mitigation support
ipfw Updates
Improved graphics support
5.016 October 2017
New HAMMER2 filesystem
Can now support over 900,000 processes on a single machine
Improved i915 support
IPFW better performance
4.827 March 2017
Initial AMD Ryzen support
Improved i915 support
Improved kernel performance
eMMC boot support
LibreSSL replaced OpenSSL in base
GCC 5.4.1
LTO support
Initial Clang framework
UEFI install support
4.62 August 2016
Improved i915 and Radeon support
NVM Express support
Improved SMP performance
Improved network performance
Preliminary support for UEFI booting
autofs imported from FreeBSD, amd removed
4.47 December 2015
GCC 5.2
gold now the default linker
Improved i915 and Radeon support
Complete overhaul of the locale system
Collation support for named locales
Regex library replaced with TRE
Symbol versioning support in libc
Numerous HAMMER cleanups and fixes
4.229 June 2015
GCC 5.1.1
Improved i915 and Radeon support
Improved sound support
Improved support for memory controller and temperature sensors
Path MTU Discovery enabled by default
SCTP support removed
Sendmail replaced by DMA
GNU Info pages removed
4.025 November 2014
Non-locking, multi-threading PF
Related networking better-threaded for improved throughput
Procctl security feature in kernel
Support for up to 256 CPUs
Improved wireless networking support
Rust and Free Pascal now supported
i915 support greatly improved
GCC 4.7.4
3.84 June 2014
Dynamic root and PAM support
USB4BSD now default
Native C-State support for Intel CPUs
TCP port token split for better TCP connect(2) performance
GCC 4.7.3
HAMMER2 in system ( not ready for production use )
Final 32-bit release
3.625 November 2013
SMP contention reduction
Kernel modesetting for Intel and AMD GPUs
Hardware acceleration for Intel GPUs up to Ivy Bridge
3.429 April 2013
New package manager, DPorts, introduced
GCC 4.7
Improved CPU usage and tmpfs performance under extreme load
3.22 November 2012
Multiprocessor-capable kernel became mandatory.
Performance improvements in the scheduler.
USB4BSD imported from FreeBSD.
PUFFS imported from NetBSD.
3.022 February 2012
Multiprocessor-capable kernel became the default
HAMMER performance improvements
TrueCrypt-compatible encryption support
dm-crypt replaced with a compatible BSD-licensed library
Enhanced POSIX compatibility
Device driver for ECC memory
Major network protocol stack and SMP improvements
ACPI-related improvements
2.1026 April 2011
Giant lock removed from every area except the virtual memory subsystem
HAMMER deduplication
GCC 4.4
Bridging system rewritten
Major performance improvements
2.830 October 2010
Wi-Fi stack imported from FreeBSD
New disk scheduler
Reduced giant lock usage
2.66 April 2010
Swapcache
tmpfs imported from NetBSD
HAMMER and general I/O improvements
2.416 September 2009
New AHCI driver, including full NCQ support
NFS improvements
Full x86-64 support
2.217 February 2009
HAMMER officially production-ready
Major stability improvements
New release media: LiveCD and LiveUSB
2.020 July 2008
Major HAMMER improvements
1.1226 February 2008
Bluetooth stack
GCC 4.1
DragonFly Mail Agent (DMA), a stub MTA
Support for the 386 CPU dropped
Preliminary x86-64 support (not functional)
Experimental HAMMER support
1.106 August 2007
Userland threading system
1.830 January 2007
Virtual kernel implementation
1.624 July 2006
New random number generator
IEEE 802.11 framework refactored
Major giant lock, clustering, and userland VFS improvements
Major stability improvements
1.47 January 2006
GCC 3.4
pkgsrc used by default
Citrus imported from NetBSD
1.28 April 2005
TCP SACK
TCP Performance tuning
ALTQ and PF
Console over IEEE 1394
Namecache infrastructure rewritten
X11 support
pkgsrc support
1.012 July 2004
Technology showcase
New BSD Installer
LWKT subsystem and lightweight ports/messaging system
Mostly MP-safe networking stack
Lockless memory allocator

Related articles

This article is a child-friendly adaptation of the Wikipedia article on DragonFly BSD, available under CC BY-SA 4.0.

Images from Wikimedia Commons. Tap any image to view credits and license.