These tables compare free software / open-source operating systems. Where not all of the versions support a feature, the first version which supports it is listed.
Name | License | Kernel type | Kernel programming language | Kernel thread support | OS family | Oldest non-EOL version [Note 1] | Forks |
---|---|---|---|---|---|---|---|
Linux | GPL version 2 only | Monolithic with modules | C | 1:1 | Unix-like | 4.4 | elks |
FreeBSD | BSD; GPL, LGPL software usually included | Monolithic with modules | C | 1:1 | BSD, Unix-like | 11 | DragonFly BSD |
OpenBSD | BSD | Monolithic | C | 1:1 | BSD, Unix-like | 6.4 | MirOS |
NetBSD | BSD | Monolithic with modules | C | 1:1 | BSD, Unix-like | 7.0 | OpenBSD |
DragonFly BSD | BSD | Hybrid | C | 1:1 | BSD, Unix-like | No | |
OpenSolaris, illumos | CDDL | Monolithic with modules | C | 1:1, M:N | Unix | No | |
Darwin, OpenDarwin | APSL | Hybrid | C, C++ [Note 2] | 1:1 | BSD, Unix, Unix-like, OS X | No | |
OpenHarmony | Apache | Multi-kernel (inc. add-ons, alongside custom add-ons not part of OpenHarmony project) | Various (C, C++, Rust, Cangjie) | 1:1, M:N, POSIX | HarmonyOS (without AOSP), LiteOS | 3.0.1 LTS | Oniro OS, HarmonyOS (NEXT) |
Oniro | Eclipse, Apache | Multi-kernel (inc. add-ons, alongside custom add-ons not part of Oniro project) | Various (C, C++, Rust, Cangjie) | 1:1, M:N, POSIX | OpenHarmony | 3.2 LTS | |
MINIX | BSD | Microkernel | C | Unix-like | No | ||
RedoxOS | MIT | Microkernel | Rust | Unix-like | No | ||
FreeRTOS | MIT | RTOS | C | RTOS | No | ||
FreeDOS | GPL | Monolithic | C | DOS | 1.1 | ||
Genode | AGPL | Microkernel | C++ | 1:1 | Genode | ||
Haiku | MIT | Hybrid | C, C++ | BeOS | No | TiltOS | |
House | BSD | Haskell | own/original | No | |||
KolibriOS | GPL | Monolithic | ASM | MenuetOS | No | ||
MenuetOS | Menuet 64, commerce excluded | Monolithic | ASM | own/original | No | KolibriOS | |
GNU | GPL | Multiserver Microkernel (Hurd kernel) or Monolithic (Linux-libre kernel, fork of Linux kernel, and other kernels which are not part of the GNU Project) | C | 1:1 | Unix-like | 2.4 on Linux-libre kernel (not on Hurd kernel) | Linux |
ReactOS | GPL, LGPL | Hybrid | C, C++ | Windows-like | No | ||
RISC OS | Apache 2.0 | Monolithic (with cooperative multitasking) | ARM assembly, C, BBC BASIC | RISC OS | No | RISC OS 6 | |
L4, Fiasco, Pistachio | Some GPL, some BSD | Microkernel | C++ | L4 | No | ||
Plan 9 | MIT | Hybrid | C | 1:1, 1:M Cothread style. | own, Unix informed | No | Inferno, Plan B, 9front |
AROS | APL | Exokernel | C | AmigaOS | No | ||
Syllable | GPL | Hybrid [1] | C, C++ | 1:1 | Unix-like, BeOS, AmigaOS, POSIX | No | |
Inferno | GPL, LGPL; MIT | C | Plan 9 | No | OzInferno | ||
NuttX | BSD | RTOS | C | RTOS | No | ||
eCos | modified GPL, eCos | RTOS | C, C++ | RTOS | No | ||
RTEMS | modified GPL, BSD, Stanford | RTOS | C and ASM with native support for other languages including C++ and Ada | POSIX, RTEID/ORKID, uITRON | RTOS | 4.7.1 | |
HelenOS | BSD | Microkernel | C | M:N | own/original | No | |
E/OS | GPLv2 | Monolithic | ASM, C | 1:1 | BeOS, Unix-like | No | |
TempleOS | public domain | Monolithic | HolyC, C, C++ | Commodore 64-like | No | ||
Name | License | Kernel type | Kernel programming language | Kernel thread support | OS family | Oldest non-EOL version | Forks |
Name | x86, i386, IA-32 | x86 SMP | Xen | IA-64 | x86-64 | PowerPC | PowerPC SMP | SPARC32 | SPARC SMP | Alpha | MIPS | ARM | XScale | M68k | PA-RISC | OpenRISC | others | hosted mode |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Linux | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | FR-V, Cell, ETRAX CRIS, M32R, Xtensa, h8, s390, SuperH | UML, coLinux, MkLinux, Itanium Linux-on-Linux, wombat |
FreeBSD [2] | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | No | Yes | Yes | Yes | No | No | No | PC98 | |
OpenBSD [3] | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | No | Yes | No | SuperH | |
NetBSD [4] | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | SuperH, ns32k, VAX, hppa, M68010, mipseb, mipsel, sh3eb, sh3el, sparc64 | |
DragonFly BSD [5] | No | No | No | No | Yes | No | No | No | No | No | No | No | No | No | No | No | vkernel | |
OpenSolaris [6] illumos | Yes | Yes | Yes | No | Yes | No | No | Yes | Yes | No | No | No | No | No | No | No | ||
Darwin, OpenDarwin [7] | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | Yes | No | Yes | No | No | L4/Darwin | |
OpenHarmony | Yes | Yes | No | Yes | Yes | No | No | Yes | Yes | No | Yes | Yes | No | No | No | No | ||
Oniro | No | Yes | No | No | Yes | No | No | No | No | No | No | Yes | No | No | No | No | ||
MINIX [8] | Yes | No | No | No | No | No | No | No | No | No | No | Yes | No | No | No | No | ||
FreeDOS | Yes | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
Genode | Yes | Yes | Yes | No | No | No | No | No | No | No | No | Yes | No | No | No | No | RISC-V | Linux |
Haiku | Yes | Yes | No | No | Yes | No | No | No | No | No | No | No [Note 1] [9] | No | No | No | No | ||
KolibriOS | Yes | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
MenuetOS | Yes | No | No | No | Yes | No | No | No | No | No | No | No | No | No | No | No | ||
GNU | Yes | Yes [Note 2] | Yes [Note 2] | Yes [Note 2] | Yes [Note 2] | Yes [Note 2] | Yes [Note 2] | Yes [Note 2] | Yes [Note 2] | Yes [Note 2] | Yes [Note 2] | Yes [Note 2] | Yes [Note 2] | Yes [Note 2] | Yes [Note 2] | Yes [Note 2] | FR-V, Cell, ETRAX CRIS, M32R, Xtensa, h8, s390, SuperH [Note 2] | UML, Itanium Linux-on-Linux [Note 3] |
ReactOS | Yes | Yes | No [Note 1] | No | Yes | No [Note 1] | No [Note 1] | No | No | No | No | Yes | No | No | No | No | ||
RISC OS | No | No | No | No | No | No | No | No | No | No | No | Yes | No | No | No | No | ||
L4, Pistachio | Yes | No | No | Yes [Note 4] | Yes [Note 4] | Yes [Note 4] | No | No | No | Yes [Note 4] | Yes [Note 4] | Yes | No | No | No | No | ||
Plan 9 | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes [Note 5] | Yes [Note 5] | Yes | Yes | Yes | Yes | Yes [Note 5] | No | No | See [10] [11] | lguest, vx32 |
AROS | Yes | No | No | No | Yes | Yes | No | No | No | No | No | Yes | No | Yes | No | No | i386-linux, i386-freebsd | |
Syllable | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
Inferno | Yes | ? | No | No | ? | Yes | ? | Yes | ? | No | Yes | Yes | Yes | Yes [Note 5] | No | No | AMD Am29000, [Note 5] Texas Instruments OMAP | Microsoft Windows, Linux, FreeBSD, Plan 9, OS X, Solaris, Irix, UnixWare, [Note 5] HP-UX, [Note 5] Internet Explorer |
FreeRTOS | Yes | No | No | No | No | No | No | No | No | No | Yes | Yes | No | No | No | Yes | AVR, PIC, MSP430, HCS12, 8052, MicroBlaze, Cortex-M3, H8S | |
eCos | Yes | Yes | No | No | No | Yes | No | Yes | No | No | Yes | Yes | Yes | Yes | No | Yes | CalmRISC, ColdFire, FR-V, h8, Matsushita AM3x, Nios II, NEC V8xx, SuperH | Microsoft Windows, Linux |
RTEMS | Yes | No | Xen | No | No | Yes | No | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Blackfin, Nios II, Coldfire, Texas Instruments C3x/C4x, SuperH, H8S | Linux, Solaris, Cygwin, FreeBSD, multiple CPU simulators |
HelenOS | Yes | Yes | No | Yes | Yes | Yes | No | Yes | Yes | No | Yes | Yes | No | No | No | No | ||
E/OS | Yes | No | No | No | No | No | No | No | No | No | No | Yes | No | No | No | No | ||
TempleOS | No | No | No | No | Yes | No | No | No | No | No | No | No | No | No | No | No | QEMU, VirtualBox, etc. | |
Name | x86, i386, IA-32 | x86 SMP | Xen | IA-64 | x86-64 | PowerPC | PowerPC SMP | SPARC32 | SPARC SMP | Alpha | MIPS | ARM | XScale | M68k | PA-RISC | OpenRISC | other | hosted mode |
Name | ATA | SATA | SCSI | USB 3.0 | USB 2.0 | USB 1.1 | FireWire | PCMCIA/PC card | AGP | Nvidia official driver IA-32 | Nvidia official driver IA-64 | Nvidia official driver AMD64 | ATI official driver x86 | ATI official driver x86-64 | ATI r200 free software driver | ATI r300 free software driver | Nvidia free software driver | Audio | TV tuner, video editing, or webcam |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Linux | Yes | Yes | Yes | Yes 2.6.31+ [12] | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes,nv(2d only), nouveau(3d with mesa) | OSS, ALSA | V4L,V4L2 |
FreeBSD | Yes | Yes | Yes | Yes 8.2+ | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes |
OpenBSD | Yes | Yes | Yes | Yes 5.7+ | Yes | Yes | No | Yes | Yes | No | No | No | No | No | Yes [13] | 2d only [13] | 2d only [14] | Yes | Yes |
NetBSD | Yes | Yes | Yes | Yes 8.0+ [15] | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | |||
DragonFly BSD | Yes | Yes | Yes | Yes [16] | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | ||||
OpenSolaris, illumos | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | No | No | Yes | V4L2 | |||
Darwin, OpenDarwin | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | |||||||||
OpenHarmony | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | No | No | No | No | No | No | No | No | Yes | Yes |
Oniro | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | No | No | No | No | No | No | No | No | Yes | Yes |
MINIX | No | No | No | No | No | ||||||||||||||
FreeDOS | Yes | Yes | Yes | No | No [17] | No [17] | No | Yes | No | No | No | No | No | No | No | No | Yes | No | |
Genode | Yes | Yes | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | No |
Haiku | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | |
KolibriOS | Yes | Yes | No | Yes | Yes | No | No | No | No | No | No | No | Yes | No | |||||
MenuetOS | Yes | No | No | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | |||||
GNU | Yes | Yes [Note 1] | Yes [Note 1] | Yes [Note 1] | Yes [Note 1] | Yes [Note 1] | Yes [Note 1] | Yes | No [Note 2] | No [Note 2] | No [Note 2] | No [Note 2] | No [Note 2] | No [Note 3] | No [Note 3] | Yes [Note 1] | Yes [Note 1] | Yes [Note 1] | |
ReactOS | Yes | Yes | Yes | Yes [18] | Yes [18] | No | No | Yes | No | No | No | No | No | Yes | |||||
RISC OS | ? | Yes | Yes | ? | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | TV tuner [19] |
L4, Fiasco, Pistachio | No | No | No | No | No | ||||||||||||||
Plan 9 | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | |||||
AROS | Yes | Yes | No | No | No | own | No | 2D only | |||||||||||
Syllable | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | ||||||||
Inferno | Yes | No | Yes | No | No | No | Yes | Yes | No | No | No | No | No | Yes | |||||
FreeRTOS | No | No | No | No | No | ||||||||||||||
eCos | Yes | Yes | Yes | Yes | No | No | No | No | No | ||||||||||
RTEMS | Yes | Yes | No | No | No | No | No | ||||||||||||
HelenOS | Yes | Yes | No | No | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | No | |
E/OS | Yes | Yes | Yes | No | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | ||||
Name | ATA | SATA | SCSI | USB 3.0 | USB 2.0 | USB 1.1 | FireWire | PCMCIA/PC card | AGP | Nvidia official driver IA-32 | Nvidia official driver IA-64 | Nvidia official driver AMD64 | ATI official driver x86 | ATI official driver x86-64 | ATI r200 free software driver | ATI r300 free software driver | Nvidia free software driver | Audio | TV tuner, video editing, or webcam |
Name | Networking support | NE2000/RTL8029 | RTL8139 | Gigabit Ethernet | 10 Gigabit Ethernet | Wireless LAN | Bluetooth | IrDA |
---|---|---|---|---|---|---|---|---|
Linux | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
FreeBSD | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
OpenBSD | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No |
NetBSD | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
DragonFly BSD | Yes | Yes | Yes | Yes | Yes | Yes | ||
OpenSolaris, illumos | Yes | Yes | Yes | Yes | Yes | No | No | |
Darwin, OpenDarwin | Yes | |||||||
OpenHarmony | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No |
Oniro | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No |
MINIX | Yes | Yes | ||||||
FreeDOS | Yes | Yes | Yes | |||||
Genode | Yes | No | No | Yes | No | Yes | No | No |
Haiku | Yes | Yes | Yes | Yes | Yes | |||
KolibriOS | Yes | Yes | Yes | No | Yes | |||
MenuetOS | Yes | Yes | No | No | ||||
GNU | Yes | |||||||
ReactOS | Yes | Yes | Yes | Yes | Yes | Yes | No | No |
L4, Fiasco, Pistachio | ||||||||
Plan 9 | Yes | Yes | Yes | Yes | Yes | Yes | No | No |
AROS | Yes | Yes | ||||||
Syllable | Yes | Yes | Yes | Yes | ||||
Inferno | Yes | Yes | Yes | Yes | Yes | No | No | |
FreeRTOS | ||||||||
eCos | Yes | Yes | Yes | |||||
RTEMS | Yes | Yes | Yes | Yes | No | No | No | No |
HelenOS | Yes | Yes | Yes | Yes | No | No | No | No |
E/OS | Yes | Yes | Yes | Yes | Yes | No | No | No |
Name | Networking support | NE2000/RTL8029 | RTL8139 | Gigabit Ethernet | 10 Gigabit Ethernet | Wireless LAN | Bluetooth | IrDA |
Name | Firewall | TCP/IP | IPv6 | IPX | PPP | PPPoE | DHCP | Bridge | TUN/TAP | SSH | OpenVPN |
---|---|---|---|---|---|---|---|---|---|---|---|
Linux | netfilter iptables/nftables | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
FreeBSD | IPFW2, IPFilter, PF | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
OpenBSD | PF | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
NetBSD | IPFilter, NPF, PF | Yes | Yes | Yes | Yes [Note 1] | Yes | Yes | Yes | Yes | Yes | |
DragonFly BSD | IPFW2, PF | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | |
OpenSolaris, illumos | IPFilter | Yes | Yes | Yes | Yes | Yes | Yes | Yes [Note 2] | Yes | Yes | |
Darwin, OpenDarwin | IPFW | Yes | Yes | Yes | Yes | ||||||
OpenHarmony | Yes | Yes | No | Yes | No | Yes | No | No | No | No | |
Oniro | Yes | Yes | No | Yes | No | Yes | No | No | No | No | |
MINIX | Yes | Yes | |||||||||
FreeDOS | Yes | Yes | Yes | Yes | Yes | Yes | |||||
Genode | software IP routing | Yes | No | No | No | Yes | Yes | ||||
Haiku | None | Yes | Yes[ citation needed ] | Yes | Yes | Yes | |||||
KolibriOS | None | Yes | No | Yes | No | Yes | |||||
MenuetOS | None | Yes | No | No | No | ||||||
GNU | netfilter iptables/nftables (with Linux-libre and Linux kernel) [Note 3] | Yes | Yes [Note 4] | Yes [Note 5] | Yes | ||||||
ReactOS | Yes | Yes[ citation needed ] | |||||||||
L4, Fiasco, Pistachio | |||||||||||
Plan 9 | ipmux | Yes | Yes | No | Yes | Yes | Yes | Yes | No | Yes | No |
AROS | Yes | ||||||||||
Syllable | Yes | Yes | Yes | Yes | Yes | ||||||
Inferno | ipmux | Yes | Yes | No | Yes | Yes | Yes | Yes | No | No | No |
FreeRTOS | |||||||||||
eCos | Yes | Yes | Yes | Yes | Yes | ||||||
RTEMS | Yes | No | Yes | Yes | Yes | Yes | Yes | ||||
HelenOS | Yes | Yes | No | No | No | Yes | No | No | No | No | |
E/OS | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | |
Name | Firewall | TCP/IP | IPv6 | IPX | PPP | PPPoE | DHCP | bridge | TUN/TAP | ssh | OpenVPN |
Name | FAT16, dosfs; FAT32, vfat | NTFS | Ext2 | Ext3 | XFS | ReiserFS | UFS | UFS2 | HFS | HFS+ | MINIXfs | BFS | ISO 9660 | UDF | NFS | SMBFS | RAM disk, tmpfs | ZFS | Other special file systems |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Linux | Yes | Yes [Note 1] | Yes | Yes | Yes | Yes | Yes [Note 2] | Yes [20] | Yes | Yes [Note 3] | Yes | Yes [Note 2] | Yes | Yes | Yes | Yes | Yes | Yes | 9P, [Note 4] FUSE, [Note 4] sysfs, [Note 4] configfs, [Note 4] Reiser4, [Note 4] [Note 5] JFS, Btrfs, UnionFS, Ext4 |
FreeBSD | Yes | Yes [Note 2] [Note 6] | Yes | Yes [Note 2] | Yes [Note 7] | Yes [Note 2] | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | FUSE, nullfs, UnionFS |
NetBSD | Yes | Yes [Note 2] [Note 6] | Yes | No | No | Yes | Yes | Yes [Note 2] | No | No | Yes | Yes [Note 2] | Yes | Yes | Yes | Yes | PUFFS, LFS, EFS | ||
OpenBSD | Yes | Yes [Note 2] | Yes | No | No | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | AFS | |
DragonFly BSD | Yes | Yes [Note 2] | Yes | No | No | No | Yes | No | No | No | No | No | Yes | Yes [Note 8] | Yes | Yes | Yes | No | HAMMER, nullfs, PUFFS |
OpenSolaris, illumos | Yes | Yes [Note 6] [Note 9] | No | No | No | No | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | SMB (native), QFS | |
Darwin, OpenDarwin | Yes | Yes [Note 2] [Note 6] | Yes | Yes | Yes | Yes | Yes | Yes | Yes | ||||||||||
OpenHarmony | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Ex4, F2FS, EROFS, HMDFS |
Oniro | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Ex4, F2FS, EROFS, HMDFS |
MINIX | Yes | No | Yes | Yes | No | ||||||||||||||
FreeDOS | Yes | No | No | No | No | No | No | No | No | Yes | Yes | ||||||||
Genode | Yes | No | Yes | No | No | No | No | No | No | No | No | No | Yes | No | No | No | Yes | No | Extensible VFS layer |
Haiku | Yes | Yes [Note 6] | Yes [Note 10] | Yes [Note 10] | Yes | Yes | Yes | Yes | No [Note 11] | ||||||||||
KolibriOS | Yes | Yes [Note 2] | Yes [Note 2] | Yes [Note 2] | Yes [Note 2] | Yes | Yes | ||||||||||||
MenuetOS | Yes | ||||||||||||||||||
GNU | Yes | Yes | Yes [Note 12] | Yes [Note 13] | Yes | Yes | Yes | No | |||||||||||
ReactOS | Yes | Yes | No | No | No | No | No | No | |||||||||||
L4, Fiasco, Pistachio | Yes | No | |||||||||||||||||
Plan 9 | Yes | Yes | No | No | No | No | No | No | No | No | No | Yes | No | Yes | Yes | Yes | No | Fossil, Venti, most system services | |
AROS | Yes | Yes | SFS, AFFS | ||||||||||||||||
Syllable | Yes | Yes [Note 2] | Yes [Note 2] | Yes [Note 2] | Yes | Yes | Yes | AFS | |||||||||||
Inferno | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | No | No | No | Yes | kfs, most system services | |
FreeRTOS | No | ||||||||||||||||||
eCos | Yes | Yes [Note 2] | Yes | MMFS, ROMfs, JFFS2, YAFFS | |||||||||||||||
RTEMS | Yes | Yes | Yes | TarFS, TFTP FS, IMFS, miniIMFS | |||||||||||||||
HelenOS | Yes | No | Yes | Yes | No | No | No | No | No | No | Yes | No | Yes | Yes | No | No | Yes | locfs, exFAT | |
E/OS | Yes | No | Yes | No | No | No | No | No | No | No | Yes | Yes [Note 14] | Yes | No | Yes | Yes | Yes | ||
Name | FAT16, dosfs; FAT32, vfat | NTFS | Ext2 | Ext3 | XFS | ReiserFS | UFS | UFS2 | HFS | HFS+ | MINIXfs | BFS | ISO 9660 | UDF | NFS | SMBFS | RAM disk, tmpfs | ZFS | Other special file systems |
Name | RAID | quota | Resource access control | encryption | other special file system features |
---|---|---|---|---|---|
Linux | Yes | Yes | Unix, ACL, MAC | Yes | LVM, EVMS |
FreeBSD | Yes | Yes | Unix, ACL, MAC | Yes | GEOM, snapshots, background fsck, user-mountable file systems |
OpenBSD | Yes | Yes | Unix | Yes | |
NetBSD | Yes | Yes | Unix, Veriexec | Yes | Snapshots, Journaling |
DragonFly BSD | Yes | Yes | Unix | Yes | HAMMER, Snapshots, Checksumming, Deduplication |
OpenSolaris, illumos | Yes | Yes | Unix, ACL, MAC | Yes | Solaris Volume Manager, ZFS, snapshots, transparent data repair |
Darwin, OpenDarwin | Yes | Unix, ACL | Yes | ||
OpenHarmony | No | No | RBAC | Yes | HMDFS, Access token manager |
Oniro | No | No | RBAC | Yes | HMDFS, Access token manager |
MINIX | Unix | ||||
FreeDOS | No | ||||
Genode | No | No | No | No | Per-process virtual file-system layer |
KolibriOS | No | ||||
MenuetOS | No | ||||
GNU | Unix | ||||
ReactOS | No | ||||
L4, Fiasco, Pistachio | |||||
Plan 9 | No | No | Unix-like, no root | No | snapshots, venti archival storage, per-process namespace, user-mountable file systems |
AROS | |||||
Syllable | Unix | 64-bit, journaling, extended file attributes | |||
Inferno | No | No | Unix-like, no root | No | per-process namespace, user-mountable file systems |
FreeRTOS | |||||
eCos | |||||
RTEMS | |||||
HelenOS | No | No | No | No | No |
E/OS | Yes | Yes | Unix | Yes | No |
Name | RAID | quota | Resource access control | encryption | other special file system features |
Operating system | Mandatory access control | Software executable space protection | Operating system-level virtualization | Virtualisation | Userspace protection | Others |
---|---|---|---|---|---|---|
Linux | SELinux, AppArmor [Note 1] | Exec Shield, [Note 1] PaX [Note 1] | Chroot, namespace and cgroups, [Note 2] Linux-VServer, [Note 1] OpenVZ [Note 1] | KVM | IPFilter, Iptables | grsecurity, [Note 1] RSBAC [Note 1] |
FreeBSD | SeBSD, [Note 3] [Note 4] TrustedBSD | ProPolice/SSP [Note 5] | jail | bhyve [21] | IPFW, PF, IPFilter | |
Darwin | SEDarwin, TrustedBSD | jail | IPFW | |||
OpenBSD | W^X, ProPolice/SSP [Note 6] | vmm [22] | PF | |||
OpenSolaris, illumos | TrustedBSD | Solaris Containers | KVM [23] | IPFilter | RBAC [24] | |
OpenHarmony | iTrustee (TEEOS) | Distributed Virtual Framework | device_qemu | appverify [25] | RBAC | |
Oniro | iTrustee (TEEOS) | Distributed Virtual Framework | device_qemu [26] | appverify | RBAC | |
Plan 9 | No | No | per-process namespaces | |||
Inferno | No | No | per-process namespaces |
ext2, or second extended file system, is a file system for the Linux kernel. It was initially designed by French software developer Rémy Card as a replacement for the extended file system (ext). Having been designed according to the same principles as the Berkeley Fast File System from BSD, it was the first commercial-grade filesystem for Linux.
The Open Sound System (OSS) is an interface for making and capturing sound in Unix and Unix-like operating systems. It is based on standard Unix devices system calls. The term also sometimes refers to the software in a Unix kernel that provides the OSS interface; it can be thought of as a device driver for sound controller hardware. The goal of OSS is to allow the writing of sound-based applications that are agnostic of the underlying sound hardware.
These tables provide a comparison of operating systems, of computer devices, as listing general and technical information for a number of widely used and currently available PC or handheld operating systems. The article "Usage share of operating systems" provides a broader, and more general, comparison of operating systems that includes servers, mainframes and supercomputers.
Filesystem in Userspace (FUSE) is a software interface for Unix and Unix-like computer operating systems that lets non-privileged users create their own file systems without editing kernel code. This is achieved by running file system code in user space while the FUSE module provides only a bridge to the actual kernel interfaces.
The following tables compare general and technical information between a number of notable IRC client programs which have been discussed in independent, reliable prior published sources.
Advanced Configuration and Power Interface (ACPI) is an open standard that operating systems can use to discover and configure computer hardware components, to perform power management, auto configuration, and status monitoring. It was first released in December 1996. ACPI aims to replace Advanced Power Management (APM), the MultiProcessor Specification, and the Plug and Play BIOS (PnP) Specification. ACPI brings power management under the control of the operating system, as opposed to the previous BIOS-centric system that relied on platform-specific firmware to determine power management and configuration policies. The specification is central to the Operating System-directed configuration and Power Management (OSPM) system. ACPI defines hardware abstraction interfaces between the device's firmware, the computer hardware components, and the operating systems.
OS-level virtualization is an operating system (OS) virtualization paradigm in which the kernel allows the existence of multiple isolated user space instances, including containers, zones, virtual private servers (OpenVZ), partitions, virtual environments (VEs), virtual kernels, and jails. Such instances may look like real computers from the point of view of programs running in them. A computer program running on an ordinary operating system can see all resources of that computer. Programs running inside a container can only see the container's contents and devices assigned to the container.
Extended file attributes are file system features that enable users to associate computer files with metadata not interpreted by the filesystem, whereas regular attributes have a purpose strictly defined by the filesystem. Unlike forks, which can usually be as large as the maximum file size, extended attributes are usually limited in size to a value significantly smaller than the maximum file size. Typical uses include storing the author of a document, the character encoding of a plain-text document, or a checksum, cryptographic hash or digital certificate, and discretionary access control information.
A kernel is a component of a computer operating system. 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 file systems.
NTFS-3G is an open-source cross-platform implementation of the Microsoft Windows NTFS file system with read/write support. NTFS-3G often uses the FUSE file system interface, so it can run unmodified on many different operating systems. It is runnable on Linux, FreeBSD, NetBSD, OpenSolaris, illumos, BeOS, QNX, WinCE, Nucleus, VxWorks, Haiku, MorphOS, Minix, macOS and OpenBSD. It is licensed under the GNU General Public License. It is a partial fork of ntfsprogs and is under active maintenance and development.
Kernel-based Virtual Machine (KVM) is a free and open-source virtualization module in the Linux kernel that allows the kernel to function as a hypervisor. It was merged into the mainline Linux kernel in version 2.6.20, which was released on February 5, 2007. KVM requires a processor with hardware virtualization extensions, such as Intel VT or AMD-V. KVM has also been ported to other operating systems such as FreeBSD and illumos in the form of loadable kernel modules.
GNU variants are operating systems based upon the GNU operating system. According to the GNU project and others, these also include most operating systems using the Linux kernel and a few others using BSD-based kernels.
In computing, entropy is the randomness collected by an operating system or application for use in cryptography or other uses that require random data. This randomness is often collected from hardware sources, either pre-existing ones such as mouse movements or specially provided randomness generators. A lack of entropy can have a negative impact on performance and security.
Illumos is a partly free and open-source Unix operating system. It is based on OpenSolaris, which was based on System V Release 4 (SVR4) and the Berkeley Software Distribution (BSD). Illumos comprises a kernel, device drivers, system libraries, and utility software for system administration. This core is now the base for many different open-sourced Illumos distributions, in a similar way in which the Linux kernel is used in different Linux distributions.
NetBSD is a free and open-source Unix-like operating system based on the Berkeley Software Distribution (BSD). It was the first open-source BSD descendant officially released after 386BSD was forked. It continues to be actively developed and is available for many platforms, including servers, desktops, handheld devices, and embedded systems.
The NetBSD rump kernel is the first implementation of the "anykernel" concept where drivers either can be compiled into or run in the monolithic kernel or in user space on top of a light-weight kernel. The NetBSD drivers can be used on top of the rump kernel on a wide range of POSIX operating systems, such as the Hurd, Linux, NetBSD, DragonFly BSD, Solaris kernels and even Cygwin, along with the file system utilities built with the rump libraries. The rump kernels can also run without POSIX directly on top of the Xen hypervisor, an L4 microkernel using the Genode OS Framework or even on OS-less bare metal.
OpenZFS is an open-source implementation of the ZFS file system and volume manager initially developed by Sun Microsystems for the Solaris operating system, and is now maintained by the OpenZFS Project. Similar to the original ZFS, the implementation supports features like data compression, data deduplication, copy-on-write clones, snapshots, RAID-Z, and virtual devices that can create filesystems that span multiple disks.