linux和unix有什么区别?

Linux的灵感来自Unix,但Linux并不是Unix,尽管它绝对像Unix。我们将解释这两个著名操作系统之间的主要区别。...

Linux的灵感来自Unix,但Linux并不是Unix,尽管它绝对像Unix。我们将解释这两个著名操作系统之间的主要区别。

相同的区别?

Linux是一个免费的开源操作系统。Unix是一种商业产品,由许多供应商提供,每个供应商都有自己的变体,通常专用于自己的硬件。这是昂贵的和封闭的来源。但是Linux和Unix用相同的方式做着或多或少相同的事情,对吗?或多或少,是的。

微妙之处稍微复杂一些。除了技术和体系结构之外,还有一些不同之处。要了解影响Unix和Linux的一些因素,我们需要了解它们的背景知识。

unix的起源

Unix已经有50多年的历史了。它是由数字设备公司(DEC)汇编语言在DEC PDP/7上开发的,是贝尔实验室的一个非官方项目,当时归at&T所有。它很快被移植到DEC PDP/11/20计算机上,然后在贝尔的其他计算机上稳步推广。C编程语言的重写导致了1973年的Unix版本4。这一点非常重要,因为C语言和编译器的特性意味着现在将Unix移植到新的计算机体系结构相对容易。

1973年,kenthompson和dennisritchie在一次会议上发表了一篇关于Unix的论文。结果,对Unix副本的请求涌入了Bell。因为销售操作系统超出了AT&T允许的业务范围,所以他们不能将Unix视为一种产品。这导致Unix被作为源代码分发并获得许可证。名义上的成本足以支付运费和包装费以及“合理的版税”。Unix“原样”出现,没有技术支持,也没有bug修复。但是你得到了源代码,你可以修改它。

Unix在学术机构中迅速普及。1975年,肯汤普森在加州大学伯克利分校(universityofcalifornia,Berkeley)的贝尔大学(Bell)休假。他和一些研究生一起,开始添加和改进Unix的本地副本。外界对伯克利软件的兴趣与日俱增,这导致了伯克利软件发行版(Berkeley Software Distribution,BSD)的首次发布。这是可以添加到现有Unix系统中的程序和系统修改的集合,但它不是一个独立的操作系统。BSD的后续版本是整个Unix系统。

现在有两种主要的Unix风格,AT&T流和BSD流。所有其他Unix变体(如AIX、HP-UX和Oracle Solaris)都是这些变体的后代。1984年,美国电话电报公司(AT&T)的一些限制被解除,他们能够生产和销售Unix。

Unix随后商业化。

linux的起源

把Unix的商业化看作是对计算机用户自由的进一步侵蚀,richardstallman着手创建一个基于自由的操作系统。也就是说,修改源代码、重新发布软件修改版本以及以用户认为合适的任何方式使用软件的自由。

操作系统将复制Unix的功能,而不包括任何Unix源代码。他将操作系统命名为GNU,并于1983年创建了GNU项目来开发操作系统。1985年,他成立了自由软件基金会来促进、资助和支持GNU项目。

除了内核之外,GNU操作系统的所有领域都取得了良好的进展。GNU项目开发人员正在开发一个名为gnuhurd的微内核,但进展缓慢。(它目前仍在开发中,即将发布。)没有内核,就没有操作系统。

1987年,Andrew S.Tanebaum发布了一个名为MINIX(miniunix)的操作系统,作为学习操作系统设计的学生的教具。MINIX是一个功能性的、类似Unix的操作系统,但它有一些限制,特别是在文件系统方面。毕竟,源代码必须足够小,以确保它在一个大学学期内得到充分覆盖。必须牺牲一些功能。

为了更好地理解英特尔80386在他的新电脑中的内部工作原理,一个叫Linus Torvalds的计算机科学学生写了一些简单的任务转换代码作为学习练习。最终,这段代码成为一个基本的原型内核,成为第一个Linux内核。托瓦尔兹对米尼克斯很熟悉。事实上,他的第一个内核是在MINIX上使用richardstallman的GCC编译器开发的。

Torvalds决定**自己的操作系统,以克服专为MINIX设计的系统的局限性。1991年,他在MINIX Usenet组上发表了著名的声明,征求对他的项目的意见和建议。

