wikiwand.com

Comparison of operating system kernels - Wikiwand

A kernel is a component of a computer operating system.[1] A comparison of system kernels can provide insight into the design and architectural choices made by the developers of particular operating systems.

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.

The major contemporary general-purpose kernels are shown in comparison. Only an overview of the technical features is detailed.

More information Kernel name, Programminglanguage ...

Close

Failure analysis and availability

Scalability and clustering

[icon]

This section needs expansion. You can help by adding to it. (March 2025)

[icon]

This section needs expansion. You can help by adding to it. (April 2025)

More information Kernel, File access control ...

Kernel

File access control Disable memory execution support

Kernel ASLR

Mandatory access control Capability-based security

In-kernel
key management

Audit API Sandbox SYN flood protection UDP flood protection Ping flood protection Smurf attack protection Network Behavior Analysis

Linux

Traditional Unix permissions, POSIX ACL Yes Yes LSM (SELinux, SMACK, TOMOYO Linux, AppArmor) seccomp keyctl fanotify SELinux Sandbox, seccomp SYN cookies hash tables ICMP rate limiting reverse path filtering Netfilter

FreeBSD

Traditional Unix permissions, POSIX and NFSv4 ACL Yes Yes TrustedBSD MAC Capsicum  ? OpenBSM Capsicum, MAC framework SYN cookies  ?  ?  ?  ?

Solaris

Traditional Unix permissions, POSIX ACL, NFSv4 ACL Default  ? Solaris Trusted Extensions  ?  ?  ?  ?  ?  ?  ?  ?  ?

Windows NT

Access control list DEP Yes Mandatory Integrity Control AppContainers No Yes Windows Event Log Yes[70] Yes  ?  ?  ?

XNU

Traditional Unix permissions, NT/NFSv4 ACL[71] Yes Yes TrustedBSD MAC  ?  ? OpenBSM Apple XNU Sandbox  ?  ?  ?  ?  ?

Close

More information Kernel Name, Container(no resource management, no security) ...

Kernel Name Container
(no resource management,
no security)
Container
(no resource management)
Container
(resource management)
Paravirtualization Full virtualization User-space execution Kernel as Library Kernel as Kernel Driver Hypervisor-Enforced Kernel Partitioning
Linux chroot LXC Virtio, Hyper-V (guest only), Xen (guest only), VMI (guest only), kvm-lite, lguest KVM UML (LKL) (coLinux) No
DragonFly BSD kernel chroot jail No No vkernel  ?  ? No
FreeBSD kernel chroot jail Virtio, Xen (guest only) BHyVe (KVM)  ?  ?  ? No
NetBSD kernel chroot (sysjail (discontinued)) No Virtio and Xen No  ? Rump kernel  ? No
Solaris kernel chroot Solaris Containers / Zones No No No  ?  ? No
Windows NT kernel AppContainers, Job Objects, Windows Server Containers Hyper-V Project Drawbridge No Virtual Secure Mode, Device Guard, Credential Guard[72]
XNU chroot  ?  ?  ?  ?  ?  ?  ? No

Close

A comparison of OS support for different binary formats (executables):

More information Name, a.out ...

Name a.out ECOFF ELF FDPIC
ELF
binaries
(mmu less)
flat
binaries
(superH)
HUNK Mach-O

Misc
(wrapper based,
like interpreters)

PE SOM
(PA-RISC,
HP-UX)
NLM PEF DOS COM MZ LE LX NE
Amiga Exec No No Yes[79] No No Yes No No No No  ?  ?  ?  ?  ?  ?  ?
DragonFly BSD No No Yes No No No No No No No No No No No No No No
FreeBSD  ?  ? Yes  ?  ?  ?  ? Yes  ?  ?  ?  ?  ?  ?  ?  ?  ?
HP-UX No No Yes No No No No No No Yes No No  ?  ?  ?  ?  ?
Linux No Yes Yes Yes Yes No No Yes Some[80] Yes  ? No  ?  ?  ?  ?  ?
MINIX 3 Some[11][12] No Yes[10] No No No No No No No No No  ?  ?  ?  ?  ?
NetBSD Yes Yes Yes  ?  ?  ? Yes  ? Yes  ?  ?  ?  ?  ?  ?  ?  ?
OpenBSD  ?  ? Yes  ?  ?  ?  ?  ?  ?  ?  ?  ?  ?  ?  ?  ?  ?
ReactOS  ?  ?  ?  ?  ?  ?  ?  ? Yes  ?  ?  ?  ?  ?  ?  ?  ?
Solaris Yes[81] No Yes[82] No No No No No Some[83] No  ?  ?  ?  ?  ?  ?  ?
Windows NT No No Yes with WSL No No No No No Yes No No No Yes on x86 Yes on x86  ?  ? Yes on x86
XNU No No No No No No Yes No No No No No No No No No No

Close

Physical file systems:

More information Kernel, Acorn ADFS ...

