{eval=Array;=+count(Array);}

问答专栏Q & A COLUMN

LINUX系统和UNIX系统有什么区别和联系呢?

luoyibuluoyibu 回答0 收藏1
收藏问题

10条回答

JessYanCoding

JessYanCoding

回答于2022-06-28 10:16

    目前,主流的服务器端操作系统:

  • UNIX诞生于20世纪60年代末;

  • Windows诞生于20世纪80年代中期;

  • Linux诞生于20世纪90年代。

    可以说,UNIX是操作系统的“老大哥”,windws、linux都参考了UNIX,后来的android,苹果的IOS与UNIX也有一定的渊源。

    UNIX的诞生

    1969年,贝尔实验室的研究员肯•汤普森,编写了一款计算机游戏Space Travel,先后在多个系统上运行,然而效果不理想,所以决定自己开发操作系统,就这样UNIX诞生了。

    自1970之后,UNIX系统在贝尔实验室流行开来。1972年,肯•汤普森和同时丹尼斯•里奇发明了传说中的C语言,宣告了操作系统的开发,不再是汇编语言主宰,为可移植性打下了基础。紧接着,TCP/IP协议发明了,至此UNIX系统、C语言、TCP/IP协议,在操作系统、编程语言、网路协议方面的影响至今。下图就是肯•汤普森和丹尼斯•里奇两位传奇人物。

    随后,出现了各种不同版本的UNIX系统,比如Sun Solaris、Free BSD、IBM AIX、HP-UX等等。


    Linux系统的诞生

1991年,李纳斯•托瓦兹大学读书时,为了个人爱好编写了Linux,相当于迷你版的UNIX,当时仅有10000行代码。随后,李纳斯•托瓦兹公开了Linux远吗,邀请他人一块完善Linux。现在,只有2%的Linux核心代码是有李纳斯•托瓦兹编写的。

    Linux和UNIX的亲密关系

    Linux和Unix有很多共通之处,如果熟练掌握了Linux,那么上手UNIX就会简单一些。

    Linux是一个类似UNIX的操作系统,Linux的初衷就是为了代替UNIX,并在功能上和用户体验上有所优化,所以Linux模仿了UNIX,然而并没有抄袭UNIX的源码,只是交互上类似UNIX。


    系统结构上,UNIX和Linux都分为三层:系统内核、中间Shell层、高层应用层,如下图所示。


    Linxu和UNIX的区别

    UNXI系统大多与硬件配套,比如大多数的UNXI系统AIX、HP-UX是无法去安装到x86服务器和个人计算机的,而Linux可以安装多多种硬件平台,比如x86、arm、mips等等。

    UNIX是商业软件,而Linux是开源、免费的,公开源代码。


如果觉得对你有帮助,可以多多点赞哦,也可以随手点个关注哦,谢谢。

评论0 赞同0
  •  加载中...
yanbingyun1990

yanbingyun1990

回答于2022-06-28 10:16

不要说专业的程序员,就算是平常和计算机打交道的人们也很难不会不知道除了windows操作系统外还有其他的桌面操作系统,Linux和Unix系统就是其中的翘楚,那么他们之间是什么关系呢?

Linux就是Unix克隆(派生),它是由Linus Torvalds在全球一些黑客的帮助下从头开始编写的。Linux is a clone of the operating system Unix, written from scratch by Linus Torvalds with assistance from a loosely-knit team of hackers across the Net.

这段话来源于:Linux kernel 源代码顶层目录下的README文件, Linux kernel release 2.6.xx。相信大家对他们之间的关系不明觉厉了吧。

Linux就是Unix克隆,实际上在创建Linux之前和Windows兴起之前,计算世界由Unix和Unix操作系统家族主导。


什么是Unix?——大多数操作系统之母

Unix 操作系统的诞生:Unix诞生于1960年代后期。AT&T贝尔实验室的一个由肯·汤普森领导下小型程序员小组,发布了一个用C编写的操作系统被命名为Unix,那时的操作系统不是可移植的,使用低级源语言意味着为操作系统编写的硬件平台就是它所依赖的平台。但是使用C语言编写的Unix使得可以将其移植到其他硬件体系结构中,它可以更快地进行修改和移植。

Unix被认为是大多数操作系统的母亲,它具有以下特征:

  • 使用纯文本进行数据存储;
  • 分层文件系统;
  • 处理设备和某些特定类型的进程间通信(IPC)作为文件;
  • 使用大量的软件工具;
  • 可以通过命令行解释器使用管道将多个小型,简单和模块化的程序线程化在一起,而使用包含所有相同功能的单个整体程序则相反。

