转载来源:https://www.jianshu.com/p/f0be00b24ba0

随着UNICS的需求量日益增加,肯·汤普逊决定将UNIX近一步改写,以便可以轻松地移植到各异的硬件系统里。由于UNIX的源代码中不少是用汇编完成的,不具备良好的移植条件,恰好里奇在1973年在B语言的基础上开发出来了C语言。C语言灵活多变,更为高效简洁,正是UNIX移植的时候需要的救命利器,于是旧版的UNIX与C语言完美结合,产生了新的可移植UNIX系统。

正是Dennis Ritchie 在BCPL基础上,开发了一种新的高级语言将Unics重新写了一遍,并命名为 UNIX。这个语言是将BCPL语言进行了升级,也就是后来大名鼎鼎的C语言。尽管是游戏和嘲讽,Unix和C诞生了,并且完美地结合成为一个统一体,C与Unix很快成为世界的主导。新的历史,开始了。

当时的美国公司,工程师研发完毕,往往会有休假,一休就是一年。旅游,探险都是好方式,可是 Ken选择了到伯克利(Berkeley)进行教学。也难怪欧美的教育科技那么发达,总有黑客将知识和技术进行传承。由于当时AT&T被美国反垄断制裁,Bell实验室不能销售Unix。只能无偿提供大家学习研究。正是因为这样开放环境,使得Unxi的功能和特性被不断的丰富。在Berkeley,有一个专门研究UNIX小组,他们为UNIX提供了很多新特性,例如著名的 TCP/IP协议 ,并完成了BSD版本。很快,就有公司看到了BSD的商机,分分购买BSD进行商用。

由此BSD 开创了现代计算机的潮流。伯克利的 Unix 率先包含了库,以支持互联网协议栈(Stack)、伯克利套接字(sockets)。通过将套接字与Unix操作系统的文件描述符相整合,库用户通过计算机网络读写数据,跟直接在磁盘上操作一样容易。

之后Berkeley BSD小组的Bill Joy开始创办了一家公司,也就是后来全球知名的SUN公司。就销售量来说,AT&T/UNIX始终赶不上BSD/Sun。并且Sun生产的小型工作站,风靡整个市场,很快就将生产PDP大型机系列的DEC 击败,并且让DEC退出了历史舞台。

由于AT&T对于Unix商业化,而后将Unix进行了闭源。Andrew所教授的课程《操作系统》却没有了“操作系统”。对此Andrew一咬牙,狠狠心,写出了一个兼容Unix的操作系统。人家就是厉害,你不给我使用,我自己写一个出来用。尽管Andrew的成果很简单,但是还是具备了Unix的基本功能,当然比较mini,因此命名为Minix。Minix作为Unix的变种,彼时的Minix正凭借低廉的价格和简易的操作在大学大行其道。

Minix由于过于短小精悍,只能运行这一种机器,其他机器没有驱动。Andrew的学生就写了好多好用驱动来扩展Minix。可是,教授Andrew却觉得自己的操作系统要保持纯洁,不能有其他的代码来源。于是学生们就很郁闷,其中就有个叫Linus的同学。

拥有自己的PC的Linus却不能将Minix运行在自己的电脑上。Linus也不得不走上了他无数前辈的道路,不让用,不给用,那就自己写一个操作系统来用。仅仅两个月后,一个“千疮百孔但却碰巧可以使用”的磁盘驱动程序和一个小到不能再小的文件系统就诞生了,这就是第0.01版的Linux。

美好的日子渐渐来临,Unix生态还是老样子,在商业的争斗中裹足不前。Microsoft和Apple的争斗也逐渐明朗,Microsoft靠卖软件大发特发。这让一个黑客很不满。

理查德·斯托曼(Richard Stallman)登场,他认为所有软件都是人类智慧和思想的结晶。软件应该自由的让人们使用。1983年,Stallman发起了“GNU(GNU’s Not Unix的递归缩写)”计划,目的是创建一套完全自由的操作系统,以“重现软件界合作互助的团结精神”。他以“著佐权”(copyleft)标准为范本拟定了一份通用公用版权协议(General Public License,GPL)。与强调个人版权但限制自由传播的著作权(copyright)不同,GPL更强调公共版权和鼓励自由传播,它允许修改程序、复制软件和销售获利。但前提是公布修改后的全部源代码,必须保证自由思想的传递。GNU计划激发了软件界极大的热情,世界各地的软件奇才们纷纷参与其中。并且开发出包括文字编辑器Emacs、C语言编译器,gcc以及大部分UNIX系统程序库和工具在内的绝大多数软件,很多免费软件的水平甚至都已经超过了相应的付费版本。

可是问题又来了,GNU编写了很多自由免费的软件,可是这些免费软件却运行在不自由的Unix上,这真是一个巨大的讽刺。Stallman承诺大家要两年内重新写一个操作系统,可是五年过去了,依然看不清成功的那一天。

与前面很多故事一样,事情总是环环相扣,可是谁也不知道这环将会扣向哪一环。Stallman苦于没有操作系统,芬兰的那边,Linus只有一个操作系统内核而没有应用软件。

