Answers:
这是一个很难回答的问题。
第一个“ Unix Like”或“ * nix”通常表示POSIX。您列出的所有系统都是POSIX系统。POSIX是要实施的一组标准。
现在来回答更难的问题。
GNU并不是真正的操作系统。它更多是支配自由软件的一组规则或理念,同时在尝试创建OS时催生了许多工具。因此,GNU工具基本上是已经存在但已重做以符合开放软件原理的工具的开放版本。GNU / Linux是由那些工具和Linux内核组成的一个网格,以构成一个完整的OS,但是还有其他“ GNU”。例如,GNU / Hurd。
Unix和BSD是POSIX的“较旧”实现,属于各种级别的“封闭源”。Unix通常是完全封闭的源代码,但是Unix的版本与Linux一样多,甚至更多。有些人通常不认为BSD是“开放的”,但实际上,它比任何其他存在的东西都开放得多。它的许可还允许用于商业用途,其限制要少得多,因为允许使用更多的“开放”许可。
Linux是新来者。严格来说,它只是“一个内核”,但是,通常,与GNU工具和许多其他东西结合使用时,它被视为完整的操作系统。
主要的管理差异是理想。Unix,Linux和BSD具有不同的实现目标。它们都是POSIX,并且基本上都可以互换。他们确实以不同的方式解决了一些相同的问题。因此,除了理想及其选择实现POSIX标准的方式之外,没有什么区别。
有关更多信息,我建议您阅读有关创建GNU,OSS,Linux,BSD和UNIX的简短文章。他们会倾向于他们的个人想法,但是当您通读时,您会很好地了解它们之间的区别。
此Unix族谱图清楚地显示了Unix,BSD,GNU和Linux的历史(来自Wikimedia):
man unimplemented
(IIRC,可能是man security
)。
Linux不是操作系统,而是内核。Linux本身没有“用户区”环境(没有应用程序,命令,...等)。
如果要拥有完整的操作系统,则必须在内核中添加一个用户域。从历史上看,对于Linux,它是GNU。所有(?)Linux发行版都不是“真正的Linux”发行版。它们是GNU / Linux(GNU + Linux)发行版。
BSD是一个“类unix”的完整操作系统,它具有自己的内核和自己的用户区(没有linux内核也没有GNU)。
GNU / Linux和* BSD系列(FreeBSD,OpenBSD和NetBSD)是“类unix”操作系统,它们的行为类似于Unix。
这是(GNU)/ Linux和* BSD之间的比较:http : //www.freebsd.org/doc/en/articles/explaining-bsd/comparing-bsd-and-linux.html