您的位置:首页 > 运维架构 > Linux

ch1 Unix和linux

2016-04-29 15:05 525 查看

(一)linux之前的Unix历史:

1)Multics

1965年前后,由贝尔实验室(Bell),麻省理工学院(MIT)和通用电气公司(GE)共同发起了Multics的项目,Multics项目的目的是想让大型主机可以同时提供300台以上的终端机链接使用的目标。但到了1969年前后,项目进度落后,资金短缺,所以虽然项目在继续,但是Bell实验室退出了该项目的研究。

2)Unics

1969年,原本参与该项目的人员中,Ken Thompson因为自己的需要(想移植一套名为“太空旅游”的游戏),并总结之前失败的教训,用汇编语言开发出来了一个小的文件系统Unics。该系统即是Unix的原型。

这个文件系统有两个重要的概念

a 所有的程序或系统装置都是文件

b 不管构建编译器还是附属文件,写程序只有一个目标:有效的完成任务。

3)Unix

1973年,因为Thompson写的操作系统太好用了,所以在Bell广为流传,但因为用的是汇编写的,因此对硬件的依赖性很强。后来Thompson与同事Ritchie合作将Unics用高级语言重写。当时有B语言,但最后发现效果不好,于是Dennis Ritche将B语言重写改成C语言,再用C语言重新改写Unics的内核,最后发型出Unix的正式版本。

4)Unix重要分支——BSD

1977年,因为Unix用C语言编写,所以可移植性较强。于是Unix与学术界合作开发,最重要的接触是Berkeley大学的合作。最后Berkeley的Bill Joy开发出一套系统,命名为Berkeley SoftWare Distribution(BSD)。Bill Joy也是Sun公司的创始人。

5)版权声明

因为Unix的高度可移植性与强大的性能,当时并没有版权的纠纷,所以很多商业公司都开发Unix。但Bell实验室隶属的公司AT&T由于商业的考虑,将Unix的版权收回。

6)X86架构的Minix

一位大学教授谭宁邦为了教学,既不能看Unix内核源码(版权问题),也要兼容Unix,于是开发出了Minix。

7)GNU项目

Richard Mathew Stallman(史托曼)在1984年发起GNU项目,对于现今的自由软件风潮有不可磨灭的地位。GNU项目的目的是创建一个自由,开放的Unix操作系统(Free Unix)。GNU是GNU is not Unix的缩写。(无限递归定义)

然而为了避免GNU所开发的自由软件呗其他人所利用而成为专利软件,所以拟定了有名的通用公共许可证(General public license,GPL)。

GNU几个重要的软件:

Emacs

GNU C Complier(GCC)

GNU C Library (GLIBC)

Bash Shell

8)linux

芬兰人Linus Torvalds是开发Minix的教授的学生,但该教授对Minix仅仅用于教学,点到为止,而Torvalds就参考了Minix,并且使用GNU工具,最后加上自己的智慧,最终写出了linux kernel。然而他希望这个程序可以获得大家的建议,于是在校园BBS帖子上发布消息,并且附上内核源码供下载,于是linux就如雨后春笋般发展起来~

传说:torvalds小时候去动物园被企鹅咬了一口念念不忘,大家要他想一个吉祥物,他就指定了企鹅。

学到这里,总算大致上了解linux的发展了,归根结底:

Unix(根源) + GNU(自由软件工具) + Minix(X86平台) + Torvalds(个人智慧) + 广大志愿者(众人力量);

伟大的作品真不容易啊~

(二)什么是linux

linux是一个操作系统最底层的内核及其提供的内核工具。它是GNU GPL授权模式,因此任何人均可以取得源码,并执行内核程序,并可以修改。

linux kernel

linux distribution:Kernel + Softwares + Tools 可完全安装的系统

linux的优点:

1)稳定的系统

继承于Unix,具有相似的系程序接口和操作方式,稳定且有效率。安装linux的主机可以连续运行一年以上而不宕机,不必关机是很平常的事。

2)免费或少许为用

linux时基于GPL授权的产物,故任何人均可以自由去的linux,至于一些distribution的发行者,只需要缴些许费用即可。(相对于MS绝对便宜)

3)安全,漏洞的快速修补

有相当多的志愿者支持,可以随时获得最新的安全信息,随时更新。

4)多任务,多用户

5)用户与用户组的规划

6)相对不消耗资源

7)适合嵌入式系统

linux的缺点:

1)没有特定的支持厂商

2)游戏娱乐的支持不佳

3)专业,办公软件的支持不佳
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  unix Linux gnu