于是,他们在各自的领域奋斗多年之后,命运终于安排他们走到了一起,Linus率领Linux加盟Stallman的GNU计划,上帝说要有光,于是牛顿出生了;人类需要自由,于是Linux与GUN结婚。这一“联姻”堪称是软件界的天作之合。

作者:杰_6343
链接:https://www.jianshu.com/p/f0be00b24ba0
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

unix、minix和linux的关系相关推荐

  1. 【Linux】概述(Unix和Linux的关系)

    Linux官网:https://www.kernel.org/ 历史 Linux最初是由芬兰赫尔辛基大学学生Linus Torvalds由于自己不满意教学中使用的MINIX操作系统,所以在1990年底 ...

  2. 简要聊聊UNIX,MINIX,LINUX,BSD的区别与特质

    聊聊linux,minux,bsd,unix的历史与区别 Linux.MINIX.BSD和UNIX都是类UNIX操作系统,它们都是基于UNIX操作系统的,但也有很多不同点. UNIX操作系统最早由贝尔 ...

  3. Unix简介及Linux简介

    1.Unix简介 UNIX是20世纪70年代初出现的一个操作系统,除了作为网络操作系统之外,还可以作为单机操作系统使用.Unix作为一种开发平台和台式操作系统获得了广泛使用,主要用于工程应用和科学计算 ...

  4. linux编译minix,MINIX对Linux

    MINIX对Linux 发布时间:2007-07-26 16:50:43来源:红联作者:atulations MINIX对Linux 引人注目并非全是好事.我从不擅长处理对抗,但也被迫站出来为Linu ...

  5. 神码与SUSE共促Unix向x86+Linux迁移

    Attachmate集团是全球知名的软件集团,旗下拥有Novell.SUSE等品牌.9月4日,Attachmate集团宣布与神州数码达成战略合作,神州数码将作为Attachmate集团中国区总代理,全 ...

  6. linux内核关系绘图工具_Linux中的绘图工具

    linux内核关系绘图工具 如果您是像我这样的大型开源狂热者,您可能会经常遇到有关专有工具的开源替代品的问题. 从"替代方案到Microsoft®Visio®"部门,这里有三个技巧 ...

  7. 《Android Studio应用开发实战详解》——第1章,第1.4节Android和Linux的关系

    本节书摘来自异步社区<Android Studio应用开发实战详解>一书中的第1章,第1.4节Android和Linux的关系,作者 王翠萍,更多章节内容可以访问云栖社区"异步社 ...

  8. UNIX 是啥?!和Linux什么关系?

    操作系统有两大阵营,一边是基于微软 Windows NT 的操作系统,一边是由UNIX衍生下来的操作系统. Linux, Mac OS X, Android, iOS, Chrome OS甚至路由器上 ...

  9. unix 安装oracle,linux上安装Oracle

    当前位置:我的异常网» Linux/Unix » linux上安装Oracle linux上安装Oracle www.myexceptions.net  网友分享于:2013-09-03  浏览:26 ...

最新文章

  1. 比特币现金(BCH),存在网络上的隐形矿工哈希率分布
  2. consul的安装搭建
  3. java原子更新类_Java内部具有原子更新的动态热交换环境
  4. CSS之容器按比例缩放
  5. 金电容(法拉电容)与可充放电池的相关知识
  6. 钉钉签到自动签到python_原来实现钉钉自动签到如此简单,每天准时上下班不是梦...
  7. HBase常用命令使用
  8. 2021年江阴各高中高考成绩查询,江阴高考,全市12所高中高考成绩比较
  9. android 百度地图 根据地址 查到其经纬度,使用百度地图api实现根据地址查询经纬度...
  10. wireshark 报文分析心得 -- Identification 使用说明
  11. hadoop框架介绍
  12. html5互动场景制作系统,春哥技术博客高仿易企秀H5场景应用制作平台源码V1.0正式版发布...
  13. python牛顿法算立方根_牛顿迭代法求解立方根
  14. Android智能硬件开发心得总结(二)
  15. 潮趣真无线蓝牙耳机,南卡小音舱真无线耳机评测来啦!
  16. append() 与appendTo 比较
  17. 国际网络收款工具Paypal注册图文教程
  18. 语音识别服务_语音识别服务厂商_腾讯云语音识别服务 - 云+社区 - 腾讯云
  19. 蜗牛移动被联通叫停放号,疑为受到大量投诉
  20. 02-分类算法:knn、朴素贝叶斯、决策树和随机森林

热门文章

  1. MapReduce 读取ORC格式文件
  2. 结构体的字符串输入要求和运行时错误
  3. 嘘!wemall三级分销的最新秘密!
  4. 小程序图片作为背景图无法铺满的问题
  5. 微软学生开发者峰会收获分享
  6. 简单的抽卡模拟器1.1
  7. 【动画演示软件】Focusky教程 | 设置面板控制及管理
  8. 谷歌earth下载_Google Earth闪闪发光,亚马逊街也闪闪发光
  9. 配置使用豆瓣pip源
  10. 计算机科学与网络空间,计算机科学与技术、软件工程和网络空间安全这三个同源学科如何布局和发展?...