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

MINIX
启动界面
开发者塔能鲍姆
编程语言C
作业系统家族类Unix
运作状态开发中
源码模式开放原始码
当前版本
  • 3.3.0 (2014年9月16日;稳定版本)[1]
  • 3.4.0rc6 (2017年5月9日;预发布版本)[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才又改头换面,现在它是一个朝向小型系统的可靠作业系统。

参考资料 编辑

相关网站 编辑