Unix 和 Linux
世界上有三大操作系统,Windows、Linux和Unix。安卓系统是基于Linux的,苹果系统是基于Unix的。
据报道,全世界大部分的服务器运行着Linux操作系统,其中99%的超级计算机都是使用Linux。
但是Linux系统又被称为“类Unix系统”,所以,我们要先讲讲Unix操作系统的故事。
Unix也翻译为“尤尼斯”,不过专业人士不会叫它的中文名。
Unix的作者,是肯·汤普森(Ken Thompson)和丹尼斯·里奇(Dennis Ritchie),两人也是C语言的设计者,在1983年共获图灵奖。论贡献,老汤在Unix开发中作用更大,里奇在C语言的设计中功劳更多。
虎老狮:C语言本纪(含C++)zhuanlan.zhihu.com
1969年8月,在“贝尔实验室”工作的老汤自己捣鼓了个操作系统玩游戏——这个操作系统如此的不完善,以至于被嘲讽为eunuchs,太监的意思。老汤也不生气,接下了这个发音,使用了更简单的字母拼写——U-N-I-X。
1970年,Unix基本完成,用的是汇编语言。
1973年,老汤和里奇用C语言重新编写Unix,这使得Unix易读易懂易修改,好用好使好移植。
易读易懂易修改,好用好使好移植
贝尔实验室一开始没把Unix当回事儿,Unix本来就不是正式项目,也就没想着拿它去卖钱。此后,不值钱的Unix被免费提供给大学使用,直接给源代码。
正因为“易读易懂易修改”,Unix很快成为操作系统课程的教学案例,并逐渐流行起来,各大学、公司对也对其进行各种各样的改进和扩展,衍生出多种版本,并形成两大流派,一支是商业派,另一支是非商业派。
- 商业派,以AT&T公司为代表,不公开源码,视源代码为商业机密,甚至不准大学使用Unix源代码。
- 非商业派有个响亮的名字——BSD,叫作“伯克利软件套件”(Berkeley Software Distribution),是加州大学伯克利分校开发的。BSD拥护软件开源,鼓励代码共享。当然,在BSD版本上开发商业版也是允许的,比如苹果的操作系统也是基于BSD UNIX,但苹果的系统是闭源的。
老汤和里奇在一次操作系统的学术研讨会上,发过一篇关于Unix的论文,这个引起了加州大学伯克利分校的鲍勃·法布瑞教授的兴趣。鲍勃教授要了一份拷贝,Unix就传入了伯克利大学。
Unix进了伯克利之后,很受欢迎,被各色人等擅自修改,逐渐得到完善和改进。伯克利大学也不把Unix归为己有,本着学术交流的目的,把Unix到处传播。他们也不收钱,谁想要给个磁带就帮你复制一份,地址远的把磁带连同运费一起寄过来,拷贝完了给寄回去。
伯克利大学的师生对Unix做了很大的修改,其中有个主要贡献者叫比尔·乔伊(Bill Joy),后来他创建了SUN公司,推出了著名的Java语言。
虎老狮:Java列传zhuanlan.zhihu.com
由于AT&T禁止大学使用Unix源代码进行教学,Tanenbaum(坦嫩鲍姆)教授极为不满,一怒之下编写了个类似的系统,取名Minix——mini-Uinix的意思。这个操作系统非常简单,代码只有12000行,但是它直接导致了另外一个神级操作系统的诞生。
1991年,Linus Torvalds(林纳斯·托瓦兹)从Minix得到灵感,开发出Linux。Unix的定位是“类Unix操作系统”——不是Unix,但类似Unix,往根上倒,还是Unix的思想,这就好比“天下武功出少林”的说法,Linux也是源自Unix。
林纳斯痴迷计算机,最让他亢奋的事情就是敲代码,读大学时,对《Unix操作系统》课程极度痴迷,因为当时Unix已经闭源了,他决定自己动手编写一个操作系统,把课堂上学到的知识实践起来。
他花了几个月的时间,不分昼夜地敲代码,也只写了一个内核,不禁感叹单枪匹马地开发操作系统太难了,1991年9月,托瓦兹干脆把自己的源代码公开,取名Linux,版本号0.01,大小63KB,呼吁广大黑客一起来改进。
Linux因为结构清晰、功能简洁、源码公开,一经发布即收受好评,随机迅速走红。
1993年10月,发布了11个版本
1993年12月,发布了10个版本
1994年1月,发布了14个版本
1994年2月,发布了11个版本
这比后来的各类软件的所谓快速迭代快得多得多得多。
关于Linux,有一部纪录片可以参考——《操作系统革命》,豆瓣评分8.6,B站上有中英双语字幕的版本。提醒一下,由于是纪录片,所以有点枯燥。
顺便说一句,现在很火的版本管理软件git,也是林纳斯写的,git的愿意是“饭桶”。著名的github,是git分化出的一个商业版本。
Unix 和 Linux相关推荐
- unix to linux,UNIX to Linux 的关键问题都有哪些?
答:针对问题描述有一些不同的观点. 1.第一个问题就是应用架构的改造问题,需要支持负载均衡模式. 说明:这个不一定需要支持负载均衡模式,首先本身LINUXONE提供多分区架构,不需要改变原有应用系统的 ...
- 一段关于Unix与 Linux的暗黑史
"SCO在言语上变得越来越好斗,而且还拒绝展示有关诉讼的任何证据,一切都似乎在表明,SCO只不过是在那里拉虎皮做大旗地狂言乱语.但是,微软决不会轻易放弃这么可以一个利用这些狂言乱语的好机会. ...
- 避免 UNIX 和 Linux 中的常见错误
您是否遇到过 Execute permission denied 或 The parameter list is too long 这样的错误消息?您想知道错误的原因吗?这些是 UNIX 和 Linu ...
- linux搜索过滤器,Unix和Linux管道(pipe)和过滤器(filter)使用介绍
上一章Unix和Linux教程请查看:打印文件和发送邮件 在本章中我们将详细讨论Unix中的管道和过滤器.你可以将两个命令连接在一起,使一个程序的输出成为下一个程序的输入,以这种方式连接的两个或多个命 ...
- 2、UNIX、Linux操作系统的发展历程、介绍、应用领域
先看三个和UNIX相关的伟人 ----->Minix–Unix–Linux UNIX UNIX是多用户.多任务的操作系统. 从70年代末开始在市场上出现了不同的UNIX商品化版本,比较有影响的版 ...
- linux unix系统区别,Unix和Linux操作系统有什么区别?看这里!
现在操作系统有很多种,比如说Windows.Linux.Unix等,不过在很多人的意识中Unix和Linux属于相同的,那么它们之间有着怎样的区别呢?小编为大家详细介绍一下. 什么是Unix?有什么特 ...
- linux cfs,朴素的UNIX之-Linux CFS一个注释
朴素的UNIX之-Linux CFS一个注释 发布时间:2020-05-29 08:33:29 来源:51CTO 阅读:604 作者:dog250 本系列名为朴素的UNIX,但是也包括各个类UNIX系 ...
- 万字长文!Unix和Linux你不知道的那些历史(详解版)
作者 | 程序员小乐 来源 | 程序员小乐(ID:study_tech) 00 前言 UNIX 与 Linux 之间的关系是一个很有意思的话题.在目前主流的服务器端操作系统中,UNIX 诞生于 ...
- Recoll:Unix和Linux桌面的文本搜索工具
Recoll是一个Unix和Linux桌面的文本搜索工具.Recoll可以搜索文件名和文件内的关键字. Recoll可以为你做到以下这些. 它可以搜索任何格式的文件 支持通配符 可以依据文件的作者.类 ...
- unix和linux命令_Linux vs. Unix,在命令行中清理数据,为儿童准备的15本书,以及更多必读内容
unix和linux命令 上周,关于Linux与Unix的一篇文章是最受欢迎的读物. 查看其他Opensource.com读者对以下内容的了解: Linux与Unix:有什么区别? ,作者:菲尔·埃斯 ...
最新文章
- 硬件——STM32,GPIO篇
- 高性能网络编程7--tcp连接的内存使用
- 2019人工智能实战 第六次作业 段峙宇
- 基于Linux的 Open×××网络之网络架构应用实例
- unzip 报错error [clas.zip]: missing 1844 bytes in zipfile
- Kinect学习笔记(五)——更专业的深度图
- 综述 | 基于特征的视觉同步定位和建图
- Dubbo负载均衡算法初步解析
- adblock插件_为WordPress创建一个反AdBlock插件
- 网络安全事件收集,分析
- 芯动科技面试——数字IC/FPGA面试案例总结1
- 指纹识别综述(11): 专利
- 谷歌seo优化主要做什么?
- 在 Amazon SageMaker 上玩转 Stable Diffusion: 基于 Dreambooth 的模型微调
- python中 s是什么意思_这里面的s.name是什么意思啊?
- flash制作游戏_如何使用Flash制作简单的装扮游戏
- Ubuntu18.04设置在开机时自动链接蓝牙键盘
- unity 设置图片九宫格_Unity UGUI篇 Image图片
- 更进阶的实战效率、更准确的研究成果——欢迎参加材料计算PWmat进阶小组会
- 猫眼电影爬虫和数据分析
热门文章
- Pri3D:一种利用RGB-D数据固有属性完成3D场景感知的表示学习方法
- CVPR2021|CenterPoint :基于点云数据的3D目标检测与跟踪
- 系列篇|编写一个翻转事件极性的package
- SpringMVC项目前台利用ajaxFileUpload传递图片后台接收
- Case Study: 利用PHP获取关系型数据库中多张数据表的数据
- C语言接收一个整数划分成5的倍数,整数划分为连续整数;整数划分
- yii2 导入开源php项目_终于来了,yii2和phpstorm的完美整合,支持到你不要不要的。...
- MPB:北大口腔陈峰、陈智滨等-口腔常见微生物的培养方法
- Prokka:快速原核基因组、宏基因组基因注释
- 导师推荐的学术前沿号