1.Unix操作系统

    Unix操作系统是美国贝尔实验室在20世纪60年代构思完成和实现,并在1970年首次发布。它因容易获取与可移植性高而广泛被学术机构和工商企业采用、复制和修改。它的设计对其他系统的作者影响很大。 

    Unix是多用户多任务操作系统,支持多种处理器架构。它面对的是专业的计算机科研人员,界面是shell的命令行。Unix操作系统大部分是使用C语言开发的。


1973年,美国国防部为了通信需要,启动了一个计划研发了TCP/IP协议,这也标志着Internet的诞生。


2.GUN项目计划

    GNU是“GNU's Not Unix”的递归缩写。

    GPL:General Public License

    LGPL:lesser GPL   

    1983年,著名黑客Richard Stallman创建了以创建一个自由软件,类Unix,与POSIX兼容的操作系统为目标的GNU计划。作为这个计划其中的一部分,他又写了GNU通用公共许可证(GPL)。

    GPL是由自由软件基金会发行的用于计算机软件的协议证书,使用该证书的软件被称为自由软件(Free software),后来改名为开放源代码软件(Open Source Software)。大多数的GNU程序和超过半数的自由软件使用它。

    LGPL(Lesser General Public License)宽松通用公共许可证,不允许修改现有程序,可以以库的形式调用,研发的程序也可以闭源,可以商业化。


3.Linux系统

    1987年,荷兰阿姆斯特丹城市的Andrew(安德鲁)教授发布一个用于教学的类Unix系统---Minix操作系统。Minix系统是基于微内核的类Unix系统,源代码开放。虽然Minix系统的源代码容易得到,但是对源代码的修改与再发布却受到了限制。另外,MINIX的16位的设计与当时日渐便宜及受欢迎的、个人电脑的Intel 80386架构兼容得不好。

    1990年,GNU研发了文字编辑器Emacs、GCC(GNU Compiler Conllection)。

    1991年10月5日,芬兰赫尔辛基大学学生Linus Torvalds由于Minix系统的一些缺陷又研发发布了Linux内核。Linus曾说过,如果那时候有可用的GNU或者386BSD内核的话,他很可能就不会去写他自己的内核了。

    IEEE 电子电器工程师协会定义了POSIX标准。

    POSIX(Portable Operating System Interface)标准,可以移植操作系统接口,定义了操作系统应该为应用程序提供的接口标准。

    API规范,应用程序接口规范。

    ABI(Application Binary Interface)应用程序二进制接口。