1、Linux前身-Unix诞生
1965年,贝尔实验室Bell、麻省理工学院MIT、奇异公司GE,发起了Multics计划,让主机可以达成300个终端。后来因为资金不足、计划进度等问题,退出了研究。贝尔研究室退出了Multics计划。1968年Multics 项目到后期由于开发进度不是很好,MIT 和Bell实验室相继离开这个项目的开发,最终导致项目搁浅。
原计划的人员中有一位Ken Thompson(汤姆森.肯 UNIX之父),再也不能玩自己写的名为“star travel”的游戏了,因为这个游戏完全是基于Multics的。既然实验室撤出了项目,那就自己开发个操作系统来满足想玩游戏的愿望。1969年8月,Thompson趁老婆不在家自己用4周时间写了一个核心程序(包括:内核,文件系统,编辑器,编译程序),Thompson将Multics计划中的系统简化了,最后叫Unics(此时还不叫Unix,它是由B语言写的)。
1970年 Unix诞生
当时在开发Multics项目的时候,实验室中有一个开发成员开发了一 款游戏 (ravel space:遨游太空),因为两个实验室相继离开项目开发,导致这名开发人员没法玩游戏。后来他提议组织人员重新在Multics项目之上重新的开发,也就出现了1970 年的Unix.当时Unix操作系统是使用的汇编语言(机器语言)开发的。
1973年用C语言重写 Unix
1973年Unix正式诞生,由于Thompson写的这个系统是在太好用了,经过贝尔实验室的流传与数次改版,成为如今用C语言写成的Unics核心,也就是Unix。因为汇编语言有一一个最大的局限性,对于计算机硬件过于依赖。导致移植性不好,所以后斯在1973年使用了C语言对其进行重新开发。
1975年Bell 实验室允许大学使用Unix
1975年,Bell 实验室允许大学使用Unix操作系统用于教学作用,而不允许用于商业用途。
Unix的版本主要两个分支:
AT&T System V ——就是俗称的“系统5” (贝尔实验室)
Berkley Software Distribution (BSD) (加州大学伯克利分校)
2、Linux 诞生
Linux的开发作者,Linux之父, linus(李纳斯. 托瓦兹)。
1991年芬兰的赫尔辛基大学的Linus Torvalds(拖瓦兹,莱纳斯:Linux之父),他使用bash、gcc等工具写了一个内核程序,可以在386机器上运行,从此开始Linux的发展之路。
一个名叫Linus Torvalds 的芬兰大学生想要了解Intel的新CPU386。他认为比较好的学习方法是自己编写一个操作系统的内核。出于这种目的,加上他对当时Unix 变种版本(即Minix)对于80386类机器的脆弱支持十分不满,他决定要开发出一个全功能的、支持POSIX标准的、类Unix的操作系统内核,该系统吸收了BSD和System V的优点,同时摒弃了它们的缺点。Linus独立把这个内核开发到0.02 版,这个版本已经可以运行gcc、bash 和很少的一些应用程序。这些就是他开始的全部工作了。后来,他又开始在因特网上寻求广泛的帮助。
李纳斯当时学校使用的就是Unix 操作系统,然后其对系统的底层代码进行了修改,放到了学校为学生开放的网站上,原先他把文件命名写成了Linus's Unix,后期网络管理发现之后觉得这个名字不好,自己手动的将名字改成Linux.随后其他同学下载之后发现这个版本还是挺好用的,随后都把自己代码贡献给李纳斯。
1991年9月17日 Linux 0.0.1版本
1992年1月5日 Linux 0.0.2 版本
1994年3月14日 Linux 1.0 版本
1996年6月9日 Linux 2.0 版本
2011年6月21日 Linux 3.0 版本
上述提及的版本号并不是分支版本,而是指linux的内核版本。
Linux核心理念:万物皆文件;
Linux:是一个内核,而不是一个操作系统;因此我们平常说的“操作系统用的是Windows、Mac还是Linux啊?”是错误的,Ubuntu、Fedora等才是操作系统的名字,他们都使用Linux内核;1991年最初由Linus Torvalds针对386(个人计算机)开发;Linus Torvalds那时是芬兰的一名研究生;Unix Like:很像Unix的操作系统;
苹果电脑为什么现在能装Windows操作系统?因为苹果使用了Intel的X86架构,而windows也是针对此架构的,因此按理论来说一般的PC上也可以安装mac操作系统;
3、开源文化
Linux是开源的操作系统。所谓开源就是指开放源代码
1984年Richard Mathew Stallman(斯托曼)发起GNU计划, GNU是一个组织(GNU is Not Unix)。计划目的是:建立一个自由、开源的Unix系统。于是他不仅宣传让同事使用此内核程序,自己还编写C语言的编译器也就是gcc。
其中GNU开发的几个重要软件:
(1) Emacs 代码编辑器工具
(2) GNU C (GCC)
(3) GNU C Library
(4) Bash shell
1985年FSF 基金会
1990年Emacs、 GCC、程序库
1991年Stallman 去找Linus,商谈让Linux加入其开源计划(GNU 计划)
1992年GNU/Linux
4、Linux系统特点
开放性、多用户、多任务 、良好的用户界面、优异的性能与稳定性
单用户:一个用户,在登录计算机(操作系统),只能允许同时登录一个用户;
单任务: 一个任务,允许用户同时进行的操作任务数量;
多用户:多个用户,在登录计算机(操作系统),允许同时登录多个用户进行操作;
多任务:多个任务,允许用户同时进行多个操作任务;
Windows属于:单用户、多任务。
Linux属于:多用户、多任务。
5、Linux 分支
现在比较有名的ubuntu、debian、 centos(Community Enterprise Operating System)、 redhat、 suse 等等 。
Linux主要有以下几个版本:
Debian
Debian运行起来极其稳定,这使得它非常适合用于服务器。
Gentoo
与Debian一样,Gentoo这款操作系统也包含数量众多的软件包。Gentoo并非以预编译的形式出现,而是每次需要针对每个系统进行编译。它被认为是最佳学习对象,可以进而了解Linux操作系统的内部运作原理。
Ubuntu
Ubuntu是Debian的一款衍生版,也是当今最受欢迎的免费操作系统。Ubuntu侧重于它在这个市场的应用,在服务器、云计算、甚至一些运行Ubuntu Linux的移动设备上很常见。
Damn Vulnerable Linux
易受攻击的Linux,根本不是一般意义上的优秀的Linux发行版,它的目的在于借机训练Linux管理员。
红帽企业级Linux
这是第一款面向商业市场的Linux发行版。它有服务器版本,支持众多处理器架构,包括x86和x86_64。
CentOS
CentOS是一款企业级Linux发行版,它使用红帽企业级Linux中的免费源代码重新构建而成。这款重构版完全去掉了注册商标以及Binary程序包方面一个非常细微的变化。有些人不想支付一大笔钱,又能领略红帽企业级Linux。
Fedora
小巧的Fedora适合那些人:想尝试最先进的技术,等不及程序的稳定版出来。其实,Fedora就是红帽公司的一个测试平台;产品在成为企业级发行版之前,在该平台上进行开发和测试。Fedora是一款非常好的发行版,有庞大的用户论坛,软件库中还有为数不少的软件包。Fedora同样使用YUM来管理软件包。
Kali Linux
Kali Linux是Debian的一款衍生版。Kali旨在用于渗透测试。
Arch
Arch是一款采用滚动发行方式的操作系统:只要安装一次就够了;每当发行了某个新版本,就可以升级发行版,不需要重新安装。Pacman是Arch Linux的软件包管理器。Arch Linux既支持X86处理器架构,又支持X86_64架构,安装程序可以从光盘或U盘来运行。Arch旨在从开发者的角度而不是从用户的角度做到力求简单。Arch配置和安装起来超容易。它真是一款面向高手的发行版,让你可以了解Linux系统的每一个细枝末节。
OpenSuse
OpenSuse这款Linux发行版是免费的,并不供商业用途使用,仍然供个人使用。OpenSuse的真正竞争对手是红帽企业级Linux。它使用Yast来管理软件包。有了Yast,使用和管理服务器应用程序就非常容易。此外,Yast安装向导程序可以配置电子邮件服务器、LDAP服务器、文件服务器或Web服务器,没有任何不必要的麻烦。它随带snapper快照管理工具,因而可以恢复或使用旧版的文件、更新和配置。由于让滚动发行版本成为可能的Tumbleweed,可将已安装的操作系统更新到最新版本,不需要任何的新发行版。
6、Linux重要人物
Ken Thompson:C语言之父和Unix之父
Dennis Ritchie:C语言之父和Unix之父;
Stallman:著名黑客,GNU创始人,开发了Emacs、gcc、bash shell;
Bill Joy:BSD开发者;
Tanenbaum:Minix开发者;
Linus Torvalds:Linux之父,芬兰赫尔辛基大学;
7、补充知识:
Linux 操作系统的诞生、发展和成长过程依赖于以下五个重要支柱:
UNIX 操作系统、 MINIX操作系统、 GNU 计划、 POSIX 标准 、 Internet 网络。
操作系统介绍
内核负责控制硬件资源分配,而如果只有内核,则只能让计算机硬件运行,而不能有任何功能,因此需要系统调用提供给开发者使用,从而开发应用程序;内核能够控制硬件,比如:让CPU可以运算、让硬盘可以读写数据等;只有内核的话,只能让计算机运行,但是我们不能控制计算机;而系统调用是操作系统提供给开发者的调用接口;任何硬件都不会默认就被操作系统控制,而需要开发商根据操作系统提供的接口开发驱动程序,只有安装了驱动程序才能够控制硬件设备。
UNIX操作系统
Linux 操作系统是UNIX 操作系统的一个克隆版本。UNIX操作系统是美国贝尔实验室的Ken.Thompson和Dennis Ritchie 于1969 年夏在DEC PDP-7 小型计算机上开发的一个分时操作系统。Ken Thompson 为了能在闲置不用的PDP-7 计算机上运行他非常喜欢的星际旅行(Space travel)游戏,于是在1969 年夏天乘他夫人回家乡加利福尼亚渡假期间,在一个月内开发出了UNIX 操作系统的原型。当时使用的是BCPL 语言(基本组合编程语言),后经Dennis Ritchie 于1972 年用移植性很强的C语言进行了改写,使得UNIX 系统在大专院校得到了推广。
MINIX操作系统
MINIX 系统是由Andrew S. Tanenbaum(AST)开发的。AST 是在荷兰Amsterdam 的Vrije 大学数学与计算机科学系统工作,是ACM 和IEEE 的资深会员(全世界也只有很少人是两会的资深会员)。MINIX 是他1987 年编制的,主要用于学生学习操作系统原理。到1991 年时版本是1.5。目前主要有两个版本在使用:1.5 版和2.0 版。当然目前MINIX 系统已经是免费的,可以从许多FTP 上下载。
对于Linux 系统,他后来曾表示对其开发者Linus的称赞。但他认为Linux的发展很大原因是由于他为了保持MINIX 的小型化,能让学生在一个学期内就能学完,因而没有接纳全世界许多人对MINIX的扩展要求。因此在这样的前提下激发了Linus 编写Linux 系统。当然Linus 也正好抓住了这个好时机。
作为一个操作系统,MINIX 并不是优秀者,但它同时提供了用C语言和汇编语言编写的系统源代码。这是第一次使得有抱负的程序员或hacker能够阅读操作系统的源代码。在当时,这种源代码是软件商们一直小心守护着的秘密。
GNU计划
软件产业在70年代成就了两位针锋相对的领袖人物,来自哈佛大学的比尔·盖茨和Richard M.Stallman。前者宣布了Copyright(版权)时代的到来,并构建了微软帝国的辉煌;后者于1984年创立自由软件体系GNU,拟定普遍公用版权协议(GeneralPublicLicense,简称GPL),今天Linux的成功就得益于GPL协议。
所有GPL协议下的自由软件都遵循着Richard M. Stallman的"Copyleft"(非版权)原则:即自由软件允许用户自由拷贝、修改和销售,但是对其源代码的任何修改都必须向所有用户公开。
GNU计划和自由软件基金会FSF(the Free Software Foundation)是由Richard M. Stallman 于1984 年一手创办的。旨在开发一个类似UNIX 并且是自由软件的完整操作系统:GNU系统(GNU 是"GNU's Not Unix"的递归缩写,它的发音为"guh-NEW")。
各种使用Linux作为核心的GNU 操作系统正在被广泛的使用。虽然这些系统通常被称作"Linux",但是Stallman 认为,严格地说,它们应该被称为GNU/Linux系统。
到上世纪90 年代初,GNU 项目已经开发出许多高质量的免费软件,其中包括有名的emacs 编辑系统、bash shell 程序、gcc 系列编译程序、gdb 调试程序等等。这些软件为Linux 操作系统的开发创造了一个合适的环境。这是Linux 能够诞生的基础之一,以至于目前许多人都将Linux 操作系统称为“GNU/Linux”操作系统。
POSIX标准
POSIX(Portable Operating System Interface for Computing Systems)是由IEEE 和ISO/IEC 开发的一簇标准。该标准是基于现有的UNIX 实践和经验,描述了操作系统的调用服务接口。用于保证编制的应用程序可以在源代码一级上在多种操作系统上移植和运行。它是在1980 年早期一个UNIX 用户组(usr/group)的早期工作基础上取得的。该UNIX 用户组原来试图将AT&T 的System V 操作系统和BerkeleyCSRG 的BSD 操作系统的调用接口之间的区别重新调和集成。并于1984 年定制出了/usr/group 标准。
在90 年代初,POSIX 标准的制定正处在最后投票敲定的时候,那是1991-1993 年间。此时正是Linux刚刚起步的时候,这个UNIX 标准为Linux 提供了极为重要的信息,使得Linux 能够在标准的指导下进行开发,并能够与绝大多数UNIX 操作系统兼容。在最初的Linux 内核源代码中(0.01 版、0.11 版)就已经为Linux 系统与POSIX 标准的兼容做好了准备工作。在Linux 0.01 版内核的/include/unistd.h 文件中就已经定义了几个有关POSXI 标准要求的符号常数,而且Linus 在注释中已写道:“OK,这也许是个玩笑,但我正在着手研究它呢”。
Internet 网络文章来源:https://www.toymoban.com/news/detail-446328.html
Internet是linux开发、交流、发展的信息和资源的交流平台。
文章来源地址https://www.toymoban.com/news/detail-446328.html
到了这里,关于Linux发展史的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!