Linux并不是真正的Unix克隆。如果Linux是Unix的克隆,那么它就是Unix。它不是,它就像Unix。“克隆”一词意味着原始细胞的一小部分被培养成一个新的细胞,一个细胞一个细胞复制原始细胞。Linux是重新创建的,具有Unix的外观和感觉,并满足同样的需求。它不是克隆,而是复制品。

但不管怎样,Linux是一个寻找操作系统的内核;GNU是一个寻找内核的操作系统。事后看来,接下来发生的事情似乎不可避免。它也改变了世界。

相关:大辩论:是Linux还是GNU/Linux?

谁负责开发?

Linux发行版是许多不同部分的总和,来自许多不同的地方。Linux内核、核心实用程序的GNU套件和用户应用程序结合在一起,形成了一个可行的发行版。有人必须这样做,结合,维护和管理就像有人必须开发内核,应用程序和核心实用程序。发行版的维护者和每个发行版的社区,都像内核开发人员一样,在使Linux发行版充满活力方面发挥着自己的作用。

Linux是由无偿志愿者、Canonical和Red Hat等组织以及行业赞助的个人进行分布式协作的结果。

每个商业Unix都是作为一个统一的实体开发的,使用内部或严格控制的外包开发设施。通常,它们有一个独特的内核,专门为每个供应商提供的硬件平台而设计。

BSD Unix流的免费和开源的派生版本,如FreeBSD、OpenBSD和DragonBSD,使用了遗留BSD代码和新代码的组合。它们现在是社区支持的项目,管理起来很像Linux发行版。

标准和合规性

一般来说,Linux既不符合单一Unix规范(SUS),也不符合POSIX。它试图满足这两个标准,而不是成为它们的奴隶。从字面上看,有一两个例外,比如Inspur K-UX,一种符合POSIX的中文Linux。

与商业产品一样,真正的Unix也是兼容的。一些BSD衍生产品,包括除一个版本外的所有macOS,都符合POSIX标准。变体名称(如AIX、HP-UX和Solaris)都是各自组织持有的商标。

商标和版权

Linux是Linus Torvalds的注册商标。Linux基金会代表他管理商标。Linux内核和核心实用程序是在各种GNU“copyleft”通用公共许可证下发布的。源代码是免费提供的。

Unix是Open Group的注册商标。它是受版权保护的、专有的和封闭源代码的。

FreeBSD受FreeBSD项目的版权保护,并且源代码可用。

使用上的差异

从用户体验的角度来看,在命令行中没有太多明显的区别。由于POSIX标准和法规遵从性,在Unix上编写的软件可以为Linux操作系统编译,只需进行有限的移植工作。例如,Shell脚本可以直接在Linux上使用,在许多情况下,修改很少或没有。

一些命令行实用程序的命令行选项略有不同,但在两种平台上基本上都有相同的工具库。事实上,IBM的AIX有一个用于Linux应用程序的AIX工具箱。这允许系统管理员安装数百个GNU包(如Bash、GCC等)。

不同的Unix风格有不同的图形用户界面(GUI),Linux也是如此。熟悉GNOME或Mate的Linux用户在第一次遇到KDE或Xfce时必须有自己的感觉,但他们很快就会明白这一点。它与Unix上可用的gui类似,比如Motif、公共桌面环境和xwindows系统。它们都非常相似,任何熟悉窗口环境(带有对话框、菜单和图标)概念的人都可以浏览。

在管理系统时,您将了解更多关于这些差异的信息。例如,有不同的初始化机制。systemv Unix和BSD流的派生版本具有不同的init系统。免费的BSD变体维护BSD init方案。默认情况下,Linux发行版将使用从unixsystemv或systemd派生的init系统。

相关报道:为什么Linux的systemd在这么多年后仍然存在分歧

手动换档与自动换档

如果你能开一辆,你就可以开另一辆,即使一开始有点停。

抛开价格不谈,在理念、许可、开发模式、社区组织以及治理类型和风格上的差异比命令行标志(比如说grep的一个版本和另一个版本)的差异更大、更显著。

最大的不同不是你在屏幕上看到的。

  • 发表于 2021-04-02 00:07
  • 阅读 ( 89 )
  • 分类:互联网

你可能感兴趣的文章

