【Linux是什么】Linux是什么 Linux UNIX的历史

Linux是什么

同一套操作系统无法在不同架构的平台上运行。
参考硬件功能函数并修改你的操作系统程序代码,那经过改版后的操作系统就能够在另一个硬件平台上运行了。这就是软件移植
Linux是开源的操作系统,所以它的程序代码可以被修改成适合在各种机器上面运行的。Linux具有可移植性

Linux提供了一个完整的操作系统当中最底层的硬件控制与资源管理的完整架构,这个架构是沿袭UNIX良好的传统而来的,所以相当稳定而且功能强大。

Linux之前UNIX的历史

1969年以前:一个伟大的梦想——Bell MIT 与GE的”Multics”系统

20世纪60年代初期MIT开发了分时操作系统(Compatible Time-Sharing System CTSS)
它可以让大型主机通过提供多个终端机以连接进入主机,从而利用主机的资源进行运算工作。此时的终端机只有输入输出功能,本身完全不具有任何运算或软件安装的能力。而且只能提供最多30台终端机。

1965年前后,由贝尔实验室(Bell)麻省理工学院(MIT)及通用电气公司(GE)共同发起了Multics的项目,Multics项目的目的是想要让大型主机可以同时提供300台以上的终端机连接使用的目标。
最后Multics艰难完成 但是没有得到很大重视。但是Multics项目培养的人才是相当优秀的。

1969年:Ken Thompson的小型File Server System

从Multics退出后,Ken Thompson经过4个星期奋斗,以汇编语言写出了一组内核程序,同时包括一些内核工具程序,以及一个小的文件系统。这就是UNIX的原型。(Unics)
File Server System有两个重要概念:
①所有的程序或系统装置都是文件。
②不管构建编辑器还是附属文件,所写的程序只有一个目的就是要有效地完成目标。
这些概念在后来对于Linux的开发有相当重要的影响。

1973年:UNIX正式诞生,Ritchie等人以C语言写出第一个正式UNIX内核

1973年Thompson和Ritchie合作以C语言重新改写与编译Unics的内核,最后发行出UNIX的正式版本。这个改变也是的UNIX很容易被移植到不同的机器上。

1977年:重要的UNIX分支——BSD诞生

UNIX是以C语言写成的,理论上是具有可移植性的。只要取得UNIX的源码,并且针对大型主机的特性加以修订原有的源码,就可能将UNIX移植到另一台不同的主机上。所以1973年之后UNIX便和加州大学伯克利分校合作开发。
加大Bill Joy在移植UNIX的过程中加入了很多工具软件与编译程序,最终将它命名为Berkeley Software Distribution(BSD)。BSD是UNIX很重要的一个分支。
Bill Joy也是Sun这家公司的创办者。Sun公司即是以BSD开发的内核进行自己的商业UNIX版本的开发的。(后来可以安装在x86硬件架构上面FreeBSD即是BSD改版而来!)

1979年:重要的System V架构与版权声明

由于UNIX的高度可移植性与强大的性能,加上当时并没有版权的纠纷,所以让很多商业公司开始了UNIX操作系统的开发。
操作系统的内核必须要跟硬件配合,以提供及控制硬件的资源进行良好的工作。而在早期每一家生产计算机硬件的公司还没有协议的概念,所以每一台计算机公司出产的硬件自然就不相同了。另外由于没有厂商针对个人计算机设计UNIX系统(早期个人计算机架构下的CPU是没有能力达到多任务作业的),所以早先的UNIX只能和服务器或者是大型工作站划上等号

1979年,AT&T推出了System V第七版UNIX,支持了x86架构的个人计算机系统。
AT&T出于商业考虑,想将UNIX的版权收回去。因此在第七版System V中特别提到了“不可对学生提供源码”

目前被称为纯种UNIX的指的就是System V和BSD这两套。

1984年之一:x86架构的Minix操作系统诞生

大学教授Andrew Tanenbaum动手写了Minix这个UNIXLike的内核程序。为了避免版权问题,写的过程中他从不看System V的源码。
Minix也开了源码放在磁盘上出售的先河。
因为Minix被认为用在教育上面,所以教授对Minix是点到为止。

1984年之二:GNU项目与FSF基金会成立

Richard Mathew Stallman从小在一个注重分享的黑客圈长大。开始使用UNIX开发之后,为了可以让软件可以在不同的平台上运行,Stallman将他开发的软件均编写成可以移植的类型,也就是他都会将程序的源码公布出来。

1984年,Stallman开始GNU项目。这个项目的目的是创建一个自由 开放的UNIX操作系统(Free UNIX)。
后来Stallman现在UNIX上写小程序,逐渐扩大了GNU项目的知名度。但Stallman真正的创建操作系统的初衷直到Linux的出现才实现。
后来GNU项目开始编写C语言的编译程序,那就是大名鼎鼎的GNU C Compiler (GCC) (著名的GNU项目还有程序编辑器Emacs等)
接着Emacs赚的一笔钱,Stallman成立了自由软件基金会(Free Software Foundation, FSF),邀请更多工程师和志愿者来编写软件。

GNU的通用公共许可证

为了避免GNU项目中的自由软件被其他人所利用而成为专利软件,所以草拟了有名的通用公共许可证(General Public License GPL) 并且称呼它为CopyLeft(与专利软件的Copyright相对)
GNU所开发的几个重要软件:Emacs GNU C(GCC) GNU C Library(GLIBC) Bash Shell

1988年:图形接口XFree86项目

1984年,由MIT与其他第三方首次发表了X Window System 并且在1988年成立了非盈利性质的XFree86(X Window System + Free + x86)。
XFree86的GUI界面在Linux的内核1.0版于1994年放出时集成于Linux操作系统当中。

1991年:芬兰大学生Linus Torvalds的一则消息

1991年Torvalds在大学BBS上开始了Linux不平凡的旅程。

关于GNU项目

自由软件的活动

源码连同软件同时放出的举动就是自由软件运动。

自由软件的版权GNU GPL

为了避免自己的开发出来的Open Source的自由软件被拿去做成商业软件,预示Stallman同时将GNU与FSF开发出来的软件都挂上GPL的版权声明。FSF的核心观念是:版权制度是促进社会进步的手段,版权本身不是自然权力。

自由(Free)的真谛

Free:重点不是指免费,而是用户可以自由执行 复制 再发行 学习 修改和强化自由软件。

自由软件与商业行为

自由软件可以通过服务的形式出售。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。