Minix,是一个迷你版本的类Unix操作系统,由塔能鲍姆教授为了教学之用而创作,采用微核心设计。它启发了Linux核心的创作。

MINIX
启动界面
开发者塔能鲍姆
编程语言C
操作系统家族类Unix
运作状态开发中
源码模式开放源代码
当前版本
  • 3.3.0(2014年9月16日;稳定版本)[1][2]
编辑维基数据链接
市场取向教育(v1, v2)、嵌入式系统(v3)
支持的语言英文
支持平台PC, PC/AT, PS/2, Motorola 68000, SPARC, 雅达利ST电脑, Amiga, Macintosh, SPARCstation, Intel 80386, IBM PC兼容机, NS32532, ARM and INMOS transputer
内核类别微核心
默认用户界面命令行接口ash
许可证BSD许可协议
官方网站www.minix3.org
仓库 编辑维基数据链接

它的名称取自英语:Mini UNIX的缩写。与XinuIdrisCoherentUniflex等类Unix操作系统类似,派生自Version 7 Unix,但并没有使用任何AT&T的代码。第一版于1987年发布,只需要购买它的磁片,就提供完整的源代码给大学系所与学生,作为授课及学习之用。2000年4月,重新以BSD许可协议发布,成为开放源代码软件。

历史与版本

MINIX 1.0

Minix原来是荷兰阿姆斯特丹自由大学计算机科学系的塔能鲍姆教授(Prof. Andrew S. Tanenbaum)所发展的一个类Unix操作系统。

因为AT&T的政策改变,在Version 7 Unix推出之后,发布新的使用许可协议,将UNIX源代码私有化,在大学中不再能使用UNIX源代码。塔能鲍姆教授为了能在课堂上教授学生操作系统运作的实务细节,决定在不使用任何AT&T的源代码前提下,自行开发与UNIX兼容的操作系统,以避免著作权上的争议。他以小型UNIX(mini-UNIX)之意,将它称为MINIX。

Minix以C语言写成,与Version 7 Unix兼容,全部的代码共约12,000行,并置于他的著作《操作系统:设计与实现》(Operating Systems: Design and ImplementationISBN 0-13-637331-3)的附录里作为示例。Minix的系统要求在当时来说非常简单,只要三片磁片就可以起动。

Minix原始是设计给1980年代到1990年代的IBM PCIBM PC/AT兼容电脑上执行,主要运作于16-bits的Intel 8080平台,以软盘起动。

MINIX 1.5

1.5版也有移植到以Motorola 68000系列CPU为基础的电脑上(如Atari STAmiga,和早期的Apple Macintosh)和以SPARC为基础的机器(如昇阳(Sun)公司的工作站)。

MINIX 2.0

1997年,随着教科书改版,塔能鲍姆发布Minix 2,在这版中,它改成可以在Intel 80386x86平台上运作,从硬盘上开机。

Minix-vmd

MINIX 3

2004年,塔能鲍姆重新架构与设计了整个系统,更进一步的将程序模块化,推出Minix 3桌面环境EDE在MINIX 3中作为可选包。

技术内容

全套Minix除了启动的部分以汇编语言编写以外,其他大部分都是纯粹用C语言编写。分为:核心存储器管理文件系统三部分。

Minix在设计之初,为了使程序简化,它将程序模块化,如文件系统存储器管理,都不是在操作系统核心中运作,而是在用户空间运作。至Minix 3时,连IO设备都被移到用户空间运作。

另一个特点,则是Minix主要目的是用于教学,因此代码撰写上极力重视简洁与可读性。

Minix与Linux

Linux是其作者受到Minix的影响而作成的(林纳斯·托瓦兹不喜欢他的386电脑上的MS-DOS操作系统,而安装了Minix,并以它为样本开发了原始的Linux核心)。但是这种影响更多在于非技术层面,确切地说是一种精神上的“鼓舞”。在设计上,Linux则和Minix相差很大,在Linux系统还没有自己的原生文件系统之前,曾采用Minix的文件系统。Minix在核心设计上采用微核心,即将操作系统分成微核心和其上的提供文件系统、存储器管理、驱动程序等服务的服务程序;而Linux则和原始的Unix都采用宏内核。在Linux发展之初,双方还于1992年在新闻组上有过一场精彩的争论,被称为塔能鲍姆-林纳斯辩论。Minix的作者和支持者认为使用宏内核是技术上的退步,而Linux的支持者认为Minix本身没有实用性。

许可方式

在许可方式上,Minix的著作权宣告在早期被认为是相当自由的:塔能鲍姆教授在希望拿Minix作为一个公开的教材与出版社希望保护代码著作权的平衡下,它只要求一个相当低的许可费。但因为它并不是一个开放源代码的许可方案,所以志愿工作者在以GPL方式散布的Linux核心出现后就多转向Linux平台。而Unix也在BSDAT&T达成协议后,出现了以BSD许可证许可散布的FreeBSD开放平台。Minix虽然在2000年改用BSD许可协议,但这时其它的操作系统在功能上大幅超越了它,而它失去了发展成一个广泛使用的操作系统的机会,只留下,如塔能鲍姆教授原来期望的,作为一个开放的教材的用途。直到Minix 3出现后,Minix才又改头换面,现在它是一个朝向小型系统的可靠操作系统。

参考资料

  1. ^ MINIX 3.3.0 is Available Now. 
  2. ^ Release v3.3.0 · Stichting-MINIX-Research-Foundation/minix. [2024年11月3日] (英语). 

相关网站