Сравнение ядер операционных систем

редактировать

A ядро ​​ является наиболее фундаментальным компонентом компьютерной операционной системы. Сравнение системных ядер может дать представление о выборе дизайна и архитектуры, сделанном разработчиками конкретных операционных систем.

Содержание
  • 1 Критерии сравнения
  • 2 Обзор функций
  • 3 Поддержка транспортного протокола
  • 4 Безопасность в ядре
  • 5 Виртуализация в ядре
  • 6 Поддержка сервера в ядре
  • 7 Поддержка двоичного формата
  • 8 Поддержка файловой системы
  • 9 Поддержка сетевой файловой системы
  • 10 Поддерживаемые наборы команд ЦП и микроархитектуры
  • 11 Поддерживаемые процессоры GPU
  • 12 Поддерживаемая среда выполнения ядра
  • 13 Поддерживается алгоритмы шифрования
  • 14 Поддерживаемые алгоритмы сжатия
  • 15 Поддерживаемые алгоритмы обзора сообщений
  • 16 Поддерживаемые протоколы Bluetooth
  • 17 См. также
  • 18 Сноски
Критерии сравнения

В следующих таблицах сравниваются общая и техническая информация для ряда широко используемых и доступных в настоящее время ядер операционной системы. Пожалуйста, смотрите статьи по отдельным продуктам для получения дополнительной информации.

Несмотря на то, что существует большое количество и разнообразие доступных дистрибутивов Linux, все эти ядра сгруппированы под одной записью в этих таблицах из-за различий между ними, связанных с патчем. уровень. См. сравнение дистрибутивов Linux для подробного сравнения. Дистрибутивы Linux с сильно модифицированными ядрами - например, ядра для вычислений в реальном времени - должны быть указаны отдельно. Существует также большое количество второстепенных операционных систем BSD, многие из которых можно найти на странице Сравнение операционных систем BSD.

Таблицы, в частности, не включают субъективные точки зрения на достоинства каждого ядра или операционной системы. Для получения такой информации см. Поддержка операционной системы.

Обзор функций

Основные современные ядра общего назначения показаны в сравнении. Подробен только обзор технических характеристик.

Имя ядраЯзык программированияИспользуется вCreatorExecutable. формате. (см. Также. раздел. ниже)ТипВстроенный межсетевой экран Поддержка SMP Несколько архитектур. поддержка. (также см.. раздел ниже).Многозадачность Виртуализация Безопасность Профилирование / Отладка Программная поддержка в реальном времени Жесткая в реальном времени время поддержкаМожет сохранять RTC в UT
Amiga Exec AmigaOS Commodore International HUNK Exokernel (нетипично)НетНетНетДаНетНетДаНетНетНет
Amiga Exec SG (2-го поколения) AmigaOS 4 Hyperion Entertainment ELF / HUNK Exokernel (нетипичный)НетНетНетДаНетНетДаНетНет?
Ядро DragonFly BSD C DragonFly BSD Мэтт Диллон ELF гибрид Ipfirewall,. PF ДаНетДаchroot, jail, vkernelРазрешения Unix DDB, KGDB ???
Ядро FreeBSD C FreeBSD,

Debian GNU / kFreeBSD, Gentoo / FreeBSD, Orbis OS