Unix Philosophy:Unix操作系统的可移植性(帮助Unix在其他研究,学术和商业环境中的快速采用)使某些操作系统的核心设计概念吸引了程序员和用户。Unix哲学是针对软件模块化设计,其思想是可以将小型的,专门构建的程序组合起来,以处理大型和复杂的任务。因为Unix是围绕管道和文件设计的,所以这种将程序的输入和输出“插入”到输入的直接操作集的方法今天仍然很流行。实际上,当前的云功能即服务(FaaS)/无服务器体系架构起源于Unix思维方式。

“尽管不能用一句话写下哲学,但其核心思想是系统的力量更多地来自程序之间的关系,而不是程序本身。许多Unix程序孤立地完成琐碎的事情,但与其他程序结合在一起,成为通用且有用的工具。”– Brian Kernighan和Rob Pike(开发Unix的主要贡献者)。

Unix体系结构:如果了解了Unix的架构,基本上可以说对所有的操作系统就都有了一个认知。

Unix的主控制程序是其内核。内核可以完全控制整个系统,是操作系统的心脏,并充当用户和硬件之间的接口。每个内核子系统都具有某些功能,例如并发,虚拟内存,分页和虚拟文件系。在体系结构的外层,具有“外壳”(shell)、命令和应用程序。Shell是用户和内核之间的接口。Shell和用户键入命令,解释这些命令并相应地调用计算机程序。

Unix的历史:由于肯·汤普森于1970年代开始在伯克利大学“休假”,许多Unix的故事就从这里开始了,在伯克利期间汤普森继续Unix研究并发布了版本,从而创建了Berkeley Software Distribution,即BSD(最初,BSD并未想和AT&T Unix竞争)。1979年2BSD(第二个Berkeley软件发行版)问世时,Berkeley研究生Bill Bill Joy提供了更多程序,如vi和C shell(/bin/csh),商业化的Unix产品在1980年代和1990年代初变得很普遍。随着Unix家族树的不同分支的形成,随之而来的是“Unix战争”。。。可以关于Unix的战争可以说很久(现在的苹果MacOS操作系统是从BSD派生的),甚至可以拍一部“宫廷剧”(给美国短暂的历史增加一些戏码),但这超出了本文的范围(和篇幅),我就此打住,就知道版本多,主权复杂就好了。

Unix最主要的特点:Unix是一个多任务,多用户计算机操作系统家族,它可以用作工作站和服务器中的主控制程序。但是Unix并不是开源软件,这意味着任何想要使用它的人都需要向拥有它机构购买许可证。


什么是Linux?——开源软件之父

Linux操作系统的来源:Linux操作系统是1990年代开始的两个项目的结合。理查德·斯托曼希望建立一个免费和开源的Unix替代方案。他将程序命名为GNU,意思是“GNU不是Unix!”但项目进展很困难,由于没有内核支持,对自由和开源操作系统的任何希望都将落空。随后出现了赫尔辛基大学的Linus Torvald,他有一个名为Linux的可行内核,Linus使用了许多GNU工具,事实证明它们非常适合Linux内核。于是两个项目结合就诞生了Linux操作系统(Linux发行版)。Linux发行版中包含的大多数软件都是免费和开源的。

Linux内核是重写的:Linux内核代码是完全从头开始编写的。它的设计方式使其类似于Unix,但其中没有原始的Unix代码。它是Unix设计基础的延续。还值得注意的是,Linux只是内核,而不是完整的OS。该Linux内核通常打包在Linux发行版中,从而使其成为一个完整的OS。因此,Linux只是内核,Unix本身就是一个完整的OS。

基于Linux的OS体系结构:可以看出仍然有Unix的印记:

因此,通过向Linux发行版添加不同的应用程序,实际上可以使Linux内核完全可用作操作系统。现在总共大约有600个Linux发行版。Linux OS主要针对家用PC和笔记本电脑。但是,由于它的普及性和稳定性,它开始在办公室和高端系统中使用,包括手机、服务器、甚至是嵌入式系统现在最著名的移动智能操作系统Google的Android就是基于Linux的,Android OS的每个迭代都基于当前的Linux内核。

Linux是类Unix的操作系统:人们确实在Unix和Linux之间混淆了很多,他们通常会问诸如:Linux和Unix是同一回事吗?Linux是否建立在Unix上?这样的问题。这些所有的疑惑都是有答案的:Linux和Unix不同,但是它们确实有关系,因为Linux是从Unix克隆(派生)的。Linux不是Unix,而是类似Unix的操作系统。根据Linux内核官方README文件(见文章开头),它的目标是符合POSIX。

什么是类Unix的操作系统呢?以类似于Unix系统的方式工作,但不必符合单一Unix规范(SUS)或类似的POSIX(可移植)操作系统接口)标准。SUS是任何操作系统都必须满足的标准,才能使用Unix商标。该商标由“The Open Group”授予。

开源软件:Linux的开发是由世界各地的开发人员团体免费提供的(Linux内核由社区开发,Linus Torvalds负责监督事务),Linux OS是一个开源OS,其源代码是免费提供的。任何人可以在计算机上阅读、修改和实现它。但是,不能出售它,因为它受GNU GPL许可。Linux的开发是自由和开源软件协作的最杰出例子之一。开源理念就此兴起,开始了自有开源的时代。