unix与linux的区别及其重要性

... 什么是unix系统(unix)? ...

  • 发布于 2021-03-19 10:38
  • 阅读 ( 272 )

bash、zsh和其他linux shell之间有什么区别?

...替代品,还有其他的贝壳,比如ash、dash、fish和tcsh。但有什么区别,为什么会有这么多? 贝壳做什么? 在Linux上,当您在命令行登录或启动终端窗口时,系统将启动shell程序。shell提供了扩展命令行环境的标准方法。如果愿意...

  • 发布于 2021-04-08 06:16
  • 阅读 ( 277 )

linux和bsd有什么区别?

...-这些操作系统有更多的共同点,而不是他们的差异。为什么它们都存在? 这里有很多不同之处,尤其是关于如何构建操作系统并授予许可证的哲学上的不同。不过,这应该有助于您了解基础知识。 基础知识 大多数人所说的“...

  • 发布于 2021-04-09 05:00
  • 阅读 ( 195 )

gnu公司(gnu)和unix系统(unix)的区别

...,但其他操作系统也占了更大的使用份额。无论我们使用什么操作系统,最终的功能都是一样的,即使用计算机使我们的任务更容易。在我们开始讨论GNU和Unix之间的区别之前,让我们用外行的术语来学习与任何操作系统相关的...

  • 发布于 2021-06-25 00:53
  • 阅读 ( 442 )

ibm公司(ibm)和上海合作组织(sco)的区别

...史中,关于谁拥有UNIX的法律主张和争议层出不穷。   什么是ibm公司(ibm)? IBM,国际商业机器的缩写,是一个全球性的信息技术和咨询组织,总部设在纽约阿蒙克。IBM的历史始于一些小公司,这些小公司成长起来,形成了计算...

  • 发布于 2021-06-26 05:16
  • 阅读 ( 275 )

内核(kernel)和壳(shell)的区别

...,而Shell是处理用户请求的实用程序。 覆盖的关键领域 1.什么是内核-定义,用法2.什么是Shell-定义,用法3.内核和Shell的区别-关键区别的比较 关键术语 内核、Shell、操作系统、Unix 什么是内核(kernel)? 内核是操作系统的核心。内...

  • 发布于 2021-06-30 19:32
  • 阅读 ( 623 )

格雷普(grep)和unix中的find命令(find command in unix)的区别

...grep和find是两个重要的命令实用程序。 覆盖的关键领域 1.什么是grep–定义,示例2.什么是find–定义,示例3.grep和find命令在UNIX中的区别是什么–主要区别比较 关键术语 grep,查找,UNIX 什么是格雷普(grep)? grep命令允许用户扫描...

  • 发布于 2021-06-30 20:03
  • 阅读 ( 207 )

塞德(sed)和啊(awk)的区别

...。这些命令有助于过滤和文本转换。 覆盖的关键领域 1.什么是sed–定义,示例2.什么是awk–定义,示例3.sed和awk之间的区别是什么–关键区别的比较 关键术语 sed,awk,操作系统 什么是塞德(sed)? sed命令允许修改和过滤文本文件...

  • 发布于 2021-06-30 20:18
  • 阅读 ( 231 )

linux操作系统(linux)和乌班图(ubuntu)的区别

...各种Linux发行版,其中之一就是Ubuntu。 覆盖的关键领域 1.什么是Linux–定义,功能2.什么是Ubuntu–定义,功能3.Linux和Ubuntu的相似之处–概述共同的功能4.Linux和Ubuntu的区别–主要区别的比较 关键术语 Linux、Ubuntu、操作系统 什么是...

  • 发布于 2021-06-30 20:23
  • 阅读 ( 527 )

gnu公司(gnu)和linux操作系统(linux)的区别

...件。Linux是GNU软件和Linux内核的结合。 覆盖的关键领域 1.什么是GNU–定义,特性2.什么是Linux–定义,特性3.GNU和Linux的区别是什么–主要区别的比较 关键术语 GNU,Linux,Linux内核,Unix 什么是gnu公司(gnu)? GNU是GNU'snotunix的缩写。...

  • 发布于 2021-07-01 12:12
  • 阅读 ( 544 )
铭爱噢
铭爱噢

0 篇文章

相关推荐