2017-9-19Linux基础知识
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2017-9-19Linux基础知识相关的知识,希望对你有一定的参考价值。
2017-9-19Linux基础知识
一、操作系统的进阶历史
1、单用户单任务
2、批处理
3、多用户多任务
4、Unix的诞生
5、Linux的诞生
一、操作系统的进阶历史
1、单用户单任务
在上回章节说道,早期的操作系统是单用户单任务,也就是说,一次只能运行一个任务,时间等待很长,而且任务出错之后你还没办法去处理下一个任务,即使任务处理完成,你还得手动处理下一个任务。
2、批处理
后来批处理的兴起,它的好处是不用用户自动手动处理下一个任务,只是你需要规划好是A先处理完还是B处理完就可以了,比如:我先让A任务处理完,在让B任务处理完,将运行的程序按照顺序放置在磁带机上,按照一定的分隔符分开,依次运行,大致为这样:
AAAA$$$BBBB
这样A处理完成之后就会自动处理B任务了,好处就是计算机执行时基本上是一气呵成,但这毕竟还是单任务,即使在跑着其它任务也不能处理,那么就需要一个多用户多任务的系统。
3、多用户多任务
在千呼万唤shit出来的情况下,美国组成三大团队,它们分别是:Bell(贝尔实验室)、MIT(麻省理工学院)和GE(通用电气)一起研发一个多用户多任务的操作系统Multics
,起初还是满怀信心,但是越到后面越难,因为它们迷失了这个操作系统到底怎么设计以及它的用途是什么;很快,Bell和GE就放弃了这项计划,三大团队散了俩,还有一个在支撑,据说好像是成功了,但不可否认,这个操作系统为以后的Unix提供了非常好的思路。
4、Unix的诞生
Bell当初参与Multics雇佣了一大批工程师,其中有个人叫Ken Thompson,他也是发明Multics项目中的一员,还为了这个平台开发了一个游戏,叫太空大战(Space Travel),但是Bell已经撤出了这个项目了,于是这个游戏不能在Multics平台上运行了,但是他想玩这个游戏,于是想向领导申请需要一台计算机开发游戏,当然了,领导不批准,当时的计算机行业已经有一定的规模,但是资金也是比较昂贵的,心灰意冷的他走在实验室里发现了一个PDP-7,虽然型号有些老,但是可以使用,于是乎他就开始为这个游戏开始编写可供运行的平台,不过,PDP-7只能支持两个用户,其中有一个人开玩笑的说这是个"Unics"之后就称之为Unix,那一年他们完成是在1970年,于是就称之为Unux元年。
在他完成之后,就可以在哪里面玩他的太空大战,于是就让他的同事来看这个游戏,但他的同事对他的游戏一点兴趣都没有,但对他的操作系统感兴趣,因为这个操作系统短小精悍又坚强,1972年,很快在贝尔实验室达到了十台之多,当年的十台量是重新用汇编语言重新构写,不像现在有高级语言,举个例子Intel的芯片架构和moto的芯片架构肯定是不一样,因为在思想和构架上有很多出入。
思路可以延习,但架构是需要重新编写的,每个PC使用了不同的架构,就需要重新用该架构的汇编写这个程序,然后通过汇编器编译成该平台的机器语言运行,这是一件非常麻烦的事情,于是Ken的同时,Dennis Ritch将汇编B语言添加很多的功能,使得它不用在不同的架构上重新编写,在编译时用该平台的编辑器就可以了,这样减少了人工的参与。这样的语言就是我们现在所熟知的C语言。
1974年,在《美国计算机通信》杂志上刊登了用C语言写Unix操作系统的文章;同时这也是第一次公之于众,很快就大火,当时Bell实验室是所属于AT&T公司,这个公司因为反垄断法只能经营电话或电报产品,Unix不能用作商业产品进行转卖,于是有很多公司和学者等想要研究这个Unix,于是乎Ken没别工作,只能拷贝这个系统给他们,并且还附属一些话叫"Love Ken"。
到了1979年,Unix已经经历了第七个版本,这也可能是它的最后一版本了,它的强大是他们通过向Ken索要Unix时反馈回来的,之前,Ken带薪休假一年,去了伯克利分校去任教这给研究Unix的小组无疑添加了一个很大的帮助,于是乎Unix的分支出来了,名为BSD,当时研究Unix的组长为Bill Joy。
1980年,DARPA创建了TCP/IP协议在BSD中充分实现,1983年,正式用在BSD上,从而对网络发挥着巨大的作用。
1980年,微软成立,当年也是用Unix,只不过换了名叫XENIX,当年三个人一同创建,之后在1981年从某人买下DOS之后经过稍微加工成为了MS-DOS,当年卖给IBM和一些其它厂商,使得PC的价格变低,以此赚了很多钱。
Bell实验室脱离了AT&T之后,第一件事情就是将操作系统改为收费,同时和BSD打官司,尽管BSD的代码保留Unix的代码已经不到20%,这一打就是十年之久。
1985年,有一位人物,他认为软件都是自由和开放的,这个人叫Richard Stallman,他很激进,他提出一个叫做GNU计划,意为:GNU is Not Unix.衍生出两个协议,其中一个是GPL协议,很多的程序宣布都要加入GPL协议,但是它的程序软件都要在Unix的内核上运行,这也是特别尴尬的一件事情,于是这个协议似乎陷入了僵局。
在1987年,有位Andrew教授Unix的大学老师发明了一个内核取名为Minux,共4000+行代码,原因是Unix操作系统作为了商用,无论是教育行业还是其它行业都要交一大笔钱才能使用,所以这个老师就开发了这个系统,起初就是用作教育讲课用,有一些人请求能不能将这个Minux改进一下,做一些贡献,可都被他拒绝了。
5、Linux的诞生
就在这陷入特别尴尬的境地的时候,1991年9月份,一个叫Linus的大学生在论坛上发布了他根据POSIX标准发布的内核当初叫做Freax,那些黑客可任意得到下载这个内核进行修改,使这个内核越来越强大,后来就叫做Linux,10月份,Linux正式成立并加入GNU开源协议。
本文出自 “刘祥宇的博客” 博客,转载请与作者联系!
以上是关于2017-9-19Linux基础知识的主要内容,如果未能解决你的问题,请参考以下文章