目前世界上有三大主流操作系统,Windows、Linux 和 Unix。安卓系统是基于 Linux的,苹果系统是基于 Unix的。全世界大部分的服务器运行着 Linux操作系统,其中 99%的超级计算机都是使用 Linux。但是 Linux系统又被称为类Unix系统,那么 Unix 和 Linux到底有什么区别和联系呢?
Unix 的起源
1969年,由 Ken Thompson 在 AT&T 贝尔实验室实现的,使用的是汇编语言。
1970年,Ken Thompson 和 Dennis Ritchie 使用 C语言对整个系统进行了再加工和编写,使得 Unix能够很容易的移植到其他硬件的计算机上
起初 AT&T 没有把 Unix作为正式商品,仅以分发许可证的方法,对 Unix收取很少的费用,就把 Unix的源代码散发到各个大学。由于 Unix收费低,很多厂商就选择了 Unix作为他们生产的计算机使用的操作系统
Unix 的两大分支
70年代中后期,在Unix发展到了版本6之后,AT&T 认识到了 Unix的价值,成立了 Unix系统实验室(Unix System Lab,USL)来继续发展Unix
而几乎同时,加州大学伯克利分校计算机系统研究小组(CSRG)也在对Unix进行研究,并做了大量改进工作,组成一个完整的 Unix系统 ── BSD Unix(Berkeley Software Distribution,伯克利软件套件),向外发行
BSD Unix有很大的影响力,例如美国国防部项目ARPANET(阿帕网),发展成为了Internet,在 BSD Unix中最先实现了 TCP/IP协议,使 Internet和 Unix紧密结合在一起
AT&T吸收了 BSD Unix中已有的各种先进特性,并结合其本身的特点,推出了 Unix System V 版本,至此 Unix形成两大分支
1992年,Unix系统实验室指控一家发行商业 BSD Unix的公司(BSDI),违反了AT&T的许可权,发布自己的 Unix版本。 后来,Unix系统实验室被 AT&T 卖给了 Novell公司,Novell不打算陷入这样的法律纷争中,因此就采用了比较友好的做法。伯克利的 CSRG被允许自由发布 BSD,但是其中来自于 AT&T 的代码必须完全删除
GNU/GPL
GNU计划是由自由软件之父 Richard Stallman 在1983年9月27日公开发起的。是 GNU’s Not Unix 首字母的缩写,它的目标是发展一个类似UNIX,完全自由的操作系统
General Public License(通用公共许可协议,GPL)是一种版权形式,是 Richard Stallman 在开放源代码软件发行的实践中,总结出的一套保护自由软件的条款。商业软件版权中,会用到 Copyright,而在GPL中,则使用 CopyLeft
GPL的中心思想是自由软件由开发者提供源代码,任何用户都有权使用、拷贝、扩散、修改该软件,同时用户也有义务将自己修改过的程序代码公开。允许用户在分发过程中收取一定的费用。但是,用户在再分发时,要保证新用户能取得源代码的权力。保证新用户与自己相同,在得到软件时,同时得到同自己一样的权力。在GPL下,不存在盗版,但是用户不能将软件据为己有(比如申请软件专利等),因为这将侵犯 GPL版权
GNU/Linux
到了90年代,GNU计划已经发现或者完成了构建一个操作系统所需的,除了内核之外的所有主要成分
1991年,Linus Torvalds开发了一个自由的内核。1992年,把 Linux和几乎完成的 GNU系统结合起来,就构成了一个完整的操作系统:一个基于 Linux的 GNU系统(GNU/linux)。值得注意的是 Linux并没有使用 Unix的源码,它是按照公开的 POSIX标准重新编写的
商业化的 Linux有 RedHat Linux 、SuSe Linux、slakeware Linux、国内的红旗等
Unix 和 Linux 的区别和联系
两者的联系:
- Linux思想源于Unix,以Unix为原型开发的
- Linux产品成功的模仿了Unix系统和功能
两者的区别:
- Linux是开放源代码的自由软件,而Unix是对源代码实行知识产权保护的传统商业软件
- Unix系统大多是与硬件配套的,而Linux则可运行在多种硬件平台上
往期推荐
● 嵌入式Linux专栏
● STM32CubeMX专栏
● FreeRTOS专栏
● LWIP网络开发专栏
● WiFi无线开发专栏
● RFID射频识别专栏
|