Unix与Linux有何区别

操作系统是非常复杂的系统工程,Unix和Linux操作系统的区别可以写一本小书。通过表格的方式简单看一下:

Linux的局限性

  • 没有标准版的Linux
  • Linux对驱动程序的支持不完整,这可能导致整个系统无法正常运行。
  • 至少对于新用户而言,Linux不如Windows易于使用。
  • 我们用于Windows的许多程序只有在复杂的仿真器的帮助下才能在Linux上运行。例如。微软办公软件。
  • Linux最适合企业用户。在家庭环境中引入它要困难得多。

Unix的局限性

  • 不友好,简洁,不一致且非助记符的用户界面
  • Unix OS是为慢速计算机系统而设计的,因此您不能期望获得快速的性能。
  • Shell界面可能是危险的,因为键入错误会破坏文件。
  • 各种计算机上的版本略有不同,因此缺乏一致性。
  • Unix不提供任何有保证的硬件中断响应时间,因此它不支持实时响应时间系统。

从用户的角度来看,Linux和Unix之间并没有很多明显的区别。Linux的许多吸引力来自于以下事实:它可以在不同的体系结构类型(包括现代PC)上工作,并且它的工具为Unix用户和系统管理员所熟悉。

Linux和Unix之间的其他差异主要与许可有关。Linux vs Unix主要是免费 vs 许可软件的较量。除此之外,Unix发行版缺少通用内核这一事实也影响到软件和硬件供应商。使用Linux,供应商可以合理地期望它可以在大多数发行版中正常运行,从而为特定的硬件设备创建设备驱动程序。但是由于Unix具有商业和学术分支机构,因此可能有必要针对所有Unix变体发布不同的驱动程序。还存在许可问题,以及与跨多个版本的Unix作为二进制设备驱动程序访问软件的SDK或分发模型有关的其他担忧。


写在最后

Unix和Linux都是伟大的操作系统,创造了人类计算机的历史。现在的操作系统中还有很多他们的印记。Unix很老,据说是所有操作系统的母亲,Linux内核也源自Unix,说明他们之间有着纠缠不清的关系。Linux OS非常适合中小型操作,如今,它还用于以前被认为是Unix唯一选择的大型企业。但是遗憾的是,由于各种原因,Unix和Linux的商业市场反应都不好。

反倒是后起之秀Windows和在Unix基础上发展而来的MacOS大出风头,倒是有些让人唏嘘。近年来Linux借助Google的Android在移动市场倒是火热起来,总算让人有了些安慰。


以上是我的浅薄之见,欢迎指正,谢谢!

评论0 赞同0
  •  加载中...
shengguo

shengguo

回答于2022-06-28 10:16

Linux和Unix,你看这两哥们儿长得还挺像的,倒是没有直接的血缘关系,不过Linux作为一个奔放的后生,确实借鉴了前辈Unix的很多优点,总的来说Unix、Linux的诞生都是操作系统历史上比较有标志性和革命性的事件。

不得不多带带说一下Unix,不仅仅是改变了操作系统行业

macOS、iOS、Linux、Windows,C语言、Emacs、Vim、GCC等众多经典软件,很大程度上都是因为Unix的诞生直接催生的。贝尔实验室、MIT、通用电气联合开发Multics操作系统,不过当时这个工程追求的目标太强大了,导致了这项工程太复杂,最终这个项目也没能做成功。

神奇的事情总是伴随着一些奇妙的事情,这些奇妙的事情往往都伴随着一些伟大的技术革命,Google、Facebook、Amazon AWS、ucloud云、QQ等等,都符合这个规律。Unix也是因为奇妙的事情诞生的,Unix之父肯汤普森是初代“网瘾少年”,工作期间沉迷于计算机游戏无法自拔,人家自己写了一个叫做Space Travel的游戏,这款游戏模拟的是太阳系天体运动,玩家驾驶飞船,观赏景色和模拟在行星和月亮上登陆,不过他把这个在多个系统上运行实验,不过运行效果很差,实在忍不了了,肯汤普森就干脆自己写个操作系统,这就是大名鼎鼎的Unix操作系统。

作为这个行业的祖师爷,自然也有一群出色的祖师爷同事。肯汤普森有个同事,也就是另一位祖师爷丹尼斯里奇发明了C语言,Unix尽管在贝尔实验室内部流行起来了。后来Unix就用C语言重写,这次重写真正改变了操作系统领域的发展线路,C语言重写之后的Unix,具有非常好的可移植性,把操作系统发展推向了一个新的高度,操作系统不再是汇编语言主导,对硬件依赖性进一步降低。

