A kernel is a component of a computer operating system. It serves as an intermediary connecting software to hardware, enabling them to work together seamlessly. A comparison of system kernels can provide insight into the design and architectural choices made by the developers of particular operating systems.
Comparison criteria The following tables compare general and technical information for a number of widely used and currently available operating system kernels. Please see the individual products' articles for further information.
Even though there are a large number and variety of available Linux distributions, all of these kernels are grouped under a single entry in these tables, due to the differences among them being of the patch level. See comparison of Linux distributions for a detailed comparison. Linux distributions that have highly modified kernels—for example, real-time computing kernels—should be listed separately. There are also a wide variety of minor BSD operating systems, many of which can be found at comparison of BSD operating systems.
The tables specifically do not include subjective viewpoints on the merits of each kernel or operating system.
Feature overview The major contemporary general-purpose kernels are shown in comparison. Only an overview of the technical features is detailed.
+ Kernel name Used in Creator Executableformat(also seesectionbelow) Type Integrated firewall SMP support Multiple architecturesupport(also seesection below). Virtualization Security Profiling/Debugging Soft real-time support Hard real-time support Can keep RTC in UTIBM PC Real Time Clock should run in UT Amiga Exec AmigaOS Commodore International HUNK Exokernel (atypical)The Amiga hardware lacked support for memory protection, so the strong isolation goals of the microkernel design could not be achieved. Amiga Exec SG (2nd Generation) AmigaOS 4 Hyperion Entertainment ELF/HUNK Exokernel (atypical)The Amiga hardware lacked support for memory protection, so the strong isolation goals of the microkernel design could not be achieved. DragonFly BSD kernel C DragonFly BSD Matt Dillon ELF hybrid FreeBSD kernel C FreeBSD, Debian GNU/kFreeBSD, Gentoo/FreeBSD, Orbis OS The FreeBSD Project ELF, others – platform dependent monolithic GNU Hurd C GNU/Hurd (Arch Hurd, Debian GNU/Hurd) GNU Project/Free Software Foundation ELF GNU Mach C part of GNU Hurd, used in GNU/Hurd GNU Project/Free Software Foundation ELF microkernel Inferno kernel Inferno Bell Labs / Vita Nuova Holdings virtual machine L4 L4 Jochen Liedtke microkernel Linux kernel CLinux (kernel), Android, Ubuntu, CentOS, webOS, Fire OS, Firefox OS, ChromeOS, Syllable Server, Mastodon Linux, OpenBSD/Linux, Plan 9/Linux, Sailfish OS, Tizen, amongst others. Linus Torvalds ELF, others monolithic XDP (4.8 –) A full task-isolation mode for the kernel Compute Node Linux Compute Node Linux Cray Inc. Mach C NeXTSTEP and OPENSTEP for Mach, Tru64 UNIX and MkLinux Carnegie Mellon University Mach-O microkernel, hybrid kernel MINIX 3 kernel C MINIX 3 Andrew S. Tanenbaum ELF,Supports ELF since version 3.2.0 a.outa.out will be phased out in coming releases. Commit to remove a.out utils from minix; only supports running a.out now. microkernel NetBSD kernel C NetBSD, GNU/kNetBSD (Debian GNU/NetBSD), The NetBSD Project ELF, others – platform dependent monolithic, anykernel using rump kernel architecture NetWare kernel NetWare Novell NLM hybrid OpenBSD kernel C OpenBSD OpenBSD developers ELF, others – platform dependent monolithic OS/2 kernel OS/2 version 2 and above IBM LX hybrid PowerPC version developed but never officially released. Plan 9 kernel C Plan 9 from Bell Labs Bell Labs monolithic ReactOS kernel C ReactOS ReactOS Foundation PE hybrid Rockbox kernel Rockbox The Rockbox Project SunOS kernel C SunOS Sun Microsystems a.out monolithic Solaris kernel C Solaris, OpenSolaris, GNU/kOpenSolaris (Nexenta OS) Sun Microsystems ELF (32-bit only untilSolaris 7 in 1998) monolithic SVR5 kernel C UnixWare 7, OpenServer 6 Santa Cruz Operation ELF monolithic Trix kernel Trix Massachusetts Institute of Technology a.out monolithic VMkernel C VMware ESXi VMware ELF monolithic Windows NT kernel C All Windows NT family systems, 2000,XP, 2003, Vista, Windows 7, Windows 8, Windows Phone 8, Windows Phone 8.1, Windows 10, Windows 11, Windows Server Microsoft PE hybrid Windows 9x kernelC++ Windows 95, Windows 98, Windows Me MicrosoftPEmonolithic XNU (Darwin kernel) C, C++ macOS, iOS, iPadOS, tvOS, watchOS,OpenDarwin,PureDarwin,GNU/Darwin Apple Inc. Mach-O hybrid SPARTAN kernel C HelenOS Jakub Jermar ELF microkernel ZirconC++Fuchsia OSGoogleELFmicrokernel
Failure analysis and availability
Kernel Name Kernel Log Serious system error report Fatal system error report Kernel crash dump Kernel debugger Hardware error detection Software RAID Remote storage replication Kernel live patching Kernel live update DragonFly BSD kernel FreeBSD kernel Linux kernel Documentation for Kdump - The kexec-based Crash Dumping Solution. kernel.org. Using kgdb, kdb and the kernel debugger internals. kernel.org. DRBD: a distributed block device. LWN. April 22, 2009Distributed Replicated Block Device - DRBD. kernel.org. CPU hotplug in the Kernel. kernel.org. Memory Hot(Un)Plug. kernel.org. Livepatch. kernel.org. NetBSD kernel OpenBSD kernel crash(8) - OpenBSD manual pages Solaris kernel Core Dump Management on the Solaris OS. Oracle. June 2007 Windows NT kernel colspan=2 colspan=2 Introduction to Dynamic Hardware Partitioning. Microsoft Hotpatching on Windows. Microsoft. November 20, 2021 XNU Zircon
Scalability and clustering
Kernel Name Supported number of CPU cores NUMA support Computer cluster interconnect Application checkpointing/Process migration Single system image Clustered file system Remote direct memory access (RDMA) support InfiniBand support RDMA over Thunderbolt support PCI ExpressNon-Transparent Bridge (NTB) support CXL 3.1inter-host communication with support DragonFly BSD kernel 256DragonFly's Major Features List. DragonFly Project. DragonFly On-Line Manual Pages : sys_checkpoint(2) DragonFly BSD - history. DragonFly Project. FreeBSD kernel 1024FreeBSD 14.0-RELEASE Announcement. FreeBSD Project. RoCE as a performance accelerator. FreeBSD Project. 2018. ntb. FreeBSD Project. Linux kernel 8192Turbostat Utility Bumps 1024 CPU Core Limit To 8192 Cores After HPE Breaches It With 1152 Cores. Phoronix. April 7, 2025 What is NUMA?. kernel.org. NTB Drivers. kernel.org. Solaris kernel 512For sun4v platforms, as of Oracle Solaris b147 Windows NT kernel XNU TN3205: Low-latency communication with RDMA over Thunderbolt. Apple
Realtime support
Kernel Name Full kernel preemption Prevent priority inversion (Priority inheritance) Realtime Scheduling Realtime Priority Realtime I/O CPU Isolation Disable CPU's Interrupt request (IRQ) handling Disable CPU's timer ticks Prevent memory from being swapped out Cache coloring kernel threads interrupt handlers lock sections kernel space userland DragonFly BSD kernel FreeBSD kernel colspan=2 Chapter 8. SMPng Design Document. FreeBSD Project. , since FreeBSD 9.0 9.3-RELEASE - 7. Page Coloring. The FreeBSD Project Linux kernel The kernel's command-line parameters. kernel.org. A realtime preemption overview. LWN. August 10, 2005 Block io priorities. kernel.org. Luiz Giacomossi et al. Scheduling Analysis of UAV Flight Control Workloads on PREEMPT_RT Linux Using a Raspberry Pi 5. arxiv.org. 2026 NetBSD kernel Significant changes from NetBSD 1.5 to 1.6. NetBSD OpenBSD kernel Solaris kernel Chapter 2 Oracle Solaris Kernel and Device Tree. Oracle proc lwpsinfo_t Structure Oracle Solaris 10 Operating System - What’s New (Web Arhive) Sun Microsystems Windows NT kernel Always Preemptible and Always Interruptible. Microsoft Priority Inversion. Microsoft XNU Zircon
Transport protocol support
Kernel Name Internet layer (L3) Transport layer (L4) L4S Congestion controls IPv4 IPv6 IPSec TCP Multipath TCP UDP UDP-Lite SCTP DCCP QUIC Accurate ECN (AccECN) TCP Prague Dual-Queue Coupled Active Queue Management DragonFly BSD kernel FreeBSD kernel FreeBSD 4.0 Release Notes. FreeBSD Project. February 21, 2021 Linux kernel Cloudflare Talks Up Multi-Path TCP But Dings Linux's Less Than Ideal Support. Phoronix. January 3, 2025. Linux 7.1 To Retire UDP-Lite - Allows For Better Performance With Cleansed Code. Phoronix. March 16, 2026. The second half of the 6.16 merge window. LWN. June 9, 2025 More accurate congestion notification for TCP. LWN. February 18, 2026IP Sysctl. kernel.org. Dual-Queue Coupled Active Queue Management (AQM) for Low Latency, Low Loss, and Scalable Throughput (L4S) - Appendix A. Example DualQ Coupled PI2 Algorithm. IETF. January 2023The 6.17 kernel has been released. LWN.net. September 28, 2025 NetBSD kernel OpenBSD kernel Solaris kernel https://docs.oracle.com/cd/E37838_01/html/E60991/genql.html How to Create and Configure an IP Tunnel - Administering TCP/IP Networks, IPMP, and IP Tunnels in Oracle Solaris 11.4. Oracle Windows NT kernel IPsec Configuration. Microsoft XNU Zircon
Data link layer and Tunneling protocol support
Kernel Name Data link layer (L2) L2 over L2 L2 segmentation layer 2.5 (L2.5) L2 over L2.5 L2 over L3 L3 over L3 L2 over L4 PPP PPPoE MPLS L2TPv3 L2 GRE L3 GRE IP in IP (IPIP)RFC 2003 6in4 (SIT)RFC 1933, RFC 2893, and RFC 4213 PPTP L2TP DragonFly BSD kernel DragonFly On-Line Manual Pages : ppp(4). DragonFly Projects DragonFly On-Line Manual Pages : vlan(4). DragonFly Projects colspan=2 DragonFly On-Line Manual Pages : gre(4). DragonFly Projects colspan=2 DragonFly On-Line Manual Pages : gif(4). DragonFly Projects FreeBSD kernel FreeBSD Handbook Chapter 28 PPP and SLIP. The FreeBSD Project and netgraph-based kernel PPP FreeBSD Manual Pages - Kernel Interfaces Manual - VLAN(4) FreeBSD Manual Pages - Kernel Interfaces Manual - GRE(4). The FreeBSD Project colspan=2 FreeBSD Manual Pages - Kernel Interfaces Manual - GIF(4). The FreeBSD Project FreeBSD 10.2-RELEASE Release Notes. The FreeBSD Project Linux kernel PPP (point-to-point protocol) support. kernelconfig.io Ethernet (10 or 100Mbit). kernelconfig.io PPP over Ethernet. kernelconfig.io colspan=2 802.1Q/802.1ad VLAN Support. kernelconfig.io MultiProtocol Label Switching. kernelconfig.io L2TPv3 support. kernelconfig.io IP: GRE tunnels over IP. kernelconfig.io IP: tunneling. kernelconfig.io IPv6: IPv6-in-IPv4 tunnel (SIT driver). kernelconfig.io PPP over L2TP. kernelconfig.io Virtual eXtensible Local Area Network (VXLAN). kernelconfig.io NetBSD kernel ppp(4) - NetBSD Manual Pages. The NetBSD Project pppoe(4) - NetBSD Manual Pages. The NetBSD Project vlan(4) - NetBSD Manual Pages. The NetBSD Project mpls(4) - NetBSD Manual Pages. The NetBSD Project l2tp(4) - NetBSD Manual Pages. The NetBSD Project colspan=2 gre(4) - NetBSD Manual Pages. The NetBSD Project colspan=2 gif(4) - NetBSD Manual Pages. The NetBSD Project OpenBSD kernel ppp(4) - OpenBSD manual pages. OpenBSD Project pppoe(4) - OpenBSD manual pages. OpenBSD Project vlan(4) - OpenBSD manual pages. OpenBSD Project OpenBSD 5.8 Changelog. OpenBSD Project gre(4) - OpenBSD manual pages. OpenBSD Project gif(4) - OpenBSD manual pages. OpenBSD Project CVS: cvs.openbsd.org: src. OpenBSD Project Solaris kernel Windows NT kernel David Karp, Tim O'Reilly, Troy Mott. "Windows XP in a Nutshell, Second Edition 2nd Edition". p.605. O'Reilly Media. March 8, 2005 GRE Tunneling in Windows Server 2016. Microsoft. November 2, 2024 David Karp, Tim O'Reilly, Troy Mott. "Windows XP in a Nutshell, Second Edition 2nd Edition". p.604. O'Reilly Media. March 8, 2005 Edward Horley. "Practical IPv6 for Windows Administrators" p.12. December 27, 2013. ISBN 978-1430263708 David Karp, Tim O'Reilly, Troy Mott. "Windows XP in a Nutshell, Second Edition 2nd Edition". p.607. O'Reilly Media. March 8, 2005 XNU colspan=2 Zircon
Inter-process communication support