cygwin 、 posix 、 linux & unix

Cygwin
cygwin 是一个 POSIX 兼容层。
Linux 是一个内核,Linux 系统上层是 GNU 软件。
两个本质毫无是无关关系的。

cygwin 的本质是提供一个基本函数接口,来让软件源代码可以不经修改或者小修改就可以在 Windows 上面编译使用。但其实这个实现,就是 POSIX (可移植操作系统接口 Portable Operating System Interface,缩写为POSIX,多了个X)本身的设计目标。Windows 不支持 POSIX ,但其实微软发布过 POSIX 兼容组建。
只是 cygwin 这个兼容层基本都是抄 Linux 的软件实现,所以你可以在 cygwin 上面用兼容 Linux 的软件源代码来使用(注意是源代码不是本地运行)。而且 cygwin 也直接移植 Linux 上面常用的软件,所以使用感受和操作方法也基本类似 Linux

POSIX
POSIX表示可移植操作系统接口(Portable Operating System Interface ,缩写为 POSIX ),POSIX标准定义了操作系统应该为应用程序提供的接口标准,是IEEE为要在各种UNIX操作系统上运行的软件而定义的一系列API标准的总称,其正式称呼为IEEE 1003,而国际标准名称为ISO/IEC 9945。
POSIX标准意在期望获得源代码级别的软件可移植性。换句话说,为一个POSIX兼容的操作系统编写的程序,应该可以在任何其它的POSIX操作系统(即使是来自另一个厂商)上编译执行。
POSIX 并不局限于 UNIX。许多其它的操作系统,例如 DEC OpenVMS 支持 POSIX 标准,尤其是 IEEE Std. 1003.1-1990(1995 年修订)或 POSIX.1,POSIX.1 提供了源代码级别的 C 语言应用编程接口(API)给操作系统的服务程序,例如读写文件。POSIX.1 已经被国际标准化组织(International Standards Organization,ISO)所接受,被命名为 ISO/IEC 9945-1:1990 标准。
Linux 、unix

区别和联系

Linux和UNIX的最大的区别是,前者是开发源代码的自由软件,而后者是对源代码实行知识产权保护的传统商业软件。这应该是他们最大的不同,这种不同体现在用户对前者有很高的自主权,而对后者却只能去被动的适应;这种不同还表现在前者的开发是处在一个完全开放的环境之中,而后者的开发完全是处在一个黑箱之中,只有相关的开发人员才能够接触的产品的原型。

Linux 的源头要追溯到最古老的UNIX。1969年,Bell实验室的Ken Thompson开始利用一台闲置的 PDP-7计算机开发了一种多用户,多任务操作系统。很快,Dennis Richie加入了这个项目,在他们共同努力下诞生了最早的UNIX。Richie受一个更早的项目——MULTICS的启发,将此操作系统命名为 Unix。早期UNIX是用汇编语言编写的,但其第三个版本用一种崭新的编程语言C重新设计了。C是Richie设计出来并用于编写操作系统的程序语言。通过这次重新编写,Unix得以移植到更为强大的 DEC PDP-11/45与11/70计算机上运行。后来发生的一切,正如他们所说,已经成为历史。Unix从实验室走出来并成为了操作系统的主流,现在几乎每个主要的计算机厂商都有其自有版本的Unix.

Linux起源于一个学生的简单需求。Linus Torvalds,Linux的作者与主要维护者,在其上大学时所买得起的唯一软件是Minix. Minix是一个类似Unix,被广泛用来辅助教学的简单操作系统。Linus 对Minix不是很满意,于是决定自己编写软件。他以学生时代熟悉的Unix作为原型, 在一台Intel 386 PC上开始了他的工作。他的进展很快,受工作成绩的鼓舞,他将这项成果通过互连网与其他同学共享,主要用于学术领域。有人看到了这个软件并开始分发。每当出现新问题时,有人会立刻找到解决办法并加入其中,很快的, Linux成为了一个操作系统。值得注意的是Linux并没有包括Unix源码。它是按照公开的POSIX标准重新编写的。Linux大量使用了由麻省剑桥免费软件基金的GNU软件,同时Linux自身也是用它们构造而成。