Unix和C语言相辅相成、是一对技术孪生兄弟,双剑合璧奠定了整个计算机行业的软件工程体系。Unix和C语言的诞生,本质上不仅仅是变革了计算机操作系统行业,甚至可以说Unix真正改变了整个计算机工业界,奠定了整个计算机行业最初的模板和行业基础,这让之后的互联网、计算机软件、甚至计算机硬件的发展起到了关键的推进作用。

Linux和Unix的区别与联系

林纳斯大学的时候用Unix教学版Minix,他觉得这个非常难用,可是没办法啊,市场上也没有更好的系统可以使用,于是林纳斯就结合Unix的设计理念自己写了一个操作系统,第一个版本在91年9月的时候发布,当时只有10000行代码。不过林纳斯不属于企业啊,那时候他就是个学生,也不像两位祖师爷都是有单位的,于是他就把Linux源代码放出来,还主动邀请大家一起来完善Linux。现在只有2%Linux核心代码是林纳斯写的,不过他依然拥有对Linux内核最核心部分的所有权,依然保留着对Linux发展的最终决定权。

Linux的很多理念都是根据Unix来的,Unix大多数版本都是商业版本。现在具备纯正Unix血统的发行版中,也只有FreeBSD等少数发行版是免费的;Linux则刚好相反,大多数Linux发行版都是免费开源的,只有RedHat等少数发行版是付费的。Unix能做的,基本上Linux也都能做,几乎所有软件应用也都是能够互通的,Linux本质上是类Unix系统,所以并不是Unix分支,只是模仿了Unix的操作系统而已,两者在接口上也是兼容的。

Linux主要应用领域是PC和嵌入式,Android最初也是基于Linux发展起来的,一些小企业的服务器以及现在互联网行业服务器用Linux也比较多,Unix依然垄断着大型企业的关键性应用领域,全球最基础的技术服务都是跑在Unix上的。当年FreeBSD因为和AT&的版权纠纷耽误了,现在这个问题解决了,具备纯正Unix血统的FreeBSD开始逐渐复苏,苹果的macOS、iOS,Windows都采用了很多FreeBSD的技术,全球最大的即时通讯工具WhatsApp也运行在FreeBSD服务器上,FreeBSD的强大让WhatsApp公司仅仅用50名工程师就服务了9亿用户。

Linux和Unix都是操作系统领域的革命性产品,两者没有直接的关系,但又息息相关,两个操作系统基本上变革了计算机行业的技术革命。Unix和C语言是整个现代计算机工业的基础,在互联网时代Linux和Unix作为服务器,又是整个行业最重要的基础设施。

评论0 赞同0
  •  加载中...
mrcode

mrcode

回答于2022-06-28 10:16

什么是UNIX?

UNIX OS诞生于1960年代后期。AT&T贝尔实验室发布了一个用C编写的名为Unix的操作系统,它可以更快地进行修改,接受和移植。

它最初是在贝尔实验室的肯·汤普森(Ken Thompson)的领导下进行的单人项目。后来它成为使用最广泛的操作系统。Unix是专有操作系统。

Unix OS在CLI(命令行界面)上运行,但是最近,Unix系统上的GUI有了发展。Unix是一种在公司,大学,大企业等中流行的操作系统。

什么是LINUX?

Linux是1991年由赫尔辛基大学的Linus Torvalds构建的操作系统。“ Linux”的名称来自Linux内核。它是计算机上的软件,使应用程序和用户可以访问计算机上的设备以执行某些特定功能。

Linux操作系统中继来自计算机处理器的应用程序的指令,并将结果通过Linux操作系统发送回应用程序。它可以安装在其他类型的计算机,手机,平板电脑视频游戏机等上。

Linux的开发是自由和开源软件协作的最杰出例子之一。今天,许多公司和类似数量的个人已经发布了他们自己的基于Linux内核的OS版本。

Unix OS的功能

  • 多用户,多任务操作系统
  • 它可以用作工作站和服务器中的主控制程序。
  • 数以百计的商业应用程序可用
  • 在其鼎盛时期,UNIX被迅速采用并成为大学中的标准操作系统。

Linux操作系统的功能

  • 支持多任务
  • 程序包含一个或多个进程,每个进程具有一个或多个线程
  • 它可以轻松地与其他操作系统共存。
  • 它可以运行多个用户程序
  • 个人帐户受到适当授权的保护
  • Linux是UNIX的副本,但不使用其代码。

Linux的局限性

  • 没有标准版的Linux
  • Linux对驱动程序的支持不完整,这可能导致整个系统无法正常运行。
  • 至少对于新用户而言,Linux不如Windows易于使用。
  • 我们用于Windows的许多程序只有在复杂的仿真器的帮助下才能在Linux上运行。例如。微软办公软件。
  • Linux最适合企业用户。在家庭环境中引入它要困难得多。

Unix的局限性

  • 不友好,简洁,不一致且非助记符的用户界面
  • Unix OS是为慢速计算机系统而设计的,因此不能期望获得快速的性能。
  • Shell界面可能是危险的,因为键入错误会破坏文件。
  • 各种计算机上的版本略有不同,因此缺乏一致性。
  • Unix不提供任何有保证的硬件中断响应时间,因此它不支持实时响应时间系统。

总结

Linux源代码可供公众使用,而在Unix中,源代码是专有的。UNIX OS是在1960年代后期由AT&T贝尔实验室创建的,而Linux是1991年由赫尔辛基大学的Linus Torvalds构建的操作系统。Linux的默认shell是BASH,而Unix的shell是Bourne Shell。Linux威胁检测和解决方案非常快速,而Unix用户需要更长的等待时间才能获得正确的错误修复补丁。Linux的重要版本是Redhat,Ubuntu,OpenSuse,Solaris,而Unix的重要版本是HP-UX,AIS,BSD等。

评论0 赞同0
  •  加载中...
Prasanta

Prasanta

回答于2022-06-28 10:16

根据我自己这2天的学习和了解,Linux系统其实就是Unix系统的一个参考借鉴开源版,也就是计算机领域专业人士熟称的“类Unix操作系统”,它们在内核层方面确实存在一定得差异性。

从它们的发展角度来讲,Linux操作系统之所以能够出现主要是因为Unix系统的闭源间接导致。当然,这种局面的产生离不开一名伟大的程序员理查德·斯托曼,他希望互联网中的用户和开发者让软件有真正的自由度,而他得GNU计划也间接孵化出很多优秀软件,比如Linux内核等。

一.在小型计算机上开发并投入运行的Unix系统,最终让相关商业机构在利益的驱使下打破了开源的氛围,让其很快走向“闭源”。

最早的Unix系统雏形是在1970年问世,它由肯·汤普森(Ken Thompson)和丹尼斯·里奇(Dennis Ritchie)在贝尔实验室中开发的一款分时系统,并于1973年使用更高级的C语言进行了重新编写,让其系统有更高的可靠性,且增强在众多电子设备中的可移植性。

Unix操作系统之所以能被出现,主要是因为当时的贝尔实验室、MIT和美国通用电气公司觉得早期计算机个头大、内部运行电子元件数量较多,使用起来不仅不方便还很费电。而且,早期的计算机系统一次只能做一件事情,Unix系统的出现让这三家合作方看到了计算机能够实现多用户多任务操作的目的。这在当时引起了很多人的注意,尤其是在美国加州的伯克利大学分校有很多从事开源软件的程序员,他们曾多次向肯·汤普森丹尼斯·里奇借鉴Unix系统源码进行深入研究,这极大推进了Unix的发展进程。

时间到了1983年,贝尔实验室的母公司AT&T发布了Unix最新版System V,从此Unix只能进行商业使用,不再对外开放最新版本的源码。由于Unix早期开源的版本较多流入到伯克利分校,它为了避免因更多的版权问题和AT&T打官司,终究推出完全属于自己的Unix版本,也就是我们现在计算机行业都熟知的“类Unix系统”。随着互联网商业化进程的到来,Unix系统已经完全闭源和商业化,程序员们只有依靠更多的开源软件才能在计算机领域的世界里增加活力。

二.闭源的Unix系统促使开源的Linux系统诞生,它意味着全世界会有更多的程序开源贡献者和使用者,让软件更加自由。

有人曾问:“Linux操作系统是Unix系统的包装升级版吗?”我现在只能回答:并不是。因为Linux系统的内核层一直是对外开放的,而Unix 系统的内核层现在是封闭的,这是它们之间最本质的区别

1983927日,美国的职业黑客理查德·马修·斯托曼教授公开发起了著名的GNU计划,此计划的目标是创建完全自由的操作系统。直到1990年,斯托曼教授通过GNU计划

开发出了很多知名软件,比如文字编辑器Emacs、C语言编译器GCC以及大部分UNIX系统的程序库和工具。

而这个自由的系统内核,最终还是在1991年依靠林纳斯·本纳第克特·托瓦兹(Linus Benedict Torvalds)完成,也就是我们现在国内IT行业很多运维人员熟知的Linux。而Linux系统的初级完整版,应该是从1992年开始算起,此时Linux已经与其它GNU软件进行了很好的融合,让参与此开源项目的很多开发者能够更好的使用Linux操作系统。我们现在简单的Linux叫法其实并不准确,Linux操作系统其实完整正确的叫法应该是GNU/Linux

回到现在来看,很多Linux工程师都认为自己的工作是拜林纳斯·本纳第克特·托瓦兹所赐予。但我现在认为理查德·马修·斯托曼才是Linux系统的最大贡献者,因为此人一生致力于推广自由软件并促进用户自由发展。最直接的证明就是,Linux通过GPL公共许可证的开源协议让其FreeBSD(类Unix改进版)等闭源项目被淘汰,使Linux系统的开源软件项目变得越来越多,让当时有些对Linux项目感兴趣的国际老牌企业也无法对其产品进行闭源,这也导致后面有更多的程序员在GNU项目中开发自己的开源软件。