FreeBSD Pro ject ELF, другие - зависимые от платформымонолитные IPFilter, Ipfirewall,. PF ДаДаДаchroot, jail, bhyve разрешения Unix, ACL POSIX.1e и NFSv4, Capsicum, TrustedBSD MAC, OpenBSM KDB, DDB, KGDB, DTrace,Да?Да
GNU Hurd C GNU / Hurd (Arch Hurd, Debian GNU / Hurd )GNU Project / Free Software Foundation ELF мультисерверное микроядро Нетчастичное НетДаchroot, Xen Разрешения Unix, POSIX ACL, Возможности POSIX ????
GNU Mach C часть GNU Hurd, используемая в GNU / Hurd GNU Project / Free Software Foundation ELF микроядро Нетчастичное НетДаchroot, Xen Разрешения Unix, POSIX ACL, Возможности POSIX ????
Ядро Inferno Inferno Bell Labs /?виртуальная машина e ?ДаДаДаchroot, Xen ?????
L4 L4 Йохен Лидтке Нетмикроядро НетДаДаДаДа[1], марципан [2], возможности в L4 / Fiasco L4 / Fiasco L4 / Fiasco ??
ядро ​​Linux C Linux (ядро), Android, Ubuntu, CentOS, webOS, Fire OS, Firefox OS, Chrome OS, Syllable Server, Mastodon Linux, OpenBSD / Linux, Plan 9 / Linux, Sailfish OS, Тизен и другие.Линус Торвальдс ELF, другиемонолитные * (2.0 -) ДаДаДаcgroups, chroot, Lguest, Xen, KVM, LXC разрешения Unix, POSIX ACL, Возможности POSIX, keyctl, LSM (SELinux, SMACK, TOMOYO Linux, AppArmor )OProfile, SystemTap, ftrace, KDB, KGDB, маркер ядра, инструменты perf CONFIG_PREEMPT(CONFIG_PREEMPT_RT Patch )Да
Compute Node Linux Compute Node Linux Cray Inc. ????????????
Mach C NeXTSTEP и OPENSTEP для Mach и Tru64 UNIX Университет Карнеги-Меллона Mach-O микроядро, гибридное ядро ​​ ?Да?Да???Да??
Ядро MINIX 3 C MINIX 3 Эндрю С. Таненбаум ELF, a.out микроядро НетНетДаДаНетРазрешения Unix Профилирование вызовов, статистическое профилирование, Minix Debugger (mdb)НетНет?
MkLinux ?Исследовательский институт OSF и Apple Computer ?микроядро ??????????
Ядро NetBSD C NetBSD,

GNU / kNetBSD ( Debian GNU / NetBSD ),

Проект NetBSD ELF, другие - платформенно-зависимыемонолитные, любое ядро, использующее ядро ​​rump архитектураIPFilter, PF, NPF ДаДаДаXen, chroot kauth, Разрешения Unix DDB, KGDB,POSIX расширения планирования в реальном времениВытеснение ядра ?
ядро ​​NetWare NetWare Novell NLM гибрид ДаДаНетДа??????
Ядро OpenBSD C OpenBSD ELF, другие - платформенно-зависимыемонолитные PF ДаДаДа?Разрешения Unix ????
Ядро OS / 2 OS / 2 версии 2 и вышеIBM LXгибрид НетДаНет Версия PowerPC разработана, но официально не выпущена.ДаНетДаДаДаНет?
Ядро Plan 9 C Plan 9 от Bell Labs Bell Labs ?гибрид ipmuxДаДаДа??????
Ядро ReactOS C, C ++ ReactOS PE, другие?гибрид ???Да??????
Ядро Rockbox Rockbox Проект Rockbox????Да???????
Ядро SunOS C SunOS Sun Microsystems a.out.монолитный ?ДаДаДа?Разрешения Unix ????
Ядро Solaris C Solaris,

OpenSolaris, GNU / kOpenSolaris (Nexenta OS )

Sun Microsystems ELF (только 32-разрядная версия до. Solaris 7 в 1998 г.)монолитная IPFilter ДаДаДаЗоны, chroot Разрешения Unix, ACL, RBAC, Auditing, Privileges, Зоны, Доверенные расширения DTrace, профилирование ЦП, учет микросостояний, счетчики производительности, статистика блокировки ядра, kstats, mdb, kmdbПланировщик реального времени??
Ядро Trix Trix Массачусетский технологический институт a.out монолитное ?ДаНетДа??????
Ядро Windows NT C, C ++ Windows NT, 2000,. XP, 2003, Vista, Windows 7, Windows 8, Windows Phone 8, Windows Phone 8.1, Windows 10 Microsoft PE и другие?гибрид ДаДаДаДаHyper-V ACL Трассировка событийПланировщик классов мультимедиа Сервис НетНеофициальный
XNU (Дарвин ядро)C, C ++ Mac OS X, iOS, iPadOS, tvOS, watchOS,

OpenDarwin, PureDarwin GNU / Darwin

