Unix,Linux,Ubuntu和Debian之间是什么关系?
我怀疑它们都是相互依赖的操作系统-类似于Windows基于DOS的方式。我的怀疑正确吗?这些操作系统之间是否具有与Windows在DOS下相同的关系类型?它们是否以任何方式与DOS或Windows相关?
Geek trivia: Windows 98 is the last version based on MS‑DOS.
Unix,Linux,Ubuntu和Debian之间是什么关系?
我怀疑它们都是相互依赖的操作系统-类似于Windows基于DOS的方式。我的怀疑正确吗?这些操作系统之间是否具有与Windows在DOS下相同的关系类型?它们是否以任何方式与DOS或Windows相关?
Geek trivia: Windows 98 is the last version based on MS‑DOS.
Answers:
Unix是一个始于1969年的操作系统。它最初被设计为开发人员平台,而不是应用程序平台,但是,随着开发的进行和不同厂商的参与,Unix被添加进来。
Unix最初是用汇编语言编写的,但后来发展为C。
与其他内核相比,Linux内核类似于Unix。
Linux是类Unix的内核。它最初是由Linus Torvalds在1990年代开发的。自由软件运动在最初的软件版本中使用了此内核,以编译新的操作系统。内核负责管理系统资源并将其分配给应用程序。
请注意,尽管许多版本都被称为“ Linux”,但这是一个特定方面,它与文本编辑器,编译器,调试器等一起构成操作系统,而不是操作系统本身。
Debian是1990年代初发布的该操作系统的形式之一,也是当今可用的许多Linux版本中最流行的形式之一。
Ubuntu是2004年发布的另一个操作系统,它基于Debian操作系统。它非常受欢迎,因为它易于学习,无需使用终端。
阅读:Linux内核
阅读Debian
阅读Ubuntu
阅读:Unix
如果您真的有兴趣了解所有这些背后的历史,那么我推荐一部名为Revolution OS的电影,它讲述了这种自由软件运动发展背后的许多历史。
您还需要了解一件事:GNU。
GNU代表“ GNU的非Unix”,它是一种尝试创建由自由软件基金会开发的免费,独立版本的Unix。
他们走得很远,他们制作了一个C编译器,一个C库,一个链接器,编辑器,shell,以及在典型的Unix shell中期望的所有命令,其中包括很多东西。但是内核(称为“ Hurd”)尚未完成。内核之外的所有事物(作为用户拥有的进程运行)一起被称为“用户区”。
当Linus Torvalds创建他的Linux内核时,他没有创建用户区。他只有一个内核,也不是一个完整的系统。事实证明,可以编译他的内核并在GNU用户领域内使用它(这可能并不简单,但我当时不在那儿,也不知道)。
OS人通常称为“ Linux”,实际上是从具有GNU用户域的Linux内核开始的,此后又添加了许多其他内容。自由软件基金会一直坚持认为,因此应将其称为GNU / Linux。
Debian是Linux的“发行版”。他们辛苦地编译了整个Linux系统所需的所有各种工具,进行了编译,并以一堆软盘的形式提供了下载。或CD,稍后再说。其他人也这样做,例如Slackware,Red Hat等。
后来创建了许多其他发行版,通常不是从头开始,而是以现有发行版为起点,并向其中添加额外的软件,或者以不同的方式组织它,等等。Ubuntu以这种方式基于Debian。
“ Unix ”最初是1970年代在贝尔实验室开发的PDP-11操作系统的名称。它的设计具有巨大的影响力,并且被复制并重新实现了数十次。
如今,“ Unix”是整个操作系统家族的统称,其中一些(但不是全部)直接源自该原始操作系统;任何其主要系统编程接口与POSIX.1 API规范兼容的东西都可以合法地称为Unix的实现-并且有数十种。列出不是Unix实现的今天仍在广泛使用的操作系统会更容易:
(遗憾的是,还有许多实验研究原型正在尝试超越 Unix设计,但它们不符合“广泛使用”的条件。)
“ Linux ”是Unix的一种实现的通用名称。自1990年代以来一直存在,并且是当今最常用的五个实现之一-可能是#1或#2,具体取决于您如何计算这些东西。
Linux的与众不同之处在于,内核,C库,编译器和基本的“ shell”实用程序集等等都是由不同的人群开发的;此外,对于大多数作品来说,还有多种选择。有人必须挑选一套并将它们放在一起,并确保它们可以组合使用。传统上将某人(如今通常是一群人)称为Linux 的分发者,而他们的输出就是分发。 Debian和Ubuntu是Linux的发行版。它们曾经非常紧密地联系在一起,但此后又有很大的分歧。
(技术上,Linux的名字专指内核,它会是一个有点怪异调用操作系统的Linux,如果你不使用的内核,但都是人们保持一切,换出的内核,比如Debian的kFreeBSD。)
(针对脚步者的脚注:本文中所有细微的区别都是100%故意的。)
UNIX和Linux与DOS或Windows不相关。
DOS是在70年代末/ 80年代初流行的8位CP / M操作系统的产物。
Windows NT(基于XP,Vista,7和8的Windows NT)是Microsoft于1993年开始开发的,它借鉴了VAX VMS的许多概念。Windows NT被开发为一种“真正的”现代,可抢占,多用户,多任务的安全操作系统。
Windows 3.1、95、98和ME几乎是Microsoft的多任务(不是多用户或安全)DOS的想法/执行。
关于UNIX,Linux等:
UNIX是自70年代以来一直存在的内核/ API /操作系统。
内核为程序提供了运行平台,在Unix中,它允许多个程序在单台计算机上运行,并且多个用户可以访问它。内核不运行任何程序,这些程序必须单独开发和提供。
API是程序与内核进行通讯的标准方式。它是内核的一部分。
操作系统是一个内核以及用于管理和管理系统的通用实用程序。对于UNIX应用程序的通用程序包括管理服务和登录(基本程序init
),一个壳,让你输入命令(sh
,bash
),以及基本的文件管理命令,如cp
,ls
,mv
,等。
Linux是在GPL下发布的类UNIX内核,起初可在PC硬件上运行,但现在几乎可以在任何带有CPU的系统上运行(如果允许运行它)。
GPL是一种许可证,该许可证规定任何修改/增强Linux并发布其修改的人都必须将这些修改发布给公众,并允许其他人这样做。
Linux实现了UNIX API,因此,如果重新编译UNIX程序,它们通常可以在不修改的情况下运行(这比从头开始重写它们要容易得多)-由于它们使用UNIX API,因此它们不在乎是否真的在与Linux或UNIX通信或其他的东西,只要API做同样的事情。
Debian是Linux发行版。它始于1993年,是最古老的发行版之一。Linux发行版通常提供:
.deb
)软件包的存储库
因此,您可以安装发行版,启动并运行基本的Linux环境,然后在需要软件时使用软件包管理器从发行版的存储库中调用软件包。它与Windows不同,Windows传统上是将软件分发到CD上,并且版本和更新之间的间隔逐年增加。存储库中的软件通常会经常更新,并且程序包管理器负责下载和应用任何更新。
Debian也严格只发布开源软件,这意味着需要专有软件才能运行的事物(例如现代视频卡或Wi-Fi芯片组)在Debian“开箱即用”的情况下无法(或根本无法)发挥最佳作用。
Ubuntu是Debian的“分支”
Debian允许其他人使用其包管理工具基于它创建发行版。这样做称为“分叉”。
除了Ubuntu的特定品牌和外观,Ubuntu添加了其他Ubuntu特定的存储库,其中包含更多和更新的软件。与Debian相比,Ubuntu更为“鲜血”-从非技术或非UNIX专家的角度来看,Ubuntu的创建更加友好和有用。这是有关开箱即用的新功能和硬件的全部内容。
大多数可以在Debian上运行的软件都可以在Ubuntu上运行。由于Debian的软件通常较旧,因此另一种方法可能会出现问题。您可能会遇到一些需要更新才能运行Ubuntu东西的基本组件,但由于Debian仓库中没有较新的版本而无法更新。您可以手动更新这些,但是随后可能需要更新其他组件,等等。
应该注意的是,如今Debian比以前更加友好并且了解现代硬件。
“ Unix”是受1960年代老式操作系统“ Multics”启发的操作系统的商标。“ Unix”是一个文字游戏,旨在暗示它就像Multics,但并不那么复杂。(个人说明:在1980年代末,我从事的不是 Unix类型的Multics商业化后代。)Unix的开发始于1969年的DEC PDP-7,并于1970年转为PDP-11。 1972年,用C重写了它;至此,它已经用汇编语言编写了。(DEC汇编语言相对来说对程序员友好,但仍然是汇编语言。)它仍然是Bell Labs通过1979年发布的“版本7”研究项目。
大约在1977年,开发了另一个分支:“ BSD”(伯克利软件发行公司)。AT&T于1982年获得了其分支机构“ System III”的商业版许可,然后在1983年获得了“ System V”的许可。然后,AT&T与伯克利之间进行了一系列法律斗争,这对双方都造成了伤害,直到诉讼最终得以解决。
在某种程度上,为了响应有关System V和BSD的战斗,开始了两个新项目:Minix(由Andrew Tanenbaum设计,使用微内核设计复制了现有Unix系列内核的关键功能)和GNU项目(复制了大多数现有Unix的重要非内核部分),它们都具有全新的代码,避免了System V和BSD之间的法律麻烦。标准化工作试图解决两个主要部门之间的差异。主要结果是POSIX。
1991年,受Minix,较旧的Unix分支以及GNU内核缺乏进展的启发,Linus Torvalds创建了Linux。它也是所有新代码,并返回到旧的Unix类型的内核,而不是Minix类型的微内核。
1997年,苹果公司接管了基于BSD的Nextstep,并最终将其开发为新的Mac操作系统,并使其适用于其他Apple设备。
Linux存在于各种发行版中,这些发行版包括Linux内核和各种实用程序。Debian是Linux的一个发行版,它已分支到一系列发行版中。Ubuntu是Debian家族的一部分,而它又分支到发行版家族中。
Windows和DOS的历史非常不同。大约在1963年,DEC建造了PDP-6,其操作系统为Monitor。当他们构建PDP-10时,他们将操作系统命名为“ TOPS-10”。Gary Kildall为英特尔8080系列计算机编写了一个操作系统,并将其命名为“ CP / M”。它的灵感来自TOPS-10。CP / M启发了Tim Paterson(使用Microsoft的“独立磁盘BASIC-86” 8位FAT文件系统)为8086系列计算机编写的“ 86-DOS”,因为CP / M-86是CP的8086系列的后续产品/ M,已延迟。
IBM希望为其第一台8088机器获得CP / M-86的许可,但是交易存在问题。IBM听说过86-DOS,并要求Microsoft为他们提供。微软对其进行了许可(后来又购买了),并以“ PC-DOS”的形式将其许可给IBM,并以“ MS-DOS”的形式许可给了他人。
一段时间后,受Visi On(又受Xerox Star的启发,后者被人们称为Apple的Lisa和Macintosh的灵感)的启发,Microsoft开发了Windows作为MS-DOS的附件。早期版本不是很成功,但是最终Windows 3.0足以取得商业上的成功。几个更高的版本(3.1、3.11、95、98和ME)都在DOS上运行,但是Microsoft意识到DOS在Windows上阻碍了进度。接近尾声时,Windows的大部分分支都是32位的,但它仍依赖于16位DOS。
为了克服DOS的局限性,Microsoft与IBM合作开发了OS / 2,这意味着“ DOS比DOS更好,Windows比Windows更好”。但是,最初的版本并不太好,最终IBM和Microsoft终止了联合开发。IBM接管了该产品,并最终制作出了不错的OS / 2。
同时,DEC创建了VAX系列计算机来替代其PDP-11系列,并在其上运行VMS操作系统。它与TOPS-10操作系统共享一些历史记录,但是它们并不相互兼容。
为了避免OS / 2出现问题的可能性,Microsoft聘请了一些顶级VMS开发人员(和一些微内核研究人员)从头开始构建新的32位Windows。从深处看,它类似于VMS最佳功能的微内核改编。最重要的是,它看起来像Windows。32位Windows的第一个版本是“ Windows NT 3.1”,然后是Windows NT 3.5、3.51和4.0,然后是Windows 2000(不带“ NT”),XP(第一个64位Windows),Vista,7 ,8和8.1。
DEC是那些将那些几乎没有关联的开发路径联系在一起的有趣线程。Unix的许多早期历史与DEC PDP-7,PDP-11和VAX有关。DEC PDP-6和PDP-10启发了DOS的一些历史。DEC的VAX-VMS团队的资深成员构建了Windows NT系列的核心。
我怀疑它们都是操作系统
它们是或曾经都是操作系统。如今,Unix是商标,而不是操作系统。
可能是基于彼此的
无论如何,这是事实。后一组基本上是基于对来自Unix的许多想法的重新实现。Linux中没有Unix代码(尽管这是长期诉讼的主题,最终导致失败)。
类似于Windows基于DOS的方式。
我怀疑Windows 8中没有任何PC-DOS代码,甚至可能出于兼容性目的。从DOS到Windows 8都有明显的进步。Unix和Linux并非如此。
这是同一种关系吗?
并非完全如此,Unix和Linux的所有权和开发显然是分开的。
Linux是最初由Linus Torvalds完全开发的操作系统内核。它原本的目的类似于Unix,并从Unix汲取了很多想法。Torvalds并非以任何Unix代码作为基础。
为了使操作系统可用,您尤其要在Linux内核中添加由FSF独立开发的一组“ GNU”工具。如今,您还添加了一个或多个竞争子系统(例如Gnome或KDE桌面管理器)。这些中的每一个都称为“分布”。
有许多这样的分布,每个分布都有自己特定的功能选择。
一些分布实质上是其他分布的修改形式。通常,一个分布称为上游分布。下游发行版的发行在很大程度上取决于上游发行版的新发行。
Ubuntu是Debian的下游发行版。Ubuntu在其中增加了很多价值(与其他一些诸如CentOS和RedHat之类的关系相比)
Linux本身仅仅是内核。
您可以将Linux内核与Windows内核进行比较。
最大的区别是,Linux使用纯单片内核,而Windows使用混合内核。
但是它们都是内核,普通人不能只用内核做事,因为内核的目的不是使我们用户能够使用功能,而是解决提供我们对功能的访问所必需的任务。
Debian和Ubuntu是发行版。发行版是在内核中运行的所有事物。而且由于内核不能做任何事情,因此您需要一些基本的应用程序才能使Linux成为完整的操作系统。因此,发行版提供的一些基本需求是:
这些都不是必需的,但是需要具有Windows或MAC OS提供的“通用”操作系统的全部功能。
Debian也是发行版的先驱之一。这是许多发行版所依赖/开发的发行版。例如Ubuntu。
现在,为什么有那么多人使用Ubuntu而不是Debian?
因为Debian附带的预装软件越少越好,但运行完整OS所需的数量却尽可能多。(这种情况不带GUI,因为它主要在服务器上使用)。结果是,操作系统非常稳定且稳定。
现在,“大多数”人将需要一个GUI,并且可能想在PC和笔记本电脑上听音乐,访问Internet等。使用Debian,如果不花时间安装GUI,服务器驱动程序并进行配置,那是行不通的。这就是Ubuntu的用武之地。Ubuntu提供了Deiban提供的所有稳定性,并增加了日常家庭使用所需的许多功能。
Windows没有这些动态。但是,仍然有每个人都使用的Windows版本和服务器版本。它并不像Linux风格那样多样化。但是对于现有的客户和应用程序领域仍然是一个很大的定制。
DOS和Linux终端都在内核上执行。但是它们也可以在OS中“模拟”。在OS中,这些仿真器除了将命令传递给内核外什么也不做。然后,内核转储由仿真器获取并在终端中打印的信息。
PS:我有意说完整的操作系统需要GUI,而Debian是更容易理解的祖先。我知道这些州在技术上并不完全正确。只是一点信息,可防止在阅读本文时使铁杆书呆子旋转得太快:)
Unix是一类操作系统,它们都基于相同的理论并且都非常相似,以至于大多数人无法区分。历史有点令人费解,涉及Berkley(BSD)和AT&T(SysV)以及一个称为POSIX的标准。
Linux是Unix的一种,尽管纯粹主义者会告诉您Linux只是“内核”的最底层部分。其余的OS由GNU软件协会和其他地方的Unix兼容工具组成。在一起,就构成了GNU / Unix。
Debian是Linux的一般发行版。每个发行版都有其自己的软件包管理工具,一组预安装的默认软件包,并且在预安装哪些服务以及使用哪些配置文件等方面可能有所不同。
Ubuntu基于Debian。他们采用了最新的稳定版Debian,并添加了自己的桌面应用程序,软件管理工具和其他东西,使其与众不同。Linux还有许多其他发行版。尽管也有基于Slackware和Gentoo的系统,但大多数都基于Debian或Redhat。这4个基础中的每个基础都是由其他发行版建立的。例如,我现在正在运行Elementary OS,它是基于Ubuntu的,而Ubuntu是基于Debian的,Debian是Linux的一种版本,具有Unix的风味。得到它了?
Mac OS / X与Unix相似,它使用不同的内核(Mach),该内核也与Unix兼容,并且与该软件包之上的一组软件包兼容(主要)与Unix的BSD风格兼容。由于Mac的BSD兼容性,很容易将许多软件从Linux移植到Mac。但是,它们使用基于显示PDF和其他添加项的GUI来更改OS的上层。整个东西最初是由NeXT Step创建的,Apple买下了它并进行了翻新。它属于Unix系列。
Android使用Linux内核,但是其余的操作系统是自己设计的,因此,尽管最低级别的操作系统是基于Unix的,但其余的并不是,并且它通常不被视为Unix风格,尽管有些人认为它具有Linux风格。感到困惑了吗?Android不符合POSIX标准。
DOS / Windows完全不同。MS-DOS最初是从8080到8086的CP / M端口(8080是8位CPU,.COM文件是CP / M的8位可执行文件)。微软没有编写它,而是购买了它,然后将其许可给了IBM及其竞争对手。Windows最初是从旧的Apple API合法地盗窃而来,这就是为什么它使用Pascal调用约定。Windows 95和Windows Me以及其他一些内部仍在某些情况下使用DOS(对此有诉讼)。Windows的较新版本基于IBM为OS / 2共同编写的Win32 API。微软终止了与OS / 2的交易,并随身携带了代码。Windows NT内核通常用于运行根本不使用DOS的Win32 API,而Microsoft实际上是从Unix借来的。
UNIX是60年代和70年代创建的操作系统。电脑很贵,而UNIX很贵。那不是问题。那时只有大公司,大学和政府拥有计算机,他们才有钱。
它是如此昂贵,Linus Torvalds的创建一种替代方案:Linux的,它代表L
inux的I
小号N
OT U
妮X
。他希望它是开放和免费的。UNIX受版权保护,因此他重写了所有必要的代码(在许多帮助下),并要求所有代码必须使用特殊许可才能免费。由于它便宜很多,因此许多人开始使用它。它比UNIX便宜,很快有了更多的用户,并在更多的服务器上使用。由于它比Windows更便宜,更快,因此它也更受廉价Web服务器的欢迎。
主要有两个发行版:Debian / Ubuntu和Redhat / Centos。除此之外,还有其他一些分布,但是这些分布具有主要的市场份额。
Debian主要用作服务器OS。
Ubuntu是在此基础上创建的,但随后考虑了普通用户-那些不知道如何使用终端的用户,那些只希望简单工作的用户。
Redhat和Centos都是服务器系统,例如Debian。它们都具有台式机版本(也包括debian),但是不如Ubuntu也好用,后者也具有服务器系统,并且变得越来越流行。Redhat是大公司的首选操作系统,因为它们提供支持合同-价格昂贵,但对某些人来说不是问题。