结语:

关于Linux与Unix之间的关系和区别,从自己之前学习和了解的信息来看,Unix操作系统确实是现在很多PC端操作系统的借鉴模版,不过由于它的商业化闭源导致后面出现了很多类Unix系统,比如内核层不一样的GNU/Linux。

作为曾经一名热爱编程的程序员,我在这里确实需要向理查德·马修·斯托曼教授致敬,正是他一生致力于软件的自由(真的不为钱),才会让GNU/Linux操作系统被更多优秀的程序员参与进来,让软件的世界变得生机勃勃不再死寂。

本文参考资料:

可在今日头条APP搜索“理查德·斯托曼”,即可获取相关内容。

评论0 赞同0
  •  加载中...
huangjinnan

huangjinnan

回答于2022-06-28 10:16

先有的Unix,然后有的Linux。Linux是基于Unix演变而来的,主要原因就是因为Unix不是开源的,需要收费!哈哈哈。。。苹果的Mac系统内核就是Unix,其他的例如redhat、centos、kali还有现在手机的Android等都是基于Linux开发的。

评论0 赞同0
  •  加载中...
_Zhao

_Zhao

回答于2022-06-28 10:16

Unix的历史久于Linux,Linux是从Unix发展而来的。Linux是开源软件,是免费、公开源代码的,而UNIX系统基本上需要有偿使用,Unix系统大多是与硬件配套的,如:AIX、HP-UX等是无法安装在x86服务器和个人计算机上的,而Linux可以运行在多种硬件平台上。

Unix的历史

Unix是一个强大的多用户、多任务操作系统,支持多种处理器架构,前身为1964年开始的Multics(一套分时多任务操作系统)。

Unix是1965年由贝尔实验室、通用电气和麻省理工学院联合发起,但因为开发速度太慢,1969年贝尔实验室退出了这个计划。此时,贝尔实验室的工程师肯·汤普逊和丹尼斯·里奇自行开发了Unix。

肯•汤普森当年写的一款计算机游戏 Space Travel(模拟太阳系天体运动,由玩家驾驶飞船尝试在各种行星上登陆)。他先后在多个系统上试验,但运行效果不理想。于是决定自己开发操作系统。就这样,UNIX诞生了。自1970年后,UNIX系统在贝尔实验室内部的程序员之间逐渐流行起来。

1971-1972年,丹尼斯•里奇发明了C语言,一种适合编写系统软件的高级语言,它的诞生是UNIX系统发展过程中的一个重要里程碑。在操作系统的开发中汇编语言不再是主宰。

1973年,UNIX系统绝大部分源代码都用C语言进行了重写,提高 UNIX 系统的可移植性(汇编语言,对硬件依赖性强)和软件的开发效率。

随后,Unix风靡于学术机构和大型企业,当时的UNIX拥有者AT&T公司以低廉甚至免费的许可将Unix源码授权给学术机构做研究或教学之用,许多机构在此源码基础上加以扩展和改进,形成了“Unix变种”,如:加州大学柏克莱分校开发的伯克利软件套件(BSD)产品。这些变种反过来也促进了Unix发展。

Unix因为其安全可靠,高效强大的特点在服务器领域得到了广泛的应用。直到GNU/Linux流行开始前,Unix是科学计算、大型机、超级计算机等所用主流操作系统。现在也仍然被应用于一些对稳定性要求极高的数据中心之上。

在20 世纪 70 年代初,计算机界还有一项伟大的发明—TCP/IP 协议,这是当年美国国防部接手 ARPAnet后所开发的网络协议。美国国防部把TCP/IP协议与UNIX系统、C语言捆绑在一起,由 AT&T 发行给美国各个大学非商业的许可证,这为 UNIX 系统、C语言、TCP/IP 协议的发展拉开了序幕,它们分别在操作系统、编程语言、网络协议这三个领域影响至今。肯•汤普森和丹尼斯•里奇因在计算机领域做出的杰出贡献,于 1983 年获得了计算机科学的最高奖(图灵奖)。

Linux的历史

Linux内核最初是由李纳斯•托瓦兹在赫尔辛基大学读书时出于个人爱好而编写的。当时他觉得教学用的迷你版UNIX操作系统Minix太难用了,并且只允许在教育上(不允许未授权被用作任何商业使用)。于是他决定自己开发一个操作系统。

Linux第1个版本在1991年9月发布,仅有10000行代码,并没有包括Unix源码,它是按照公开的POSIX标准重新编写的。Linux大量使用了由麻省剑桥免费软件基金的GNU软件,Linux也是用它们构造而成。

李纳斯•托瓦兹没有保留Linux源代码的版权,公开了代码,并邀请他人一起完善 Linux,任何人都可以免费使用它。据估计,现在Linux核心代码只有2%是由李纳斯•托瓦兹自己编写的,但他仍然拥有Linux内核,并且保留了选择新代码和需要合并的新方法的最终裁定权。

李纳斯•托瓦兹无疑是这个世界上最伟大的程序员之一。程序员交友社GitHub就是出自他。

如果说Multics现代操作系统的起源,那么Unix就是现代操作系统的鼻祖。

Linux在外观和交互上与 UNIX 非常类似,Linux 的初衷就是要替代 UNIX,并在功能和用户体验上进行优化,所以 Linux改进了UNIX(但并没有抄袭UNIX的源码)。

Linux已经从一个丑小鸭蜕变成了一个拥有庞大用户群的真正优秀的、值得信赖的操作系统。历史的车轮让Linux成为UNIX最优秀的传承者。


以上个人浅见,欢迎批评指正。喜欢的可以关注我,谢谢!

认同我的看法的请点个赞再走,再次感谢!

评论0 赞同0
  •  加载中...
mengera88

mengera88

回答于2022-06-28 10:16

Unix 很好用 很多人想用 但是太贵。

几个程序员就写了个类似的叫Linux 允许大家免费使用 并可以修改内容加入自己需要的东西 但是公开源代码 。 于是很多人拿来用用 觉得不错。开始个人用 后来有线公司也觉得不错 这个省事多了也拿来用了。

评论0 赞同0
  •  加载中...
seanlook

seanlook

回答于2022-06-28 10:16

现在的操作系统大体上都是归结到Unix以及最早到的MULTCS系统,本人不善言辞,便画下面这个图来说明


一、批处理系统

最开始的系统比现在单片机还low,真的是手工操作,纯手工敲击01二进制数输入进去运行,单一任务,完全独占,可以说没有操作系统。

慢慢的,随着输入方式改进,工程师将程序编成低带,一段程序就是一条纸带,“送进”去就ok了。

那么纸带就可以预先多弄几条,然后用电脑时一条条纸带(程序)连续往里送,这就提高了效率,其实就是简易批处理操作系统了,所以批处理,就是先准备一大堆,然后成批的处理即可。

后来存储技术、输入输出技术的发展,纸带变磁带等等存储方法,一次性可以处理的程序就可以更大、更多、更快了,管理批处理的事情也用手工送纸带变成“程序”送“程序”了,送程序的程序就是原始操作系统,即批处理操作系统了,典型代表DOS操作系统,被送的程序就是应用程序。

即使微软的win32、win95/98只不过他的程序支持图形界面/鼠标这些输入输出方式而已,他运行一个程序时另一个程序就得停止运行,所以本质仍然是批处理系统,运行WIN32仍然要先启动DOS,WIN95/98也是一样的,只是让用户看不到DOS启动界面而已(win95还是会一闪而过)。

此时Windows顶多算个批处理系统下的超级应用程序。

差不多这也是批处理系统的绝唱了。

二、多用户多任务系统

电脑运行速度加快,一台电脑主机又贵,当时又不可能人手一台,如果人人排队使用电脑就太浪费了,很自然的就有人想到一个主机可不可同时分配多个输入输出终端,让多个人同时使用不同的任务。

即多用户多任务系统。

老外当时雄心勃勃,想一步到位搞个完美的操作系统,即MULTCS操作系统,这是一个非常超前的系统,不过步子大了扯了蛋,因为太超前了,所以失败了。

但是,失败了也是有意义的,虽然失败了但培养了人才和积累了经验,计算机的好多大牛就产生于此。

期间刚好美国人登月成功,这激活了几个程序员想玩星际这款游戏的想法,从而搞了个简化版的系统,因为阉割了MULTTCS太多功能,被称为即太监版的MULTTCS。

这个玩游戏的太监MULTTCS虽然搞不成什么大事情但用于简单办公还是可以的,于是这个太监版系统开始在办公室内流行起来,这个就是大名鼎鼎的Unix原型。

三、C语言重写unix

最开始Unix是汇编写的,写起来很累,想将unix搬迁到其他电脑上会相当吃力,专业话讲就是可移植性差。

这位大牛于是发明了C语言,C语言有高级语言的超好移植性、又有比肩汇编语言的效率,于是成就了经典到不能再经典的语言了。

于是大牛又用C语言重写了Unix,这下爽翻天,由于当时还不知道unix会火,也没有版权意识,程序员们可以方便的得到unix的C语言源代码,并将unix移植到其他电脑中,包括一些小型机,unix和C语言都火了起来。

四、互相网、开源、类Unix的Linux

后来意识到这是个商机,想收版权,但为时已晚,源码早已流向社会,程序员们完全可以模仿unix的机制重写一个类似于unix的代码

这个就是类unix系统。

比如一个老师为了教学,仿unix写了minix系统。

类unix也就很多很多,但因为Unix前车之鉴都没完全开放,直到芬兰一个学生又参考minix写了Linux并将之搞成一个开源项目…于是一个可以抗衡Unix的、类似于unix的操作系统火了起来。

五、现代系统都是这Unix和类Linux的儿子,包括Windows

Unix的授权版本于是诞生了许多系统,微软也买了unix版权的,最著名的就苹果的ios,当然也有IBM、甲骨文等大企业。

linux的派生包括安桌、红帽子、乌班图、以及中国的红旗、深度等。

Windows最开始是基于DOS的批处理系统,如果一直用这个技术他迟早也会被LIUNX干翻,比尔也意识到这个问题,于是急切找了个在Unix和类Unix圈里的大牛来重写Windows。

这个大牛极度鄙视比尔视为亲儿子的Windows,一向高傲的比尔也是不敢多说,完全交他操刀重写。

之前Windows前面讲了都是基于DOS操作系统的一个外挂程序而已,但程序确实界面做得好,DOS比起Unix/Linux差了一个时代,不过用户界面都不友好,而Linux都是高级玩家不担心界面友好问题,但Windows要考虑市场占有率,大神模仿Unix系统同时还是得从最开始就要考虑用户界面、兼容旧版Windows程序的因素。

于是Windows的NT版诞生,这个是鸟枪换炮的跨代升级,当然最开始主打服务器市场,到了win2000最终普通用户版也升级到了NT版,这个才是Windows的真正的重生。

所以windows2000这才是划时代的操作系统。

六、后话

从上看到,操作系统要历史积累、技术积累、理想主义的刺激、用户数量…这些共同因素主导下才成功的,不是敲两下键盘振背一呼就出来了。

都想要要超越Windows,个人觉得连Linux都很难做到,如果要超个人觉得。

方法一,要技术上先进性,像当年Unix/Linux领先DOS一个时代一样,要内核技术上领先Windows一个时代,同时还要有友好的交互界面,否则人家凭什么放弃Windows选择你的系统。

方法二,技术上持平,但要重构用户生态就只能走免费开源的路线(如Linux),而且最好做到兼容Windows的应用程(如reatos),然后慢慢围杀Windows,就像安桌路线一样,但这个事情一般企业真做不了,而且一不小心又是版权问题,但这么艰难还是有人骂不是纯国产。

评论0 赞同0
  •  加载中...
PascalXie

PascalXie

回答于2022-06-28 10:16

Unix的发明者是肯•汤普森,发明于1969年,1970年起广泛运行在小型计算机上,逐步扩展到中大型计算机应用。Unix是传统商业软件,对代码、应用都得授权和收费。

而Linux的发明者是林纳斯·本纳第克特·托瓦兹,发明于1991年,它继承了Minix和Unix以网络为核心的思想,是一个基于GNU开源协议的多用户、多任务、多线程和多CPU的类Unix操作系统。最大的特点就是自由免费,内核开放给任何个人或者公司,可在GPL的允许范围之内对Linux的代码进行修改,并且进行再发行。Linux可以运用于任何的领域,包括商业应用。Linux对各种架构,各种命令的兼容性更好,学过Unix或Dos转用Linux都没问题。

记得我读书的时候有学Unix操作系统,但学艺不精,渐渐全还给老师了。开源免费的Linux内核也在全球开发者的帮助下,依然保持着版本更新。甚至连微软的Windows系统都借鉴了Unix,区别是微软强在图形化界面,操作更简单;而Unix和Linux更偏向于命令操控,操作稍显专业,是程序员最喜欢的操作系统。值得一提的是Linux发明者林纳斯•托瓦兹也创立了全世界最大的开源代码仓库及社区GitHub,已被微软收购。

鸿蒙操作系统微内核,分布式,也是基于开源Linux而来,兼容同用Linux内核的安卓应用也就不在话下。而MacOS的内核是基于Unix的NeXTSTEP和FreeBSD混合开发而成,是正统血脉的Unix分支操作系统。

打造纯国产的操作系统,也没啥必要,开源的Linux还是很香的。中标麒麟、银河麒麟、红旗等国产系统都是基于Linux深度开发。暂时我没用过这些,就不做评论,大名鼎鼎的乌班图Ubuntu倒是装过,还挺好用的。

以上回答期望能给读者朋友有一些帮助,我花了一些时间整理,能否关注、转发、收藏或点赞,支持一下呢?

极客纵观,科技生活,关注我共探科技真知!

评论0 赞同0
  •  加载中...

最新活动

您已邀请0人回答 查看邀请

我的邀请列表

  • 擅长该话题
  • 回答过该话题
  • 我关注的人
向帮助了您的网友说句感谢的话吧!
付费偷看金额在0.1-10元之间
<