Linux 是否使用原始 Unix 代码或者他们是否共享这个想法?

Linux 是否使用原始 Unix 代码或者他们是否共享这个想法?

Linux 内核使用原始 Unix 代码还是共享这个想法?既然两者都是用 C 编写的,这是真的吗?

答案1

在这种情况下,它有助于更​​准确地定义 Unix。在这个回复中我将专门讨论 AT&T 的 unix。

Linux 是 Unix 的克隆,不共享任何实际代码。这就是 Linux 能够在 GPL 下获得许可的原因因此自由软件。如果它继承了代码,那么它将由它所使用的代码的创建者拥有,并且不能像今天一样在 GPL 下自由修改和使用。

如果它没有如此广泛地普及,它所取得的成功很可能会更加有限。有几个相互竞争的自由软件 unix,例如后来出现的 FreeBSD,尽管采用了非常不同的许可方案,但实际上确实共享代码。不幸的是,许可历史太多,无法在这里正确涵盖。

答案2

Linux内核很大程度上是基于原始Unix内核来考虑的。 Linus Torvalds 从头开始​​编写了大部分 Linux 内核代码。请参阅此页面了解更多信息:https://www.kernel.org/linux.html

PS:在我看来,这根本不是一个愚蠢的问题。

答案3

Linux 不使用任何原始代码。这来自 AT&T 的原始 Unix 代码有时可以免费提供给某些群体,但从未免费重新分发。

大多数商业 Unix 系统都获得了 AT&T 的许可,并对 AT&T 代码库进行了自己的修改并出售。

在 20 世纪 80 年代,伯克利大学的一个小组自行发行了附加的 Unix 软件,这些软件可以自由地重新发行和修改。他们逐渐重写了 Unix 的组件,直到 20 世纪 90 年代初,他们有了自己的 Unix 变体,不受 AT&T 专有代码的阻碍。这被称为伯克利软件发行版 (BSD),其中现在有几个变体(FreeBSD、OpenBSD 和 NetBSD 是主要的 3 个;Mac OS X 部分基于 FreeBSD)。

大致在同一时间范围内,GNU 项目为一些 Unix 实用程序开发了他们自己的可自由重新分发和可修改的替代品。当Linux启动时,GNU项目缺乏内核; Linux 内核、GNU 实用程序和其他实用程序的组合迅速传播开来。这种组合称为 Linux 发行版,简称 Linux。 Linux 不包含任何原始 Unix 代码;与 BSD 一样,它是同一设计的独立重新实现。

Unix 的其他独立重新实现包括现已消亡的开放空间/1以及迷你X用于教学和嵌入式设备的变体。

答案4

Linux 内核并不是以任何其他 UNIX 代码作为基础开始的。然而,在 SCO 诉 IBM 诉讼期间,事实表明:Linux 包含一些来自基于 BSD 的 UNIX 操作系统(称为 Dynix)的代码。可能还有其他情况,公司贡献了他们最初为专有 UNIX 编写的代码。

相关内容