Kernel Acorn ADFS Amiga FFS APFS BeFS BFS cramfs EFS ext2 ext3 ext4 F2FS FAT FreeVxFS HFS HFS+ HPFS ISO 9660 JFFS JFFS2 JFS MINIX fs NSS NTFS OCFS QNX4 FS System V FS UDF UFS XFS ZFS ReiserFS Reiser4 Btrfs HAMMER Tux3 exFAT ReFS
DragonFly BSD kernel No No No No No No No Yes No No No Yes No No No No Yes No No No No No limited write No No No read only Yes No No No No No Yes No No No
FreeBSD kernel No No No No No No No Yes Yes Yes No Yes No No No No Yes No No No No No limited write No No No Yes Yes read only Yes read only No No No No  ? No
Linux kernel Yes
[84]
Yes Yes
[85]
read only Yes Yes read only Yes Yes Yes Yes Yes read only Yes limited write (only with empty journal) Yes Yes Yes Yes Yes Yes Yes Yes
(Full R/W with additional userspace driver)[86]
Yes Yes
[84]
[87]
write support? Yes Yes
[84]
Yes both FUSE and native Yes Yes Yes No Yes Yes No
MINIX 3 kernel No No No No No No No Yes No No No Tools available, cannot mount No No No No Yes No No No Yes No No No No No No No No No No No No No No No No
NetBSD kernel  ?  ?  ?  ?  ?  ?  ?  ?  ?  ?  ?  ?  ?  ?  ?  ?  ?  ?  ?  ?  ?  ?  ?  ?  ?  ?  ? Yes  ?  ?  ?  ?  ?  ?  ?  ?  ?
NetWare kernel No No No No No No No No No No No Yes No No No No Yes No No No No Yes No No No No Yes No No No No No No No No  ? No
OpenBSD kernel  ?  ?  ?  ?  ?  ?  ?  ?  ?  ?  ?  ?  ?  ?  ?  ?  ?  ?  ?  ?  ?  ?  ?  ?  ?  ?  ? Yes  ?  ?  ?  ?  ?  ?  ?  ?  ?
ReactOS kernel No No No No No No No Yes
[88]
Yes
[88]
Yes
[88]
No Yes
[88]
No No No No Yes
[88]
No No No No No Read only No No No Yes
[88]
No No No No No Yes
[89]
No No No No
Solaris kernel  ?  ? No  ?  ?  ?  ? Yes  ?  ?  ? Yes  ?  ?  ?  ? Yes  ?  ?  ?  ? No No  ?  ?  ? Yes Yes  ? Yes No No No No No  ? No
Windows NT kernel  ?  ? Yes
[85]
 ?  ?  ?  ? Yes
[90]
Yes
[91]
Yes
[91]
No Yes  ? Yes
[85]
Yes
[85]
No Yes  ?  ?  ?  ? No Yes  ?  ?  ? Yes  ?  ? No No No Yes
[89]
No No Yes Yes
XNU No No Yes No No No No Yes
[92]
Yes
[92]
No No Yes No Yes Yes No Yes No No No No No Read-Only No No No Yes Yes No read only No No No No No Yes No

Close

Supported CPU instruction sets and microarchitectures

This table indicates, for each kernel, what operating systems' executable images and device drivers can be run by that kernel.

This may be usable on some situations like file system encrypting.

More information Kernel name, DES ...

Kernel name DES AES Blowfish Triple DES Serpent Twofish CAST-128 DES-X IDEA RC2 RC5 SEED Skipjack TEA XTEA CAST-256 RC4 Camellia Anubis KHAZAD Salsa20 FCrypt
DragonFly BSD kernel Yes Yes Yes Yes Yes Yes Yes No Yes No No No Yes No No No Yes Yes No No No No
FreeBSD kernel Yes Yes Yes Yes No No Yes No Yes No No No Yes No No Yes Yes Yes No No No No
Linux Yes Yes Yes Yes Yes Yes Yes No No No No Yes No Yes Yes Yes Yes Yes Yes Yes Yes Yes
Windows NT kernel Yes Yes Yes Yes No No No No No Yes No No No No No No Yes No No No No No
macOS XNU Kernel Yes Yes Yes  ?  ?  ? Yes  ?  ? Yes Yes  ?  ?  ?  ? Yes Yes  ?  ?  ?  ?  ?

Close

This may be usable on some situations like compression file system.

More information Kernel name, Deflate ...

Kernel name Deflate zlib LZO LZJB gzip zstd
Linux Yes Yes Yes No Yes Yes
NetBSD kernel  ? Yes Yes  ? Yes Yes
Solaris kernel  ?  ?  ? Yes Yes  ?

Close

More information Kernel name, ACL ...

Kernel name ACL SCO LMP HCI L2CAP BNEP RFComm. SDP TCP AVTCP AVDTP OBEX CMTP HIDP HCRP CAPI PPP
FreeBSD kernel  ?  ?  ? Yes Yes  ? Yes Yes  ?  ?  ? No  ?  ?  ?  ?  ?
Linux  ? Yes  ? Yes Yes Yes Yes  ?  ?  ?  ?  ? Yes Yes  ?  ?  ?
macOS XNU Kernel  ?  ?  ?  ? Yes  ? Yes Yes  ?  ?  ? No  ?  ?  ?  ?  ?
Kernel name ACL SCO LMP HCI L2CAP BNEP RFComm. SDP TCP AVTCP AVDTP OBEX CMTP HIDP HCRP CAPI PPP

Close

More information Kernel name, Audio system ...

Kernel name Audio system in-kernel mixer in-kernel filter
Linux ALSA ? ?
Windows NT kernel MME / WDM audio / Kernel Streaming (KS) dropped (KMixer.sys) KS Filters
FreeBSD kernel OSS API VCHANs in OSS API ?
NetBSD kernel native (Sun-like) / OSS API[123] audio_system[124] ?
Solaris kernel Sun audio API / OSS API Yes ?

Close