Apple Inc. Mach-O гибридный Ipfirewall,. PF (начиная с Lion)ДаДаДаchroot разрешения Unix, NT / NFSv4 ACL, TrustedBSD MAC, OpenBSM KDB, DDB, DTrace ДаНетДа
СПАРТАНСКОЕ ядро ​​ HelenOS Якуб Джермар ELF микроядро ?ДаДаДа??????
Имя ядраИспользуется вCreatorExecutable. формате. (также см.. раздел. ниже)ТипВстроенный межсетевой экран Поддержка SMP Поддержка нескольких архитектур.. (также см.. раздел ниже).Многозадачность Виртуализация Безопасность Профилирование / Отладка Программная поддержка в реальном времени Жесткая в реальном времени время поддержкаМожет сохранять RTC в UT
Поддержка транспортного протокола
Имя ядраTCP UDP SCTP DCCP
Ядро DragonFly BSD ДаДаНетНет
Ядро FreeBSD ДаДаДаНеобязательно
Ядро Linux ДаДаДаДа
Ядро Solaris ДаДаДа?
Ядро Windows NT ДаДаНет?
XNU ДаДаНетНет
Безопасность внутри ядра
Имя ядраУправление доступом к файламОтключить выполнение памяти поддержкаЯдро ASLR Обязательный контроль доступа Безопасность на основе возможностей Управление ключами в ядреAudit APISandbox SYN flood защитаUDP flood защитаPing f lood защитаSmurf-атака защитаАнализ поведения сети
LinuxТрадиционные разрешения Unix, POSIX ACL ДаДаLSM (SELinux, SMACK, TOMOYO Linux, AppArmor )seccompfanotifySELinux Sandbox, seccomp SYN cookie Нет?Нет?Нет?Нет
Ядро FreeBSDТрадиционные разрешения Unix, POSIX и NFSv4 ACL Да?Capsicum?OpenBSM Capsicum, MAC frameworkФайлы cookie SYN ????
Ядро SolarisТрадиционные разрешения Unix, ACL POSIX, ACL NFSv4 По умолчанию?Надежные расширения Solaris ?????????
Ядро Windows NTСписок управления доступом DEP ДаОбязательный контроль целостности Контейнеры приложений?ДаЖурнал событий WindowsДа????
XNUТрадиционный Разрешения Unix, NT / NFSv4 ACL ДаДа??OpenBSM Apple XNU Sandbox?????
Виртуализация внутри ядра
Имя ядраКонтейнер (без управления ресурсами, без защиты)Контейнер (без управления ресурсами)Контейнер (управление ресурсами)Паравиртуализация Полная виртуализация Выполнение в пользовательском пространствеЯдро как библиотека Ядро как драйвер ядраРазбиение ядра на разделы с применением гипервизора
Linuxchroot LXC Virtio, Hyper-V (только гость), Xen (только гость), (только гость), lguest KVM UML (LKL)(coLinux )Нет
Ядро DragonFly BSDchrootjail НетНетvkernel??Нет
Ядро FreeBSDchrootjail Virtio, Xen (только для гостей)BHyVe (KVM)???Нет
Ядро NetBSDchroot(sysjail (прекращено)НетVirtio и XenНет?Ядро Rump ?Нет
Ядро SolarischrootКонтейнеры / зоны Solaris НетНетНет??Нет
Ядро Windows NTКонтейнеры приложений, объекты заданий, контейнеры Windows ServerHyper-VProject Drawbridge НетVirtual Secure Mode, Device Guard, Credential Guard
XNUchroot???????Нет
Поддержка сервера в ядре
Имя ядраHTTP FTP NFS CIFS Сервер имен Транспорт- балансировщик нагрузки уровняУровень приложения балансировщик нагрузки9P TLS проксиWAF сервер Memcached
ядро ​​Linux (веб-сервер TUX патч)(веб-сервер TUX патч)knfsd(CIFSD доступно)?IP Virtual Server ()(доступен патч )SOL_TLS(Tempesta FW)( kmemcached)
Ядро DragonFly BSD НетНетДаДа???НетНет??
Ядро FreeBSD НетНетДаНетНетДаНетНетНет??
Ядро Solaris ??ДаДа?ДаДа?KSSL ??
Ядро Windows NT HTTP.sys??Да?ДаДаНет???
XNU НетНетДаНетНетНетНетНетНет??
Поддержка двоичного формата

Сравнение поддержки ОС для различных двоичных форматов (исполняемых файлов ):

Имя ядраa.out ECOFF ELF FDPIC. ELF. двоичные файлы. (меньше ммю)плоские. двоичные файлы. (superH)HUNK Mach-O Разное. (на основе оболочки.,. как. интерпретаторы)PE SOM. (PA-RISC,. HP-UX)NLM PEF DOS COM MZ LE LX NE
Amiga Exec НетНетДаНетНетДаНетНетНетНет???????
Ядро DragonFly BSD НетНетДаНетНетНетНетНетНетНетНетНетНетНетНетНетНет
Ядро HP-UX НетНетДаНетНетНетНетНетНетДаНетНет?????
Ядро Linux ДаДаДаДаДаНетНетДаНекотороеДа?Нет?????
Ядро MINIX 3 НекотороеНетДаНетНетНетНетНетНетНетНетНет?????
Ядро NetBSD ДаДаДа???Да?Да????????
Ядро ReactOS ????????Да????????
Ядро Solaris ДаНетДаНетНетНетНетНетНекоторыеНет???????
Ядро Windows NT НетНетДа с WSL НетНетНетНетНетДаНетНетНетДа на x86Да на x86??Да на x86
XNU НетНетНетНетНетНетДаНетНетНетНетНетНетНетНетНетНет
Поддержка файловой системы

Физические файловые системы :

ЯдроAcorn ADFS Amiga FFS BeFS BFS cramfs EFS ext2 ext3 ext4 F2FS FAT HFS HFS + HP FS ISO 9660 JFFS JFFS2 JFS MINIX fs NSS NTFS OCFS QNX4 FS UDF UFS XFS ZFS ReiserFS Reiser4 Btrfs HAMMER Tux3 exFAT ReFS
Ядро DragonFly BSD НетНетНетНетНетНетДаНетНетНетДаНетНетНетНетДаНетНетНетНетНетограниченная записьНетНетНеттолько чтениеДаНетНетНетНетНетДаНетНетНет
Ядро FreeBSD НетНетНетНетНетНетДаДаНетНетДаНетНетНетНетДаНетНетНетНетНетограниченная записьНетНетНетДаДачтение толькоДатолько чтениеНетНетНетНет?Нет
Ядро Linux Да.Датолько чтениеДаДатолько чтениеДаДаДаДаДатолько чтениеДаограниченная запись ( только с пустым журналом)ДаДаДаДаДаДаДаДа. (Полная чтение / запись с дополнительным драйвером пользовательского пространства)ДаДа..поддержка записи?ДаДа.Даи FUSE, и роднойДаДаДаНетДаДаНет
Ядро MINIX 3 НетНетНетНетНетНетДаНетНетНетИнструменты доступны, установка невозможнаНетНетНетНетДаНетНетНетДаНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНет
Ядро NetWare НетНетНетНетНетНетНетНетНетНетДаНетНетНетНетДаНетНетНетНетДаНетНетНетНетДаНетНетНетНетНетНетНетНет?Нет
Ядро ReactOS НетНетНетНетНетНетДа.Да.Да.НетДа.НетНетНетНетДа.НетНетНетНетНетТолько чтениеНетНетНетДа.НетНетНетНетНетДа.НетНетНетНет
Ядро Solaris ??????Да???Да????Да????НетНет???ДаДа?ДаНетНетНетНетНет?Нет
Ядро Windows NT ??????Да.Да.Да.НетДа?Да.Да.НетДа????НетДа???Да??НетНетНетДа.НетНетДаДа
XNU НетНетНетНетНетНетДа.Да.НетНетДаНетДаДаНетДаНетНетНетНетНетТолько для чтенияНетНетНетДаДаНетТолько чтениеНетНетНетНетНетДаНет
Поддержка сетевой файловой системы
Имя ядраNFS AFS CIFS Coda 9P Ceph
Ядро DragonFly BSD ДаНетДаНетНетНет
Ядро FreeBSD ДаДаДаДаНетДа
Ядро Linux ДаДаДаДаДаДа
Ядро Solaris ДаДаДаНетНетНет
Ядро Windows NT Да sДаДаНетНетНет
XNU ДаДаДаНетНетНет
Поддерживаемые наборы команд ЦП и микроархитектуры
ядро ​​ HP Softbank / ARM Holdings Intel Tallwood MIPS IBM Renesas Electronics Oracle NXP Analog Devices Xilinx Cadence Canon / Axis Comm. Socionext Microchip /. Atmel CML /Intel / Altera WDC Mellanox TI
VAX Alpha PA-RISC ARM x86 i960 IA-64 MIPS

.

PowerPC S / 390 z / Arch H8300 M16C M32R 78K V850 SuperH

.

SPARC m68k Blackfin (no-mmu)MicroBlaze Xtensa ETRAX CRIS FR-V MN10300 AVR32 E1 (no-mmu)Nios (no-mmu)Nios II WDC 65C816 S + ядро TileraC6X
mmuno-mmux86x86-64mmuno-mmu32-битный64-битный tmmuno-mmu32-бит64-битno-mmummuno-mmummuno-mmummuno-mmu
Ядро DragonFly BSD НетНетНетНетНетНетДаНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНет
FreeBSD ядро НетНетНетДа?ДаДа?ДаДаНетДаДаНетНет?????НетНетНетДа?НетНет????????????????
Ядро Linux НетДаДаДаДаДаДаНетДаДа?ДаДаДаДаДаНетТолько 4,16 и нижеНетТолько 2,6 и нижеДаДаДаДаДаДаДаТолько для 4.16 и нижеДаДаДаТолько 4,16 и нижеТолько 4,16 и ниже только4,16 и ниже толькоТолько 4.12 и нижеНетНетДаДаНетТолько 4.16 и нижеТолько 4.16 и нижеДа
Ядро MINIX 3 ?НетНетДа?ДаВ процессеНетНетВ процессе?НетНетНетНетНет?Нет?НетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНет
Ядро NetBSD ДаДаДаДаNoДаДа?ДаДаNoДаНетНетНет?????ДаNoДаДаNoДаNo????????????????
Ядро NetWare НетНетНетНетНетДаНет?НетНетНетНетНетНетНет?????НетНетНетНетНетНетНет????????????????
Ядро OpenBSD НетДаДаДа?ДаДа?НетДа?ДаНетНетНет?????Да?ДаДа?ДаДа????????????????
Ядро Rockbox ???Да?????Да????Нет?????Да????Да?????????????????
Ядро Solaris НетНетНетНетНетДаДа?НетНетНетНетНетНетНет?????НетНетДаДа?НетНет????????????????
Ядро Windows NT НетNT Только 5.0 RC1 и нижеНетДаНетДаДаНети 2003 - 2008 R2 толькоNT 4.0 и ниже толькоНетNT 3.51 и Только NT 4.0 НетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНет
Ядро Windows CE НетНетНетДа?Да?НетНетДа?НетНетНетНетНет?Нет?НетДа?НетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНетНет
XNU НетНетНетДа?ДаДа?НетНетНетДаДаНетНет?????НетНетНетНетНетНетНет????????????????
СПАРТАНСКОЕ ядро ​​ ?НетНетДа?ДаДа?ДаДа?ДаНетНетНет?????НетНетДаДа?НетНет????????????????
Ядро FreeRTOS ????Да??????Да??НетДа??ДаДа?Да?????ДаДа?????Да???Да????
Поддерживаемые процессоры GPU
Имя ядраIntelNVIDIAAMDARMQualcomm Imagination Technologies Broadcom VeriSilicon
Intel HD / Iris Graphics GeForce / Quadro / TeslaRadeonMaliAdrenoPowerVRVideoCore4Vivante
Ядро Linux ДаДаДаДаДаТолько 2DДаEtnaviv
Ядро Windows NT ДаДаДа????
XNU через I / O Kit (только macOS )НетНетчерез I / O Kit (только iOS )НетНет
Поддерживаемая среда выполнения ядра
Имя ядраLinux Darwin Windows NT FreeBSD NetBSD Solaris OSF / 1 Amiga Unix SunOS BSD / OS Системы IBCS2IRIX Ultrix NDISSVR4
Ядро FreeBSD ДаНетНетДаНетНетНетНетНетНетНетНетНетДаДа
Ядро Linux ДаНет(Longene )ДаДаНетНетНетНетНетНетНетНетНетНет
Ядро NetBSD ДаНет? [3] ?Нет? [4 ] ?ДаДаДаДаДаДаДаДаДаДаДа [5] Да
Ядро OpenBSD ДаНетНетДаДаДаНетНетДа????НетДа
Ядро Windows NT НетНетДаНетНетНетНетНетНетНетНетНетНетНетНет
Ядро ReactOS НетНетДаНетНетНетНетНетНетНетНетНетНетНетНет
XNU НетДаНетНетНетНетНетНетНетНетНетНетНетНетНет
Имя ядраLinux Дарвин Windows NT FreeBSD NetBSD Solaris OSF / 1 Amiga Unix SunOS BSD / OS Системы IBCS2IRIX Ultrix NDISSVR4
Поддерживаемые алгоритмы шифрования

Это может быть использовано в некоторых ситуациях, например, при шифровании файловой системы.

Имя ядра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
DragonFly Ядро BSDДаДаДаДаДаДаДаНетДаНетНетНетДаНетНетНетДаДаНетНетНетНет
Ядро FreeBSDДаДаДаДаНетНетДаНетДаНетНетНетДаНетНетДаДаДаНетНетНетНет
LinuxДаДаДаДаДаДаДаНетНетНетНетДаНетДаДаДаДаДаДаДаДаДа
Ядро Windows NTДаДаДаДаНетНетНетНетНетДаНетНетНетНетНетНетДаНетНетНетНетНет
Ядро MacOS XNUДаДаДа???Да??ДаДа????YesYes?????
Kernel nameDES AES Blowfish Triple DES Serpent Twofish CAST-128 DES-X IDEA RC2 RC5 SEED Skipjack TEA XTEA CAST-256 RC4 Camellia Anubis KHAZAD Salsa20
Supported compression algorithms

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

Kernel nameDeflate zlib LZO LZJB gzip
LinuxYesYesYesNoYes
Solaris kernel???YesYes
Supported message digest algorithms
Kernel nameCRC-32 (IEEE) CRC32c MD2 MD4 MD5 SHA-1 SHA-2 SHA-3 Poly1305 RIPEMD-128 RIPEMD-160 RIPEMD-256 RIPEMD-320 Tiger Whirlpool HMAC MDC2 GOST VMAC
LinuxYesYesNoYesYesYesYesPartialYesYesYesYesYesYesYesYesYesNoNoNoYes
Solaris kernelYesYesYesYesYesYesYes????Yes??Yes?YesYes???
Windows NT kernel??YesYesYesYesYes?No?NoNoNoNoNoNoYesNoNoNo?
FreeBSD kernelYesYes?YesYesYesYes????Yes??Yes?Yes????
XNU kernelYes?Yes?YesYes???????????????
Kernel nameCRC-32 (IEEE) CRC32c MD2 MD4 MD5 SHA-1 SHA-2 SHA-3 Poly1305 RIPEMD-128 RIPEMD-160 RIPEMD-256 RIPEMD-320 Tiger Whirlpool HMAC MDC2 GOST VMAC
Supported Bluetooth protocols
Kernel nameACLSCOLMPHCIL2CAPBNEPRFComm.SDPTCPAVTCPAVDTPOBEXCMTPHIDPHCRPCAPIPPP
FreeBSD kernel???YesYes?YesYes???No?????
Linux?Yes?YesYesYesYes?????YesYes???
macOS XNU Kernel????Yes?YesY es???No?????
Kernel nameACLSCOLMPHCIL2CAPBNEPRFComm.SDPTCPAVTCPAVDTPOBEXCMTPHIDPHCRPCAPIPPP
See also
Footnotes
Последняя правка сделана 2021-05-15 08:04:39
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте