MINIX是一种基于微内核架构的类UNIX计算机操作系统,由Andrew S. Tanenbaum发明。MINIX最初发布于1987年,开放全部源代码给大学教学和研究工作。2000年重新改为BSD授权,成为自由和开放源码软件。MINIX为全球注册商标。
简介
Minix的名称取自英语Mini UNIX,是一个迷你版本的类Unix操作系统(约300MB),其它类似的系统还有Idris,Coherent和Uniflex等。这些类Unix操作系统都是重新发展的,并没有使用任何AT&T的程序码。
目前的Minix版本为Minix 3,是一个免费、开源的操作系统,设计目标是实现高可靠性、灵活性及安全性。其系统主要包括在核心模式下运作的微核心和在用户模式下作为一系列独立、受保护的进程运行的其余所有操作系统组件。
发展
Minix原来是荷兰阿姆斯特丹的Vrije大学计算机科学系的Andrew S. Tanenbaum教授所发展的一个类Unix操作系统。全部的程序码共约12,000行,并置于他的著作Operating Systems: Design and Implementation(ISBN 0-13-637331-3)的附录里作为范例。Minix的系统要求在当时来说非常简单,只要三片磁片就可以启动。Minix原始是设计给1980年代到1990年代的IBM PC和IBM PC/AT兼容电脑上执行。1.5版也有移植到以Motorola 68000系列CPU为基础的电脑上(如Atari ST,Amiga,和早期的Apple Macintosh)和以SPARC为基础的机器(如升阳sun公司的工作站)。2.0版则只有x86架构的版本。
因为AT&T的政策改变,在Version 7 Unix推出之后,发布新的使用条款,将UNIX源代码私有化,在大学中不再能使用UNIX源代码。塔能鲍姆教授为了能在课堂上教授学生操作系统运作的实务细节,决定在不使用任何AT&T的源代码前提下,自行开发与UNIX兼容的操作系统,以避免版权上的争议。他以小型UNIX(mini-UNIX)之意,将它称为MINIX。
全套Minix除了起动的部份以汇编语言编写以外,其他大部份都是纯粹用C语言编写。分为:内核、内存管理及档案管理三部份。
与Linux的关系
如果想了解类Unix系统的内部工作情况,学生可以在他们自己的电脑上运行Minix。据报道,即使是毫无经验的学生也能在几个月的典型培训课程的学习中获得对整个系统的很好的了解。Minix最有名的学生用户是Linus Torvalds,他在芬兰的赫尔辛基大学用Minix操作平台建立了一个新的操作系统的内核,他把它叫做Linux。
Linux是其作者受到Minix的影响而作成的(Linus Torvalds不喜欢他的386电脑上的MS-DOS操作系统,安装了Minix,并以它为样本开发了原始的Linux内核)。但在设计哲学上,Linux则和Minix大相迳庭。Minix在内核设计上采用微内核的原则,但Linux则和原始的Unix相同都采用宏内核的概念。在Linux发展之初,双方还于1992年在新闻组上有过一场精彩的理念争论。Minix的作者和支持者认为Linux的单内核构造是“向七十年代的大倒退”,而Linux的支持者认为Minix本身没有实用性。
授权方式
在授权方式上,Minix的版权宣告在早期被认为是相当自由的,在作者Andrew S. Tanenbaum希望拿Minix作为一个公开的教材与出版社希望保护程序码著作财产权的平衡下,它只要求一个相当低的授权费。但因为它并不是一个开放源码的授权方案,所以志愿工作者在以GPL方式散布的Linux核心出现后就多转向Linux平台。而Unix也在柏克莱系统与AT&T达成协议后,出现了以BSD 授权散布的FreeBSD开放平台。Minix虽然在2000年改用BSD 授权,但这时其它的操作系统在功能上大幅超越了它,而它失去了发展成一个广泛使用的操作系统的机会,只留下,如它的作者Andrew S. Tanenbaum,原来期望的,作为一个开放的教材的用途。
概要问题
MINIX 3是什么?
MINIX 3是一个为高可靠性应用而设计的自由且简洁的类UNIX系统。它特别适用于低端的个人电脑、资源受限制系统和嵌入式应用。你可以获得它所有的源代码,这使得它很适合于课堂教学和那些想了解操作系统怎样运行的自学者。
MINIX 3运行的硬件要求?
你需要一台有4 MB内存、100MB空闲硬盘空间和CD-ROM(IDE)的Intel386及其以上计算机。现暂时还不支持从USB CD-ROM启动。
我如何获得MINIX 3呢?
请访问Minix3官网[2]
我怎么得到关于MINIX 3的帮助呢?
你可以浏览USENET 新闻组并发帖提问。你也可以使用邮件列表。
我可以成为MINIX 3的开发人员吗?
如果你有一定的时间、兴趣和必备的知识,欢迎你加入MINIX 3社区。
法律问题
MINIX 3用的是什么许可证?
MINIX 3使用的许可证是伯克利(BSD)许可证的一个克隆版本。你可以在同意以下两个条件的前提下对系统做任何你喜欢做的事:(1)你同意在任何条件下你都不会控告我们;(2) 除非已经做了其他安排,否则你要把荣誉行保留在源码、文档和公开资料中。在上面所提及的限制下,你可以自由地修改、重发布你的源代码,并且可以将它合并到你的商业产品中。
为什么不使用GPL许可证呢?
GPL许可证限制得太多。对开源软件的进一步开发而投入大量资金的公司可不想把它送给竞争者。我们认为BSD许可证更适合MINIX 3在嵌入式系统中的应用。
MINIX和Linux之间有什么关系呢?
MINIX 是一个发行于1987年的用于操作系统教学的简单易懂的小型UNIX克隆。赫尔辛基大学的学生Linus Torvalds在操作系统课程上学习了MINIX并买了一台PC来充分地运行它。然后他将MINIX作为平台和指导开发了MINIX的克隆 ---Linux,并且在1991年发布。这是他关于Linux的声明。
Linus被指责从MINIX偷窃了Linux,这是真的吗?
不,绝对不是。在微软的部分资助下Alexis de Tocqueville Institution公司的Ken Brown写了一篇报告声称Linus从MINIX偷窃了Linux。Brown的结论是由于知识产权的所有者不清,所以公司不应该使用Linux。这完全是废话!虽然对于一个只有21岁的学生来说没有一个相似的操作系统源代码来使用、学习和修改,他几乎不可能编写出一个他自己的操作系统,但是Linus的确编写了Linux源码的最初版本。Brown的报告和MINIX创建者的回应在Slashdot上有详细的论述。
MINIX 3的性能如何?
我们对MINIX 3(用户模式)和MINIX 2(内核模式)的性能做了比较测量,MINIX 3比MINIX 2慢了5-10%。因为有太多的不同(譬如磁盘驱动还不支持DMA,ACK编译器虽然比GCC快但是产生的代码不如GCC,还有文件系统的差别,等等),所以我们还没有将MINIX 3与其他的操作系统做比较。最大的差别还是MINIX 3到现在为止只用了1人年左右的工作,而其他操作系统则用了数千人年。而且我们是可靠性优先,而不是性能。
在模拟器或者虚拟机上运行MINIX 3
我该如何在VMWare上运行MINIX 3?
请阅读这篇关于MINIX和VMWare的文档。你也可以下载预先装有MINIX 3的VMWare的虚拟机。这是一个关于"装有MINIX 3的VM"的主页的链接。你可以用VMWare的自由且可下载的VMWare Player来运行虚拟机。
我可以在Windows主机和VMWare上的MINIX 3之间传输数据吗?
你可以使用这个copy-and-paste tool。如果你在安装MINIX 3时选择了LANCE以太网芯片,就可以在MINIX 3中使用FTP。
我可以在MAC中使用Bochs仿真器来运行MINIX 3吗?
可以。
我可以在Windows中使用Virtual PC来运行MINIX 3吗?
可以。