另外两大区别:

1) UNIX系统大多是与硬件配套的,而Linux则可运行在多种硬件平台上.

2) UNIX是商业软件,而Linux是自由软件,免费、公开源代码的.

UNIX(5万美圆)而Linux免费

[历史]

Unix的历史久于linux. Linux的思想源于Unix

[产品]

unix和linux都是操作系统的名称.但unix这四个字母除了是操作系统名称外,还作为商标归SCO所有.

Linux商业化的有RedHat Linux 、SuSe Linux、slakeware Linux、国内的红旗等,还有Turbo Linux.

Unix主要有Sun 的Solaris、IBM的AIX, HP的HP-UX,以及x86平台的的SCO Unix/Unixware

[其他区别]

linux的核心是免费的,自由使用的,核心源代码是开放的.

而unix的核心并不公开

在对硬件的要求上,linux比unix要低,没有unix那么苛刻.在安装上linux比unix容易掌握.

在使用上,linux相对没有unix那么复杂.

Unix多数是硬件厂商针对自己的硬件平台的操作系统,主要与CPU等有关,如Sun 的Solaris作为商用,定位在其使用SPARC/SPARCII的CPU的工作站及服务器上,当然Solaris也有x86的版本,而Linux也有其于RISC的版本。

但确切的讲,拿RISC上的Unix与x86上的Linux进行比较不太合适。

至于价格,个人使用的Linux基本上算是免费的,不同的Linux发行厂商针对企业级应用在基本的系统上有些优化,如RedHat的Enterprise产品,这些产品包括支持服务是比较贵的。

像IBM/HP/SUN的Unix,因为主要是针对其硬件平台,所以操作系统通常在设备价格中。(没有人单独去买一个Unix操作系统的)

在性能上,linux没有unix那么全面,但基本上对个人

用户和小型应用来说是绰绰有余.

通常情况下,如果你有机会使用到Unix环境,比如银行、电信部门,那一般都是固定机型的Unix。比如电信里SUN的居多,民航里HP的居多,银行里IBM的居多。学习中,不同的Unix命令集有些不同,要注意。

至于学习,我看还是linux比较好学一点,而且现在喜欢和

鼓捣linux的人也越来越多,各种有关linux的资料

也很多.如果是自己想学习,那Linux或是BSD系统是不错的选择。一台x86的机器就可以。

应用上,除非是大型网站,一般企业或个人,使用Linux即可.

UNIX是一个功能强大、性能全面的多用户、多任务操作系统,可以应用从巨型计算机到普通PC机等多种不同的平台上,是应用面最广、影响力最大的操作系统。

Linux是一种外观和性能与UNIX相同或更好的操作系统,但,Linux不源于任何版本的UNIX的源代码,并不是UNIX,而是一个类似于UNIX的产品。Linux产品成功的模仿了UNIX系统和功能,具体讲Linux是一套兼容于System V以及BSD UNIX的操作系统,对于System V来说,目前把软件程序源代码拿到Linux底下重新编译之后就可以运行,而对于BSD UNIX来说它的可执行文件可以直接在Linux环境下运行。

一般来说,Linux是一套遵从POSIX(可移植操作系统环境)规范的一个操作系统,它能够在普通PC计算机上实现全部的UNIX特性,具有多任务、多用户的能力。Linux受到广大计算机爱好者的喜爱的另一个主要原因是,它具有UNIX的全部功能,任何使用UNIX操作系统或想要学习UNIX操作系统的人都可以从Linux中获益。

在网络管理能力和安全方面,使用过Linux的人都承认Linux与UNIX很相似。UNIX系统一直被用做高端应用或服务器系统,因此拥有一套完善的网络管理机制和规则, Linux沿用了这些出色的规则,使网络的可配置能力很强,为系统管理提供了极大的灵活性。

posted @ 2016-10-10 09:57  雪飞就飞  阅读(417)  评论(0)    收藏  举报