今天 Unix 和 Linux 内核之间的主要区别是什么?

DCI*_*Dev 11 linux kernel linux-kernel

我知道许多相同的程序可以在两个内核上完美运行。我知道从历史上看,这两个内核来自不同的起源。我在哲学上也知道他们代表不同的事物。我的问题是,在 2011 年的今天,是什么让 Unix 内核与 Linux 内核不同,反之亦然?

jll*_*gre 17

没有名为“Unix 内核”的独特事物。原始 Unix 内核源代码主干有多个后代,它们在不同阶段从中分叉出分支,并根据自己的需要分别进化。

当今主流的操作系统存在于从 System V 源代码创建的操作系统中:AIX、HPUX、Solaris 或从 BSD 源代码、OpenBSD、FreeBSD 和 Mac OS/X 创建。

所有这些内核都有其特定的优点和缺点,就像 Linux 和其他“从头开始”的 Unix 类内核(minix、Gnu hurd 等)一样。

以下是可以观察到差异的区域的非详尽列表,没有特定的顺序:

  • CPU架构支持
  • 驱动程序的可用性
  • 支持的文件系统
  • 虚拟化能力
  • 调度功能,(交替调度类,实时,...)
  • 模块化
  • 可观察性
  • 可调性
  • 可靠性
  • 表现
  • 可扩展性
  • 版本间 API 稳定性
  • 开源/闭源,使用许可
  • 安全性(例如:特权粒度)
  • 内存管理