tokenpocketcom官网下载苹果|minix
Minix3
Minix3
HOME
GETTING STARTED
DOWNLOAD
DOCUMENTATION
COMMUNITY
NEWS
WIKI
What Is MINIX 3?
MINIX 3 is a free, open-source, operating system designed to be highly reliable, flexible, and secure.
It is based on a tiny microkernel running in kernel mode with the rest of the operating system running
as a number of isolated, protected, processes in user mode.
It runs on x86 and ARM CPUs, is compatible with NetBSD, and runs thousands of NetBSD packages.
Get MINIX 3 now and join our community!
Read More
Download
LEARN MORE ABOUT MINIX 3
FEATURES. See a list of the MINIX 3 features
FAQ. Get quick answers to common questions
RESOURCES FOR NEWBIES. Info for beginners
DOCUMENTATION. Various articles
BLOG. Read the blog
RESEARCH. MINIX 3 as a base for research
GET INVOLVED WITH MINIX 3
GETTING STARTED. If you are new to MINIX 3
DOWNLOAD. Get the current version as a CD-ROM image
NEWSGROUP. Ask question and get answers
HELP US. How can I help the project?
HIRE A CONSULTANT. Tailor MINIX 3 to your company's needs
Get a masters degree
in Computer Security at the university where MINIX 3 was written, VU University, in Amsterdam.
一个悄然成为世界最流行的操作系统 - 知乎
一个悄然成为世界最流行的操作系统 - 知乎切换模式写文章登录/注册一个悄然成为世界最流行的操作系统程序员小林欢迎关注了解更多干货!1987的今天,Minix 诞生了。Minix 介绍Minix 是Mini Unix 的缩写,一个迷你版类 Unix 操作系统(约 300MB)。 Minix 原来是荷兰阿姆斯特丹的 Vrije 大学计算机科学系的安德鲁·塔能鲍姆(Andrew S. Tanenbaum )教授所开发的一个类 UNIX 操作系统,开发初衷是方便教学使用(因为 AT&T 推出 Version 7 Unix 之后,将 Unix 源码进行了私有化)。Minix 全部的源代码共约 12,000 行,并置于他的著作Operating Systems: Design and Implementation(ISBN 0-13-637331-3)的附录里作为范例。Minix 的系统要求在当时来说非常简单,只要三片磁片就可以启动。安德鲁·塔能鲍姆(Andrew S. Tanenbaum ,1944 年 3 月 16 日——)计算机科学家,阿姆斯特丹自由大学教授,专精操作系统,类 Unix 教学操作系统 Minix 作者,出版多部计算机科学教科书,如《现代操作系统》《计算机组成》等。Minix 一开始向使用者收取极低的授权费,直到 2004 年,塔能鲍姆重新架构与设计了整个系统,更进一步的将程序模块化,推出 MINIX 3。重新以 BSD 许可协议发布,成为开放源代码软件。MINIX 3 的目标是比Windows或Linux更安全,在当时塔能鲍姆那份获得欧盟研究委员会(EuropeanResearchCouncil)5 年 250 万欧元资助的研究计划书里,Tanenbaum 解释了为何他认为现有的操作系统不安全:最严重的可靠性及安全问题是与操作系统相关的那些。核心问题在于现有操作系统都不符合 POLA ——最低授权原则 (PrincipleOfLeastAuthority)。POLA说的是系统划分组件的方式,应当使必然存在于某个组件中的缺陷,不至于波及其他组件。每个组件仅应该得到完成它本身工作所需的权限,不多不少。具体来说,它应该无权读写属于其他组件的数据,无权读取它自身地址空间之外的任何计算机内存,无 权执行与它无关的敏感操作指令,无权访问不该访问的 I/O 设备,诸如此类。现有操作系统完全违反以上原则,结果就是造成众多可靠性及安全问题。Minix 的流行与威胁说起最流行的操作系统,我们也许会下意识地想到 Linux、Windows、macOS、iOS 和 Android 等一些当下主流的操作系统。但事实恐怕不是我们以为的那样,你可能不知道,但在英特尔近些年推出的所有处理器中都运行着一个操作系统。没错,这个系统正是 MINIX,就是因为英特尔,它成了世界上最流行的操作系统,不过这引起了人们的注意和担忧。之所以引起人们的担忧是因为现代英特尔处理器中都有一个核心部件 —— 英特尔管理引擎 (Intel ME-Intel's Management Engine),用来管理协调内部的诸多模块,尤其是传统芯片组整合进入之后,处理器已经差不多成了 SoC 单芯片系统,更需要一个“总管”,MINIX 正是负责这个工作。而一旦英特尔管理引擎受到危及,有可能给攻击者留下严重的后门。研究人员特别指出,由于其在初始化硬件、电源管理和启动主处理器等方面扮演重要角色,无法完全被禁用。这让安全研究人员甚为担忧,因为除了英特尔外,谁都无法审查有无后门(毕竟英特尔使用自己修改过的 MINIX 3 没有开源)MINIX 在处理器内部拥有自己的 CPU 内核和专属固件,完全独立于其他部分,而且完全隐形,操作系统和用户均不可见,运行权限更是达到了 Ring -3。要知道,我们日常使用的应用程序权限级别都是 Ring 3,操作系统内核的是 Ring 0,这也是一般用户能够接触到的最低权限,MINIX 竟然深入到了 Ring -3。事实上,即便是在休眠乃至关机状态下,MINIX 都在不间断运行,因为英特尔管理引擎要在处理器启动的同时就开始执行管理工作,还要负责芯片级的安全功能。这就使得 MINIX 拥有至高无上的地位,而且只要你的电脑使用的是英特尔近些年推出的处理器,都有一个它在默默运行,这使得它成为名副其实的世界上最流行的系统。Minix 和 LinuxLinux 是 Linus Torvalds受到 Minix 的影响而作成的(Linus 不喜欢他的 386 计算机上的 MS-DOS 操作系统,而安装了 Minix,并以它为样本开发了原始的 Linux 核心)。但是这种影响更多在于非技术层面,确切地说是一种精神上的“鼓舞”。在设计上,Linux 则和 Minix 相差很大,在 Linux 系统还没有自己的原生文件系统之前,曾采用 Minix 的文件系统。Minix 在核心设计上采用微核心,即将操作系统分成微核心和其上的提供文件系统、存储器管理、驱动程序等服务的服务程序;而 Linux 则和原始的 Unix 都采用宏内核。在 Linux 发展之初,双方还于 1992 年在新闻组上有过一场精彩的争论,被称为塔能鲍姆-林纳斯辩论。Minix 的作者和支持者认为使用宏内核是技术上的退步,而 Linux 的支持者认为 Minix 本身没有实用性。参考链接:https://www.oschina.net/news/1766https://www.oschina.net/news/90374/minix-the-most-popular-os-in-the-world?p=7http://www.360doc.com/content/19/0129/00/277688_811876443.shtml文章转载:OSC开源社区(版权归原作者所有,侵删)发布于 2022-03-14 10:07操作系统操作系统原理操作系统内核赞同 9添加评论分享喜欢收藏申请
Minix 操作系统有什么发展潜力吗? - 知乎
Minix 操作系统有什么发展潜力吗? - 知乎首页知乎知学堂发现等你来答切换模式登录/注册操作系统LinuxFreeBSDUnixBSDminix(操作系统)Minix 操作系统有什么发展潜力吗?关注者79被浏览56,328关注问题写回答邀请回答好问题 1添加评论分享9 个回答默认排序冯东编程等 2 个话题下的优秀答主 关注Minix 的发展走入了一条死胡同。Minix 的设计初衷是教学工具。从 3.0 开始提倡利用微内核的隔离性来达到可靠性。但是用这个方法获得的「可靠性」很值得怀疑。Minix 的设计者最爱举的例子是 driver 崩溃可以直接重启 driver 进程。但是问题在于,我们到底要不要搞清楚从一开始 driver 为什么崩溃这个原因。Minix 的假定是软件一定有 bug,所以我们应该用隔离性这种 defensive 机制来防止,而不是穷追源头。这种方法有一定道理,特别是最上层的大型应用(请 Google crash-only software)。但是 OS kernel 并不是一个复杂度很高的系统,而 driver 的规范虽然琐碎,其实复杂度也并不高。所以 OS 发展的早期,人们更关心找到崩溃的原因,解决它,提高代码本身的质量。而不是通过莫名其妙的重启来保证某一次系统的运行。后来你说:我现在就是要很高的可靠性。怎么办?好办,一方面,VxWorks 之类的系统经过几十年的改进,复杂度没有增加,但是可靠度不断上升,已经基本 bug-free 了。可以说,VxWorks 有 bug 的几率可能比 Minix 的 defensive 机制本身有 bug 的几率还低。另一方面,各种混合内核甚至 monolithic 内核也不断把 policy 代码分离出来作为用户态进程。而 Minix 因为许可证和代码分发机制,一直没有什么成熟度的进步。发布于 2013-05-09 20:50赞同 387 条评论分享收藏喜欢收起品雪谢邀,自我禁言中,不回答问题 关注Minix目前还是一个教学玩具,没有得到产业界的支持。但也很难说,未来会不会有什么转机。转机来了:http://www.cs.vu.nl/~ast/intel/Intel CPU's are running MINIX in addition to your OS of choice编辑于 2017-11-08 10:22赞同 52 条评论分享收藏喜欢
Minix_百度百科
x_百度百科 网页新闻贴吧知道网盘图片视频地图文库资讯采购百科百度首页登录注册进入词条全站搜索帮助首页秒懂百科特色百科知识专题加入百科百科团队权威合作下载百科APP个人中心收藏查看我的收藏0有用+10Minix播报讨论上传视频1987年发布的计算机操作系统Minix是一种基于微内核架构的类UNIX计算机操作系统,于1987年由Andrew S. Tanenbaum教授发布,它启发了Linux。20世纪80年代,由于AT&T所有的UNIX版权的限制,荷兰的Andrew S. Tanenbaum教授决定写一个不包含任何AT&T源代码的UNIX系统,名为MINIX(即小型的UNIX),并开放全部源代码给大学教学和研究工作,Minix于2000年重新改为BSD授权,成为自由和开放源码软件,为全球注册商标。Linus Torvalds虽然深受Minix的启发写出了第一版本的Linux内核,但这种启发更多的是精神上的,Linux的设计与MInix的微内核设计理念截然相反,采用了与UNIX相似的宏内核架构。中文名Minix性 质计算机操作系统研 发Anderw S.Tanenbaum最初发布1987年目录1产品介绍2发展3关系4授权方式▪概要问题▪法律问题5其他含义产品介绍播报编辑ablimit007 Minix的名称取自英语Mini UNIX,是一个迷你版本的类Unix操作系统(约300MB),其它类似的系统还有Idris,Coherent和Uniflex等。这些类Unix操作系统都是重新开发的,并没有使用任何AT&T的程序码。目前的Minix版本为Minix 3,是一个免费、开源的操作系统,设计目标是实现高可靠性、灵活性及安全性。其系统主要包括在核心模式下运作的微核心和在用户模式下作为一系列独立、受保护的进程运行的其余所有操作系统组件。 [1]发展播报编辑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版也有移植到以Motorola68000系列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语言编写。分为:内核、内存管理及文件管理三部份。关系播报编辑如果想了解类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启动。我如何获得MINIX 3呢?请访问Minix3官网 [1]我怎么得到关于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吗?可以。 [2]其他含义播报编辑MINIX除了是一种基于微内核架构的类UNIX计算机操作系统以外,还是智能车载系统的代名词。MINIX车载系统的全称是iVokaMINI X智能车载系统。 [3]MinixiVokaMINI X是上海博泰创始人应宜伦继iVoka语音云驾驶系统之后,推出的又一个基于“车生活”为核心的车联网创新型产品,可以把它理解成为接入车联网的入口,从而帮助用户去实现一件智能汽车所应具有的各类功能。可以将iVokaMINI X看作是一个车辆的“可穿戴设备”,只要插入汽车相应接口,手机上的iVokaMINI X APP就会与它产生连接,即插即用轻松快捷地实现普通汽车与 [4]新手上路成长任务编辑入门编辑规则本人编辑我有疑问内容质疑在线客服官方贴吧意见反馈投诉建议举报不良信息未通过词条申诉投诉侵权信息封禁查询与解封©2024 Baidu 使用百度前必读 | 百科协议 | 隐私政策 | 百度百科合作平台 | 京ICP证030173号 京公网安备110000020000世界上最流行的操作系统不是 Linux 或 Windows,而是 MINIX - 知乎
世界上最流行的操作系统不是 Linux 或 Windows,而是 MINIX - 知乎首发于开源评论切换模式写文章登录/注册世界上最流行的操作系统不是 Linux 或 Windows,而是 MINIXLinux中国已认证账号运行在“Ring -3” 的 MINIX你可能不知道,但是在你的英特尔系统里,除了你的主操作系统之外,还有一个操作系统在运行,这就是 MINIX。早在今年 5月,EFF 就发布了一篇文章,介绍了自 2008 年以来,这十年间英特尔发布的所有处理器都运行了一个修改版的 MINIX 3,它被称之为“管理引擎(ME)”。这个由计算机科学教授 Andrew Tanenbaum (对,就是那位早期曾经和 Linus Torvalds 论战过的教授)作为一个教育工具开发的类 Unix 操作系统内置于每一款新英特尔处理器内。MINIX 运行在你的 CPU 的 “Ring -3”(负数 3) 层上,虽然是你的 CPU,但是你无权访问它。你能够实际访问的最低的 “Ring” 是 “Ring 0”,你的操作系统(比如 Linux)内核就运行在这一层,而大多数用户程序则运行在 “Ring 3”(正数 3)上。这个运行在 “Ring -3” 的 MINIX 包括如下功能:完整网络堆栈、文件系统、许多驱动程序 (包括 USB、网络等),以及一个 Web 服务器!没错,Web 服务器。在你的 CPU 里面有一个秘密的 Web 服务器,您是不允许访问的,而且,显然,英特尔并不希望你知道。我们不知道这个 Web 服务器究竟有什么用途,也许是 CPU 厂商会用它来访问一些数据或者进行一些控制。但是这一切,你都不知道。据称,Google 正在积极从其内部服务器上移除这个管理引擎,显然 Google 对其安全风险感到忧虑。这个事情有两个有趣或者说疯狂的地方:首先,由于英特尔 CPU 的流行,所以,世界上最流行的操作系统恐怕不是 Windows,也不是 Linux,而是这个 MINIX——我们都是 MINIX 用户!其次,由于你根本没权限访问到“Ring -3”,而这个 MINIX 却能够完全访问你的整个系统——这就是一个巨大的安全风险,运行权限极大,但是从不更新。MINIX 作者表态在过去几天多家媒体报道了这一消息,以至于惊动了 Andrew 本人。他在个人网站上发表了公开信,强调自己并没有直接参与这个项目,如果这个系统有后门的话,这与他无关(他对此并没有明说只是暗示)。Andrew Tanenbaum 称,MINIX 3 在 2000 年决定采用 BSD 授权,原因是企业不喜欢 GPL 许可证,认为 GPL 会让他们花费许多时间精力金钱去修改代码,然后免费提供给竞争对手。他说,英特尔的工程团队在几年前接触了他,询问了 MINIX 3 大量的技术问题,要求他对 MINIX 3 进行大量改变,减少内存占用,选择性的关闭不需要的功能。在短暂的活跃之后双方进入了静默,直到现在媒体报道英特尔处理器都运行了 MINIX 3 他才知道。他对此感到吃惊,但并不在意,因为该操作系统是 BSD 授权,英特尔不需要付钱给他。他只是希望英特尔在部署了 MINIX 3 之后能通知他一下,这只是礼貌问题。参考:solidot,networkworld 发布于 2017-11-08 08:42minix(操作系统)英特尔 (Intel)中央处理器 (CPU)赞同 963133 条评论分享喜欢收藏申请转载文章被以下专栏收录开源评论Linux 与开源世界
Linux 文件系统之 MINIX 文件系统 - 知乎
Linux 文件系统之 MINIX 文件系统 - 知乎切换模式写文章登录/注册Linux 文件系统之 MINIX 文件系统Linux码农MINIX 文件系统与标准 UNIX 的文件系统基本相同,它由 6 个部分组成:①引导块;②超级块;③i 节点位图;④逻辑块位图;⑤i 节点;⑥数据块。对于一个普通的磁盘块设备来说,其各部分的分布见下图:整个块设备被划分成以 1KB 为单位的磁盘块。引导块是计算机加电启动时可由 ROM BIOS 自动读入的执行代码和数据盘块。但一个系统中并非所有盘设备都用于作为引导设备,所以对于不用于引导的盘片,这一盘块中可以不含代码。但任何盘块设备必须含有引导块空间,以保持 MINIX 文件系统格式的统一。即文件系统只是在块设备上空出一个存放引导块的空间。如果你把内核映像文件放在文件系统中,那么你就可以在文件系统所在设备的第 1 个块(即引导块空间)存放实际的引导程序,并由它来取得和加载文件系统中的内核映像文件。对于容量巨大的硬盘块设备,通常会在其上会划分出几个分区,并且在每个分区中都可存放一个不同的完整文件系统,见下图。图中表示有 4 个分区,分别存放着 FAT32 文件系统、NTFS 文件系统、MINIX 文件系统和 EXT2 文件系统。硬盘的第一个扇区是主引导扇区,其中存放着硬盘引导程序和分区表信息。分区表中的信息指明了硬盘上每个分区的类型、在硬盘中起始位置参数和结束位置参数以及占用的扇区总数,参见 kernel/blk_drv/hd.c 文件后的硬盘分区表结构超级块用于存放盘设备上文件系统的结构信息,并说明各部分的大小。其结构见下图(MINIX 文件系统):系统启动时会从磁盘的超级块中读取信息,初始化上图表中的数据结构。其中,s_ninodes 表示设备上的 i 节点总数。s_nzones 表示设备上以逻辑块为单位的总逻辑块数。s_imap_blocks和 s_zmap_blocks 分别表示 i 节点位图和逻辑块位图所占用的磁盘块数。s_firstdatazone 表示设备上数据区开始处占用的第一个逻辑块块号。s_log_zone_size 是使用 2 为底的对数表示的每个逻辑块包含的磁盘块数。对于 MINIX 1.0 文件系统该值为 0,因此其逻辑块的大小就等于磁盘块大小,都是 1KB。s_max_size是以字节表示的最大文件长度,这里不超过 4GB。当然这个长度值将受到磁盘容量的限制。s_magic 是文件系统魔幻数,用以指明文件系统的类型。struct minix_sb_info { unsigned long s_ninodes; //该成员用于描述 MINIX-FS 文件系统含有的 inode 数量。该值用于计算 Inode-Bitmap 和 Inode-Table 的大小 unsigned long s_nzones; //该成员用于描述 MINIX-FS 文件系统中含有的 Zone 的数量。该值用于计算 Zone-Bitmap。 unsigned long s_imap_blocks; //该成员用于描述 Inode-BitMap 占用 BLOCK_SIZE 的数量,Inode-BitMap 中的每个位表示一个 inode 的使用情况,如果某一个置位,那么对应的 minix_inode 就被使用,反之表示对应的 minix_inode 没有被使用。 unsigned long s_zmap_blocks; //该成员用于描述 Zone-BitMap 占用 BLOCK_SIZE 的数量。Zone-BitMap 中的 每个位表示一个 Zone 的使用情况,如果某一位置位,那么对应的 zone 就被 使用,反之表示对应的 zone 没有被使用。 //该成员用于描述第一个 data zone 所在的 block 号。Zone 分为两类,一类是 Reserved 的,用于存储 MINIX-FS 的系统信息,另外一类是 Data zone,用于 存储文件和目录的,而 s_firstdatazone 用于指向第一个 data zone 的 block 号 unsigned long s_firstdatazone; //MINIX-FS 将文件系统分成 BLOCK_SIZE 大小的数据块,BLOCK_SIZE 的大小由 s_log_zone_size 决定,其计算方法如下:BLOCK_SIZE = 1024 << s_log_zone_size unsigned long s_log_zone_size; unsigned long s_max_size; //s_imap[8] 是一个文件缓存数组。数组用于缓存 MINIX-FS 的所有 Inode-BitMap 内容。 struct buffer_head * s_imap[8]; //s_zmap[8] 是一个文件缓存数组,数组用于缓存 MINIX-FS 的所有 Zone-BitMap 内容 struct buffer_head * s_zmap[8]; //s_dirsize 用于描述 minix_dir_entry 结构的大小,minix_dir_entry 用于描述 一个 minix 目录。 unsigned long s_dirsize; unsigned long s_namelen; //s_namelen 用于描述文件或目录名字的大小 struct buffer_head * s_sbh; //s_sbh 用于缓存磁盘中 MINIX-FS 的超级快信息 struct minix_super_block * s_ms; //s_ms 用于指向 minix_super_block 在内存中的位置。 unsigned short s_mount_state; //s_mount_state 用于描述 MINIX-FS 的 mount 状态。};较低版本系统中使用一个全局的super_blocks[]来保存超级块,该数据有多少元素也就支持多少个文件系统,高版本使用全局的super_blocks链表。超级块表将在 super.c 程序的 mount_root()函数中被初始化,在 read_super()函数中会为新加载的文件系统在表中设置一个超级块项,并在 put_super()函数中释放超级块表中指定的超级块项。逻辑块位图用于描述盘上每个数据盘块的使用情况。除第 1 个比特位(位 0)以外,逻辑块位图中每个比特位依次代表盘上数据区中的一个逻辑块。因此逻辑块位图的比特位 1 代表盘上数据区中第一个数据盘块,而非盘上的第一个磁盘块(引导块)。当一个数据盘块被占用时,则逻辑块位图中相应比特位被置位。由于当所有磁盘数据盘块都被占用时查找空闲盘块的函数会返回 0 值,因此逻辑块位图最低比特位(位 0)闲置不用,并且在创建文件系统时会预先将其设置为 1。当向磁盘申请一个逻辑块时,对整个逻辑块位图进行搜索,寻找首个是 0的比特位,该比特位所在的序号即为该数据库的逻辑块号,然后把逻辑块号保存到i_data[]中。从超级块的结构中我们还可以看出,逻辑块位图最多使用 8 块缓冲块(s_zmap[8]),而每块缓冲块大小是 1024 字节,每比特表示一个盘块的占用状态,因此一个缓冲块可代表 8192 个盘块。8 个缓冲块总共可表示 65536 个盘块,因此 MINIX 文件系统 1.0 所能支持的最大块设备容量(长度)是 64MB。i 节点用于存放盘设备上每个文件和目录名的索引信息。i 节点位图用于说明 i 节点是否被使用,同样是每个比特位代表一个 i 节点。对于 1K 大小的盘块来讲,一个盘块就可表示 8192 个 i 节点的使用状况。与逻辑块位图的情况类似,由于当所有 i 节点都被使用时查找空闲 i 节点的函数会返回 0 值,因此 i节点位图第 1 个字节的最低比特位(位 0)和对应的 i 节点 0 都闲置不用,并且在创建文件系统时会预先将 i 节点 0 对应比特位图中的比特位置为 1。因此第一个 i 节点位图块中只能表示 8191 个 i 节点的状况。盘上的 i 节点部分存放着文件系统中文件或目录名的索引节点,每个文件或目录名都有一个 i 节点。每个 i 节点结构中存放着对应文件或目录的相关信息。所以图中i_mode ... i_zone[] 这些一条条信息是保存到磁盘中的inode信息,当需要某个读取inode信息时,会从i节点中读取一条对应的inode信息保存到内存中,同时是使用 i_zone[]进行初始化 inode结构中的i_data[], 所以在内存中使用的是i_data[] 保存数据块地址,当同步inode节点时,把内存中的i_data[] 刷到磁盘i_zone[]中。当创建一个inode节点时先从i节点位图中获取一个bit未使用的位,根据该bit位对应的位置下标(比如该bit位置为第1025的位置),根据下标从i节点中计算属于哪个数据块中,然后从对应的块中进行索引找到块中第n条i节点数据,然后从该i节点数据中i_zone[]中即可获取或者存放数据。如文件宿主的 id(uid)、文件所属组 id(gid)、文件长度、访问修改时间以及文件数据块在盘上的位置等。整个 i 节点结构共使用 32 个字节,见下图所示:i_mode 字段用来保存文件的类型和访问权限属性。其比特位 15-12 用于保存文件类型,位 11-9 保存执行文件时设置的信息,位 8-0 表示文件的访问权限,见下图文件中的数据存放在磁盘块的数据区中,而一个文件名则通过对应的 i 节点与这些数据磁盘块相联系,这些盘块的号码就存放在 i 节点的逻辑块数组 i_zone[]中。其中,i_zone[]数组用于存放 i 节点对应文件的盘块号。i_zone[0]到 i_zone[6]用于存放文件开始的 7 个磁盘块号,称为直接块。若文件长度小于等于 7K 字节,则根据其 i 节点可以很快就找到它所使用的盘块。若文件大一些时,就需要用到一次间接块了(i_zone[7]),这个盘块中存放着附加的盘块号。对于 MINIX 文件系统一个盘块中可以存放(1024 / 2)= 512 个盘块号,因此可以寻址 512 个盘块。若文件还要大,则需要使用二次间接盘块(i_zone[8])。二次间接块的一级盘块的作用类似与一次间接盘块,因此使用二次间接盘块可以寻址 512*512 个盘块。参见下图 所示:所以对于 MINIX 文件系统 1.0 版来说,一个文件的最大长度为(7 + 512 + 512*512)=262,663KB。这些 i_zone[]信息是保存在磁盘中的,当读取inode时会把这些 i_zone[] 刷到inode 中的 i_data[] 中,也即是在内存中以 i_data[]方式存在。另外,对于/dev/目录下的设备文件来说,它们并不占用磁盘数据区中的数据盘块,即它们文件的长度是 0。设备文件名的 i 节点仅用于保存其所定义设备的属性和设备号。设备号被存放在设备文件 i 节点的 zone[0]中。当所有 i 节点都被使用时,查找空闲 i 节点的函数会返回值 0,因此,i 节点位图最低比特位和 i 节点 0 都闲置不用。i 节点 0 的结构被初始化成全零,并在创建文件系统时将 i 节点 0 的比特位置位。欢迎关注公众号 Linux码农,获取更多干货编辑于 2021-11-20 14:30Linuxminix(操作系统)Windows 文件管理赞同 5添加评论分享喜欢收藏申请
minix: MINIX 3 系统官方源码 , 同步自 : https://github.com/Stichting-MINIX-Research-Foundation/minix
minix: MINIX 3 系统官方源码 , 同步自 : https://github.com/Stichting-MINIX-Research-Foundation/minix
登录
注册
开源
企业版
高校版
搜索
帮助中心
使用条款
关于我们
开源
企业版
高校版
私有云
Gitee AI
NEW
我知道了
查看详情
登录
注册
代码拉取完成,页面将自动刷新
捐赠
捐赠前请先登录
取消
前往登录
扫描微信二维码支付
取消
支付完成
支付提示
将跳转至支付宝完成支付
确定
取消
Watch
不关注
关注所有动态
仅关注版本发行动态
关注但不提醒动态
2
Star
15
Fork
9
MINIX 3 中文社区 / minix
代码
Issues
0
Pull Requests
0
Wiki
统计
流水线
服务
Gitee Pages
JavaDoc
PHPDoc
质量分析
Jenkins for Gitee
腾讯云托管
腾讯云 Serverless
悬镜安全
阿里云 SAE
Codeblitz
我知道了,不再自动展开
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
已有帐号?
立即登录
返回
cn-master
管理
管理
分支 (16)
标签 (14)
cn-master
freenode-registration-for-minix-by-saturn-96c65005
master
saturn-infratest-pleaseignore-20210817
R3.3.0
R3.2.1
R3.2.0
R3.1.8
R3.1.7
R3.1.6
R3.1.5
R3.1.4
R3.1.3
R3.1.2
R3.1.1
R3.1.0
v3.3.0
v3.2.1
v3.2.0
v3.1.8
v3.1.7
v3.1.6
v3.1.5
v3.1.4
v3.1.3b
v3.1.3a
v3.1.3
v3.1.2a
v3.1.2
v3.1.0
克隆/下载
克隆/下载
HTTPS
SSH
SVN
SVN+SSH
下载ZIP
登录提示
该操作需登录 Gitee 帐号,请先登录后再操作。
立即登录
没有帐号,去注册
提示
下载代码请复制以下命令到终端执行
为确保你提交的代码身份被 Gitee 正确识别,请执行以下命令完成配置
git config --global user.name userName
git config --global user.email userEmail
初次使用 SSH 协议进行代码克隆、推送等操作时,需按下述提示完成 SSH 配置
1
生成 RSA 密钥
2
获取 RSA 公钥内容,并配置到 SSH公钥 中
在 Gitee 上使用 SVN,请访问 使用指南
使用 HTTPS 协议时,命令行会出现如下账号密码验证步骤。基于安全考虑,Gitee 建议 配置并使用私人令牌 替代登录密码进行克隆、推送等操作
Username for 'https://gitee.com': userName
Password for 'https://userName@gitee.com':
#
私人令牌
新建文件
新建 Diagram 文件
新建子模块
上传文件
分支 16
标签 14
贡献代码
同步代码
创建 Pull Request
了解更多
对比差异
通过 Pull Request 同步
同步更新到分支
通过 Pull Request 同步
将会在向当前分支创建一个 Pull Request,合入后将完成同步
张铭
add README.md.
f4df74c
7154 次提交
提交
取消
提示:
由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
bin
保存
取消
common
保存
取消
crypto
保存
取消
dist/pf/sbin/pfctl
保存
取消
distrib
保存
取消
docs
保存
取消
etc
保存
取消
external
保存
取消
games
保存
取消
gnu
保存
取消
include
保存
取消
lib
保存
取消
libexec
保存
取消
minix
保存
取消
releasetools
保存
取消
sbin
保存
取消
share
保存
取消
sys
保存
取消
tests
保存
取消
tools
保存
取消
usr.bin
保存
取消
usr.sbin
保存
取消
.gitignore
保存
取消
.gitreview
保存
取消
LICENSE
保存
取消
Makefile
保存
取消
Makefile.inc
保存
取消
README.md
保存
取消
build.sh
保存
取消
Loading...
README
介绍
目前的 Minix 版本为Minix 3,是一个免费、开源的操作系统,设计目标是实现高可靠性、灵活性及安全性。其系统主要包括在核心模式下运作的微核心和在用户模式下作为一系列独立、受保护的进程运行的其余所有操作系统组件。你可将其用于研究操作系统,作为研究项目的基础,或用于微内核系统主导市场的商业(嵌入式)系统。
使用说明
中文使用教程 MINIX 3 中文站 - 使用文档
官方英文使用教程 MINIX 3 - Users Guide
关于
关于 MINIX 3 中文社区
MINIX 3 中文站始建于2022年,是一个非营利性网站。本站主要遵从于开源精神,不定期更新释放有关 MINIX 3 的技术资料与知识。详情参见 MINIX 3 中文社区 - 关于本站
关于该分支
由于 MINIX 3 英文官方社区已于2018年11月停止更新 MINIX 3 系统, 所以 MINIX 3 中文社区计划在原有代码的基础上创建一个新的分支并继续维护更新该分支上的 MINIX 3 源码。
详情参见 MEP-1 : 创建 MINIX 3 中文社区分支
空文件
Starred
15
Star
15
Fork
9
捐赠
0 人次
举报
举报成功
我们将于2个工作日内通过站内信反馈结果给你!
请认真填写举报原因,尽可能描述详细。
举报类型
请选择举报类型
举报原因
取消
发送
误判申诉
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。
取消
提交
简介
MINIX 3 系统官方源码 , 同步自 : https://github.com/Stichting-MINIX-Research-Foundation/minix
展开
收起
操作系统
微内核
暂无标签
https://www.minix3.cn/
C
等 6 种语言
C
78.2%
Roff
10.2%
Assembly
4.6%
Shell
3.7%
Makefile
1.6%
Other
1.7%
保存更改
取消
发行版
暂无发行版
贡献者
全部
近期动态
加载更多
不能加载更多了
编辑仓库简介
简介内容
MINIX 3 系统官方源码 , 同步自 : https://github.com/Stichting-MINIX-Research-Foundation/minix
主页
取消
保存更改
1
https://gitee.com/minix3cn/minix.git
git@gitee.com:minix3cn/minix.git
minix3cn
minix
minix
cn-master
深圳市奥思网络科技有限公司版权所有
Git 大全
Git 命令学习
CopyCat 代码克隆检测
APP与插件下载
Gitee Reward
Gitee 封面人物
GVP 项目
Gitee 博客
Gitee 公益计划
Gitee 持续集成
OpenAPI
帮助文档
在线自助服务
更新日志
关于我们
加入我们
使用条款
意见建议
合作伙伴
售前咨询客服
技术交流QQ群
微信服务号
client#oschina.cn
企业版在线使用:400-606-0201
专业版私有部署:
13670252304
13352947997
开放原子开源基金会
合作代码托管平台
违法和不良信息举报中心
粤ICP备12009483号
简 体
/
繁 體
/
English
点此查找更多帮助
搜索帮助
Git 命令在线学习
如何在 Gitee 导入 GitHub 仓库
Git 仓库基础操作
企业版和社区版功能对比
SSH 公钥设置
如何处理代码冲突
仓库体积过大,如何减小?
如何找回被删除的仓库数据
Gitee 产品配额说明
GitHub仓库快速导入Gitee及同步更新
什么是 Release(发行版)
将 PHP 项目自动发布到 packagist.org
评论
仓库举报
回到顶部
登录提示
该操作需登录 Gitee 帐号,请先登录后再操作。
立即登录
没有帐号,去注册
Installing MINIX 3
Installing MINIX 3
Installing MINIX 3
HOME
DOWNLOAD
SOFTWARE
DOCUMENTATION
NEWS
这篇附录说明了如何安装MINIX 3。完全安装MINIX 3需要一台至少具备16 MB内存、1 GB空闲硬盘空间、IDE或者USB CD-ROM和IDE硬盘的奔腾(或奔腾兼容)计算机。最小安装(不包括命令源码)需要8 MB内存和50 MB硬盘空间。现在还不支持SCSI磁盘。你可以在网页上阅读这篇安装指导,但是建议你将它打印下来并且在实际安装过程中一步一步地完成。这篇指导也有PostScript和PDF的版本。
1.准备工作如果你已经有了安装光盘(譬如是随书附送的),你可以直接跳过第1步和第2步。但是去下载页看看是否有更新的版本可用也许更明智。如果你想在模拟器软件上而不是在本地磁盘上运行MINIX 3,请先阅读第V部分。
下载MINIX 3 CD-ROM映像从下载页下载MINIX 3 CD-ROM映像。如果你没有IDE CD-ROM,那么可以使用USB CD-ROM映像或者USB memory stick映像。
创建可启动的MINIX 3 CD-ROM解压缩下载的文件。你将会得到一个以.iso为扩展名的CD-ROM映像和这份手册。这个.iso文件是一个逐比特的CD-ROM映像。将它刻录为一张可启动的CD-ROM光盘。
如果你使用Easy CD Creator 5,从文件菜单中选择“Record CD from CD image”并且将对话框中的文件类型从.cif改为.iso。选择映像文件并点击“Open”。然后点击“Start Recording”。
如果你使用Nero Express 5,选择“Disc Image or Saved Project”并且将类型改为“Image Files”,选择映像文件并点击“Open”。选择你的CD刻录机并点击“Next”。
如果你运行的是Windows Xp并且没有CD-ROM刻录程序,那么请从http://isorecorder.alexfeinman.com/isorecorder.htm获得一个自由的刻录程序来创建CD映像。
确定你的以太网芯片MINIX 3支持若干通过LAN、ADSL和cable进行网络连接的以太网芯片,包括Intel Pro/100、RealTek 8029和8139、AMD LANCE和一些3COM芯片。如果有的话,在安装过程中你将被问及你的所使用的以太网芯片。请查看你的文档来确定。如果你使用Windows,可以按照下列方法查看设备管理器:Windows
2000: Start > Settings > Control Panel > System >
Hardware > Device Manager Windows XP: Start > Control
Panel > System > Hardware > Device Manager System选项需要双击进入,其他的单击即可。展开"Network adapters"旁边的+号来查看你的网卡并记录下来。如果没有系统支持的芯片,你仍然可以运行没有以太网连接的MINIX 3。
对硬盘分区如果你喜欢的话,可以使用你的CD-ROM光盘在计算机上启动MINIX 3运行,但是你也可以为它在硬盘上创建一个分区,在分区之前,请确保将你的数据备份在如CD或者DVD光盘的外部储存介质上作为保险,以防万一出现错误。请保护好你有价值的资料。
除非你确定你是一个很有经验的硬盘分区方面的专家,否则强烈建议你阅读关于硬盘分区的在线指南。如果已经懂得如何分区,你可以创建一个至少有200 MB空闲空间的连续磁盘区域,如果你需要所有的命令源码,那么需要1 GB空间。如果不懂得怎么分区,但是你有如Partition
Magic这样的分区软件,你可以利用它创建一块空闲的磁盘区域。请确保至少有一个主分区(即主引导记录位置)可以使用。MINIX 3的安装脚本将会指导你在第一块或者第二块IDE硬盘的空闲区域上创建MINIX分区。
如果你使用Windows 95, 98, ME,或者2000,而且硬盘上只有一个FAT格式的分区,你可以使用presz134.exe程序缩小其尺寸以空出一块给MINIX使用的空间。如果是其他的情况,请阅读上面提及的在线指南。
如果你的硬盘空间大于128 GB,MINIX 3的分区必须完全在前128 GB的空间中(取决于磁盘块的地址分配方式)。
警告:如果你在硬盘分区时做了错误的操作,你将丢失硬盘上所有的数据。所以在开始之前请确保将你的数据备份到CD或者DVD光盘上。对硬盘分区的操作需要很小心,所以请谨慎地进行。
2.启动到现在为止,你应该已经在硬盘上分配空闲空间。如果你还没有完成,请现在就做,除非你愿意将一个现存的分区转换为MINIX 3的分区。
从CD-ROM启动 将CD光盘插入CD-ROM光驱并从CD-ROM启动计算机。如果你有16 MB的内存或更多,选择“Regular”;如果你只有8 MB内存,则选择“small”。如果计算机没有从CD-ROM而是从硬盘启动,重启并进入BIOS设置,改变启动设备的顺序,将CD-ROM启动放在硬盘启动之前。
以root身份登录当login提示符出现时,以root身份登录。在以root身份成功登录后,你将会看见shell提示符(#)。到这里,你已经有了一个完全运行着的MINIX 3。如果你键入:ls /usr/bin | more 你将会看到有哪些软件可以使用。敲击空格键来滚动列表。如果你想查看程序foo的功能,键入:man foo 在www.minix3.org/manpages也有软件的手册页。
开始安装脚本要开始在硬盘上安装MINIX 3,键入setup 在这个及其他所有的命令之后,请确保敲击回车键(ENTER/RETURN)。当安装脚本以冒号结束时,敲击回车键继续。如果屏幕突然变空白,按下CTRL-F3选择软件滚动(应该只会在很老的计算机上才用到)。注意CTRL-key的意思是在按下了CTRL键的同时按下“key”键。
3.安装到硬盘上这几个步骤与屏幕上的步骤一致。
选择键盘类型当被问及选择你的本国键盘类型时,选择你所使用的类型即可。这个和其他一些步骤在方括号中都有默认选项。如果你使用的是默认选项,只需要敲击回车键。在大多数的步骤中,默认选项总得来说是新手不错的选择。作为UNIX系统中的惯例,us-swap键盘类型交换了CAPS LOCK和CTRL键的功能。
选择你的以太网芯片你将会被问及你想安装可用的以太网驱动中的哪一个(也许没有适合你的以太网芯片的驱动)。请在选项中选择一个。
基本安装或者完全安装?如果你的硬盘空间紧张,可以选择M进行最小安装。最小安装将安装所有的二进制代码,但是安装的源代码只有操作系统的,并不包括命令的源代码。50 MB空间足够安装一个最小的系统。如果你有1 GB及其以上空间,可以选择F进行完全安装。
创建或选择一个分区安装MINIX 3首先你会被问及你是否是MINIX 3硬盘分区方面的专家。如果是的,你将会被引入到part程序中,它将完全给你编辑主引导记录的权限(同时也给了你能足够吊死自己的绳子)。如果你并不是专家,按下回车键进行默认操作,它是一个带领你一步一步地为MINIX 3格式化分区的指导程序。4.1: 选择一个分区安装MINIX 3一个IDE控制器最多允许有四个硬盘。Setup脚本将会寻找所有的硬盘并忽略任何错误消息。选择所列出的硬盘中的一个,并确认你的选择。如果你有两个硬盘驱动器,并且你决定把MINIX 3安装到第二个硬盘上,但是从硬盘启动系统又出现了问题,那么请看www.minix3.org/doc/using2disks.html
来获得解决方法。4.2: 选择一个磁盘区域现在选择一个区域来安装MINIX 3。你有三个选项可选: (1)选择一个空闲区域(2)选择一个用于覆盖的分区(3)删除一个分区来腾出空间并将其合并到相邻的空闲空间中如果你选择选项(1)或(2),键入区域号码即可。如果你选择(3),键入delete 然后在被问及时键入区域的号码。这个区域将被覆盖而且其中以前的内容将永远丢失。4.3: 确认你的选择你现在到了一旦确定就将无法回头的步骤。你将会被问及你是否愿意继续。如果你选择继续,那么你所选择的区域中的数据将永远丢失。如果你确信你的操作都是正确的,键入:
yes 然后按回车键。如果你想退出安装脚本并且不改变分区表,那么敲击CTRL-C。
重装选项如果你选择了一个已经存在了的MINIX 3分区,在这个步骤中你将可以选择擦除分区中所有数据的完全安装或者不影响你/home目录分区的重新安装。这样的设计意味着你可以将你个人的文件存放在/home目录中,并在需要的时候重装更新版本的MINIX 3且不会丢失你的个人文件。
选择/home目录的大小被选择了的分区将被分为三个子分区:root,
/usr,和/home。最后的子分区用于存放你个人的文件。应该根据你所要存放的文件的大小来指定/home分区的大小。你将会被问及确定你的选择。
选择块的大小系统支持1-KB,2-KB,4-KB和8-KB的磁盘块尺寸。但是要使用大于4-KB的磁盘块,你必须修改常数并重编译系统。如果你的内存有16 MB或更多,就用默认值(4 KB);其他情况使用1 KB。
等待坏块检测安装脚本现在将扫描每个分区寻找磁盘坏块。这将花费几分钟,大的分区可能需要10分钟或更多时间。请耐心等待。如果你绝对确定没有坏块,你可以敲击CTRL-C来退出扫描程序。
等待复制文件当扫描完成时,文件将被自动地从CD-ROM复制到硬盘中。每个文件复制完成后将被声明。当文件复制完成时,MINIX 3也就安装好了。键入以下命令来关闭系统:shutdown 因为MINIX 3在运行时保存了一些文件在RAM disk中,所以在关机时请都使用这样的方法关闭MINIX 3来将文件复制回硬盘中,从而避免丢失数据。
4.测试这个部分的内容将告诉你如何测试你的安装,在修改之后如何重建系统,还有以后如何启动。启动你的新MINIX 3系统。例如,如果你使用的是控制器0,硬盘0,分区3,键入boot
c0d0p3并以root身份登录。在很罕见的情况下,在BIOS中看见的驱动器号码(也是boot monitor使用的)可能与MINIX 3使用的不同。试试安装脚本首先声明的。这是一个创建root密码的好机会。请键入man passwd 来获得帮助。
编译测试套件要测试MINIX 3,在命令提示符(#)后键入cd
/usr/src/testmake并等待40个编译全部完成。键入CTRL-D登出。
运行测试套件要测试系统,以bin身份登录(必需)并键入cd /usr/src/test ./run
来运行测试程序。它们应该都能正确地运行,但是在快的计算机上需要20分钟,而在慢的计算机上则要超过一个小时。注意:你需要以root身份编译测试套件而以bin身份运行,这样的操作用来检测setuid比特是否运行正常。
重建整个操作系统如果所有的测试运行正常,那么现在你可以重建系统。因为系统是预建的,所以这项操作并不是必需的。但是如果你打算修改系统,你就需要懂得如何重建。并且重建系统是一个对它是否运行的不错的测试。键入:
cd /usr/src/tools make 来查看各种不同的可用选项。现在键入以下命令来制作一个可启动映像:
su make clean time make image 你已经重建好了包括所有内核和用户模式部分的操作系统。那并没有用很长时间,不是吗?如果你有一个软盘驱动器,你可以插入格式化过的软盘并键入以下命令来制作可启动软盘以备后用: make
fdboot 当你被问及完全路径时,键入:
fd0 因为现在还暂时没有MINIX 3下的USB软盘驱动器驱动程序,所以这个方法并不适用于USB软盘驱动器。要把刚刚更新的启动映像安装到硬盘上,键入:make hdboot
关机并重启进入新系统要启动新系统,首先键入以下命令关机:shutdown
这个命令保存文件并返回到MINIX 3 boot monitor。要得到boot monitor的功能摘要,在其中键入: help要得到更多的细节,请查看www.minix3.org/manpages/man8/boot.8.html。现在你可以取出CD-ROM或者软盘并关闭计算机。
下次启动
如果你有软盘驱动器,最简单的启动方法是插入软盘并按下主机上的电源开关,这只需要短短的几秒钟。或者你可以从MINIX 3 CD-ROM启动,并以bin身份登录,然后键入:shutdown
来回到MINIX 3 boot monitor。现在键入:
boot c0d0p0 来从控制器0,磁盘0,分区0上的操作系统映像启动。当然,如果你将MINIX 3安装到磁盘0,分区1上,就可以使用:
boot c0d0p1 等等。
第三种启动方法是设置MINIX 3分区为活动分区,并使用MINIX 3 boot monitor来启动MINIX 3或其他的操作系统。在www.minix3.org/manpages/man8/boot.8.html有详细的介绍。
最后,第四种方法是安装诸如LILO或者GRUB(www.gnu.org/software/grub)的多重启动引导软件。然后你可以很简单地启动任意一个操作系统。关于多重启动引导软件的详述已经超出了本指南的范围,但是在www.minix3.org/doc有一些关于它的信息。
5.使用模拟器软件还有一种完全不同的运行MINIX 3的方法,是在其他的操作系统之上运行。使用各种虚拟机、模拟器软件、仿真器软件可以达到这个目的。一些流行的软件如下
VMware
Bochs
QEMU 请阅读关于它们的文档。在模拟器软件上运行程序与在真实的计算机上相同,所以你应该回到第I部分并获取最新的CD-ROM光盘,然后从那里继续。
MINIX 3 中文社区: MINIX 3 中文社区始建于2022年,是一个非营利性组织。本站主要遵从于开源精神,不定期更新释放有关 MINIX 3 的技术资料与知识。
MINIX 3 中文社区: MINIX 3 中文社区始建于2022年,是一个非营利性组织。本站主要遵从于开源精神,不定期更新释放有关 MINIX 3 的技术资料与知识。
登录
注册
开源
企业版
高校版
搜索
帮助中心
使用条款
关于我们
开源
企业版
高校版
私有云
Gitee AI
NEW
我知道了
查看详情
登录
注册
MINIX 3 中文社区
MINIX 3 中文社区始建于2022年,是一个非营利性组织。本站主要遵从于开源精神,不定期更新释放有关 MINIX 3 的技术资料与知识。
https://www.minix3.cn/
已验证
zmgithub@163.com
关注
7
概览
仓库
2
Issues
Pull Requests
动态
成员
2
申请加入组织
申请加入组织
您正在申请加入MINIX 3 中文社区
角色
开发者
姓名
理由
取消
提交
申请已成功提交
请等待管理员审核,审核完成后你将收到系统通知
精选
minix
MINIX 3 系统官方源码 , 同步自 : https://github.com/Stichting-MINIX-Research-Foundation/minix
2
15
9
自定义精选项目
最多可选取 6 个公开仓库
还能勾选
5
个
组织介绍
组织介绍
MINIX 3 中文社区始建于2022年,是一个非营利性组织。本站主要遵从于开源精神,不定期更新释放有关 MINIX 3 的技术资料与知识。
如何加入
请发送申请邮件至 zmgithub@163.com
捐赠
如果您向 MINIX 3 中文社区进行捐赠,请前往: 捐赠页面。
联系
网站:
https://www.minix3.cn/
邮箱:
zmgithub@163.com
成就
2
仓库
0
PR
18
Star
15
Fork
仓库语言
C
78%
Roff
11%
Assembly
5%
Shell
4%
Makefile
2%
Other
1%
成员(2)
张铭
MINIX3 中文社区管理员
深圳市奥思网络科技有限公司版权所有
Git 大全
Git 命令学习
CopyCat 代码克隆检测
APP与插件下载
Gitee Reward
Gitee 封面人物
GVP 项目
Gitee 博客
Gitee 公益计划
Gitee 持续集成
OpenAPI
帮助文档
在线自助服务
更新日志
关于我们
加入我们
使用条款
意见建议
合作伙伴
售前咨询客服
技术交流QQ群
微信服务号
client#oschina.cn
企业版在线使用:400-606-0201
专业版私有部署:
13670252304
13352947997
开放原子开源基金会
合作代码托管平台
违法和不良信息举报中心
粤ICP备12009483号
简 体
/
繁 體
/
English
点此查找更多帮助
搜索帮助
Git 命令在线学习
如何在 Gitee 导入 GitHub 仓库
Git 仓库基础操作
企业版和社区版功能对比
SSH 公钥设置
如何处理代码冲突
仓库体积过大,如何减小?
如何找回被删除的仓库数据
Gitee 产品配额说明
GitHub仓库快速导入Gitee及同步更新
什么是 Release(发行版)
将 PHP 项目自动发布到 packagist.org
回到顶部
MINIX 3 FAQ
MINIX 3 FAQ
MINIX 3 - FAQ
HOME
DOWNLOAD
SOFTWARE
DOCUMENTATION
NEWS
目录 概要问题
法律问题
技术问题
在模拟器或者虚拟机上运行MINIX 3
概要问题
MINIX 3是什么?MINIX 3是一个为高可靠性应用而设计的自由且简洁的类UNIX系统。它特别适用于低端的个人电脑、资源受限制系统和嵌入式应用。你可以获得它所有的源代码,这使得它很适合于课堂教学和那些想了解操作系统怎样运行的自学者。
MINIX 3运行的硬件要求?你需要一台有4 MB内存、100MB空闲硬盘空间和CD-ROM(IDE)的Intel386及其以上计算机。现在暂时还不支持从USB CD-ROM启动。
我如何获得MINIX 3呢?3.1版本的MINIX 3包括在Andrew S. Tanenbaum和Albert S. Woodhull的《操作系统设计与实现,第三版》附带的光盘中。你可以在下载页中免费获得更新版本的MINIX 3。
我怎么得到关于MINIX 3的帮助呢?你可以浏览USENET
新闻组并发帖提问。你也可以使用邮件列表。
我是菜鸟。我该怎么学习在MINIX 3下编程?请阅读这篇指南来作为你的入门。
也许已经有人遇到过和我相同的问题。新闻组有编档保存吗?有。请看编档保存。
我找不到以前看过内容了。有什么办法可以找回来吗?也许吧。来试试这个时光机器。
我如何获得关于MINIX 3用于教学的信息?
这个网页会是你不错的开始。
我可以成为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声称符合POSIX标准。什么是POSIX呢?请阅读这篇关于POSIX的文档。
我该如何在MINIX 3环境中学习编程?请阅读这篇关于MINIX编程的文档。
我该如何建立一个大于8 MB的RAM disk?请阅读这篇关于RAM disks的文档。
我该怎么做才能在同一台计算机上启动多个操作系统?使用multiboot loader。请阅读这篇关于multiboot loaders的文档以获得更多的信息。
我该怎么避免vol命令和软盘的问题?请阅读这篇关于vol的文档。
为什么elle编辑器并不像手册页中所描述的那样运行?请阅读这篇关于elle的文档以获得更多的帮助。
我可以在不同操作系统的文件系统之间交换数据吗?可以。请阅读这篇关于数据交换的文档。
我该怎么样做才可以浏览并没有安装的手册页草案?
请使用nroff -man man_file | more命令。
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吗?可以。请阅读这篇关于MINIX和Bochs的文档。
我可以在Windows中使用Virtual PC来运行MINIX 3吗?可以。请阅读这篇关于MINIX和Virtual PC的文档。
修改于2006年1月25日Copyright 浙江大学 张恒 (neveria@21cn.com)