1.2.1 Minix

minix(1.0-2.0)源码 Minix原来是荷兰阿姆斯特丹的Vrije大学计算机科学系的Andrew S. Tanenbaum教授所发展的一个类Unix操作系统。全部的程序码共约12,000行,并置于他的著作Operating Systems: Design and Implementation(ISBN 0-13-637331-3)的附录里作为范例。Minix的系统要求在当时来说非常简单,只要三片磁片就可以启动。   全套Minix除了起动的部份以汇编语言编写以外,其他大部份都是纯粹用C语言编写。分为:内核、内存管理及档案管理三部份。   Minix原始是设计给1980年代到1990年代的IBM PC和IBM PC/AT兼容电脑上执行。1.5版也有移植到已Motorola 68000系列CPU为基础的电脑上(如Atari ST,Amiga,和早期的Apple Macintosh)和以SPARC为基础的机器(如升阳sun公司的工作站)。2.0版则只有x86架构的版本。 立即下载

《鸟哥的Linux私房菜 基础学习篇(第三版)》第1章Linux是什么,本章介绍为何Linux可以免除专利软件之争,并且了解到Linux为何可以同时在个人计算机与大型主机上面大放光彩。本节为大家介绍Minix。


1.2 Torvalds的Linux开发

我们前面一节当中,提到了UNIX的历史,也提到了Linux是由芬兰人Torvalds所开发的。那么为何托瓦兹可以开发Linux呢?凭空想象而来的,还是有什么渊源?这里我们就来谈一谈!

1.2.1 Minix

Linus Torvalds(托瓦兹, 1969年出生)的外祖父是赫尔辛基大学的统计学家,他的外祖父为了让自己的小孙子能够学点东西,所以从小就将托瓦兹带到身边来管理一些微计算机。在这个时期,托瓦兹接触了汇编语言(Assembly Language),那是一种直接与芯片"对谈"的程序语言,也就是低级语言,必须要很了解硬件的架构,否则很难以汇编语言编写程序的。

在1988年间,托瓦兹顺利进入了赫尔辛基大学,并选读了计算机科学系。在就学期间,因为学业的需要与自己的兴趣,托瓦兹接触到了UNIX这个操作系统。当时整个赫尔辛基只有一部最新的UNIX系统,同时仅提供16个终端机。还记得我们上一节刚才提过的,早期的计算机仅有主机具有运算功能,终端机仅负责提供输入/输出而已。在这种情况下,实在很难满足托瓦兹的需求,因为光是等待使用UNIX的时间,就很耗时,为此,他不禁想到:"我何不自己搞一部UNIX来玩?"不过,就如同Stallman当初的GNU项目一样,要写内核程序,谈何容易?

不过,幸运之神并未背离托瓦兹,因为不久之后,他就知道有一个类似UNIX的系统,并且与UNIX完全兼容,还可以在Intel 386机器上运行的操作系统,那就是我们上一节提过的,谭宁邦教授为了教育需要而编写的Minix系统!他在购买了最新的Intel 386的个人计算机后,就立即安装了Minix这个操作系统。另外,上个小节当中也谈到,Minix这个操作系统是有附上源码的,所以托瓦兹也经由这个源码学习到了很多的内核程序设计的设计概念!

minix 1.1内核源代码 这个资料是minix1.1的源代码,是学习操作系统设计与实现的绝好的材料,希望对你有用!!!! 立即下载

相关推荐

操作系统设计与实现 minix2 版本

操作系统设计与实现 minix2版本, 经典著作,linus开发linux使用的教材

Minix之父,谭宁邦简介

谭宁邦 国籍(nationality):美国人 英文名:Andrew Stuart Tanenbaum 可以翻译为:安德鲁 斯图尔特 塔嫩鲍姆 出生日期(born):1944年3月16母校(alma mater):(Massachusetts Institute of Technology, University of California, Berkeley)麻省理工学院,加利福尼亚大学伯克...

谭宁邦 6431

minix2.0完整源码

包含/include的系统头文件,是最完整的minix2的源码。 由于我写的那个minix解析器出了点问题,所以从minix文件系统中抓出来的文件,超过5K就下载不正常乐。还有就是1.0---〉2.0的文件系统兼容有了点问题,导致这个压缩包include目录下的大文件不全。其他的还是好的。

操作系统的设计与实现(笔记5)——minix的结构

最底层捕获所有的中断和陷入,完成进程调度,并向高层提供一个采用消息进行通信的独立顺序进程模型。该 层的代码有两大主要功能。第一是捕获陷入和中断、保存和恢复寄存器、调度以及向高层提供一个独立顺序进程模 型。第二是处理消息机制:检查目标进程的合法性、定位物理内存中的发送和接收缓冲区、以及从发送方向接收方 拷贝数据。其中中断处理的最底层部分用汇编语言编写,其余部分和其他层次用C语言编写。 第二层包括...

wiscourper的博客 2560

简单shell命令解释器_minix3.1.8环境

基于minix3.1.8实现的简单shell命令解释器,实现了cd内部命令,外部命令,以及简单的重定向和无名管道。可能适用于上海交通大学操作系统课程设计。

Linux发展历程中相关人物总结

我们一定要向前辈们致以深深地敬意,没有他们,就没有今天的Linux这样优秀系统存在了(下图所示)。 unix诞(蛋)生于 1969年的贝尔实验室 Andrew S. Tanenbaum(谭宁邦) Minix开发者,用于教学 1984 R...

51DevOps-刺天冬 1042

告别黑盒:深入解析西部数据UFS芯片的44个SMART健康参数(附高通XBL读取源码)

本文深入解析西部数据UFS芯片的44个SMART健康参数,结合高通XBL启动加载层源码,提供了一套完整的健康状态诊断方法论。从SCSI命令层封装到数据结构映射,详细介绍了如何在高通平台早期启动阶段捕获UFS健康状态,帮助工程师实现预测性维护。

weixin_30600197的博客 427

03.07 Linux发展史

Linux发展史1969年,Unix诞生于贝尔实验室。 80年代初期,Andrew S.Tanenbaum(谭宁邦)开发了用于教学的Unix系统,命名为MINIX。将MINIX系统运行于x86的PC计算机平台。 1984年,Richard Stallman发起了开发自有软件基金会,并成立了自有软件基金会。 1990年,芬兰赫尔辛基大学学生Linux Torvalds 首次接触MINIX系统。

qunchao_Blog 610

《基于Yolo算法的火灾检测系统设计与实现》开题报告

在消防安全领域,火灾对生命财产安全构成严重威胁。传统的火灾检测手段存在诸多不足,如误报率高、检测范围有限、响应速度慢等。基于 Yolo 算法的火灾检测系统能够利用深度学习技术,实现对火灾的高效、精准检测,具有重要的现实意义。         从社会安全角度看,该系统可以广泛应用于各类公共场所、工业厂房和居民住宅,实时监测火灾隐患,及时发出警报,为人员疏散和消防救援争取宝贵时间,有效降低火灾造成的人员伤亡和财产损失,保障社会公共安全。

m0_69704149的博客 1384

Vivado 2021.1 实战:手把手教你用IEEE1735 V2加密你的Verilog源码(附完整TCL命令)

本文详细介绍了在Vivado 2021.1中使用IEEE1735 V2标准加密Verilog源码的全流程,包括许可证申请、密钥文件配置、TCL命令执行及加密后验证。通过实战步骤和完整TCL命令,帮助开发者有效保护FPGA设计知识产权,确保核心算法安全。

weixin_42706667的博客 191

MINIX 1.0 文件系统的实现(C/C++实现)

在硬盘的主引导记录块中除了没有用到的引导程序外,在其包含的第一个物理扇区的尾部(引导标识0x55aa的前面)是一个64字节的分区表(典型的IBM Partition Table),其中每个分区表项占用16字节,共有4个分区表项。如果 i 节点对应的是一个目录,则在该 i 节点的 i_zone 数组对应的逻辑块中会保存所有子文件和子目录的目录项信息。所以,当需要访问一个文件时,需要根据文件的全路径(例如/bin/sh)从根节点找到子目录的 i 节点,然后再从子目录的 i 节点找到文件的 i 节点。

Jaxonic的博客 1217

光栅衍射有入射角时_衍射型多焦点人工晶体光学原理

多焦点人工晶体如何把光线分成多个焦点的?这个问题大部分专业书只是蜻蜓点水,并没有讲明白。希此文粗浅的解释,能帮您加深理解,请多指正。接下来,我将按照一下历史发展的顺序讲解一下:光的认识、菲涅尔灯塔(菲涅尔透镜)、菲涅尔波带盘(半波带盘)、多焦点人工晶体。一:首先复习一下光的认识历史。我们现在都知道光是一种电磁波,具有波粒二相性,但是认识光的本质也经历非常曲折漫长的过程。牛顿时代的几何光...

weixin_28963467的博客 2352

熟悉Minix3.1.2a操作系统的进程管理

一、目的 熟悉 Minix 操作系统的进程管理 学习 Unix 风格的内存管理 二、内容与设计思想 修改Minix3.1.2a的进程管理器,改进brk系统调用的实现,使得分配给进程的数据段+栈段空间耗尽时,brk系统调用给该进程 分配一个更大的内存空间,并将原来空间中的 数据复制至新分 配的内存空间,释放原来的内存空间,并通知内核映射新分配的内存段。 三、使用环境 Minix,Moba 四、实验过程 1、完成安装minix3.1.2系统并配置相关设置。 要先编译Minix再修改内核。 2、PM是用户进程,p

张嘉睿的博客 1371

华为OD机试 - 名字的漂亮度(Java 牛客练习题)

本专栏包含了最新最全的2023年华为OD机试真题,有详细的分析和Java解答。已帮助1000+同学顺利通过OD机考。专栏会持续更新,每天在线答疑。每个字母都有一个“漂亮度”,范围在1到26之间。没有任何两个不同字母拥有相同的“漂亮度”。给出一个字符串,该字符串仅由小写字母组成,定义这个字符串的“漂亮度”是其所有字母“漂亮度”的总和。给出多个字符串,计算每个字符串最大可能的“漂亮度”。第一行一个整数N,接下来N行每行一个字符串。数据范围:输入的名字长度满足。每个字符串可能的最大漂亮程度。

学Java,找哪吒 1786

【Python机器学习】主成分分析(PCA):高维数据的“瘦身术“

主成分分析(PCA)的历史可以追溯到1901年,当时Karl Pearson首次提出了这个概念。在计算机还不存在的年代,PCA是一个纯粹的数学构想,用来简化多变量数据的分析。几十年后,当计算机出现时,PCA成为了数据分析中最早实现的算法之一。从那时起,超过一个世纪的发展中,PCA一直保持着其核心的理论框架和实用价值,这本身就是对这个方法深刻科学性的证明。在现代深度学习时代,许多人可能会认为PCA已经过时了。但事实恰好相反。

nmdbbzcl的博客 981

minix3.2.1安装x11需要更换软件源

minix3.3没有x11,要体验只能安装3.2.1 minix3.2.1的软件源是ftp://开头已经不能使用,minix3.3的软件源http://开头,仍然可以用。在浏览器地址更改路径中的版本号,能够访问,因此可以直接把软件源替换成http的。 pkgin的配置文件位置: /usr/pkg/etc/pkgin/repositories.conf 把里面的ftp://xxxx,替换成 http://www.minix3.org/pkgsrc/packages/$osrelease/$arch

javenxu_cn的博客 811

pytest学习和使用19-pytest断言失败后,怎样保持后续的断言继续执行?(pytest-assume)

【代码】pytest学习和使用19-pytes断言失败后,怎样保持后续的断言继续执行?

虫无涯的博客 1391

使用git提取Minix_R3.2.1源码

安装Minix就是为了深入学习操作系统

u013020306的专栏 1302

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

minixfromscratch项目详解:如何在QEMU上搭建MINIX 2.0.0与3.1.0开发环境

minixfromscratch项目是一个专为《MINIX》书籍版本(2.0.0和3.1.0)打造的开发与编译环境,它能够帮助开发者在QEMU模拟器上轻松搭建和运行MINIX操作系统,是学习和研究MINIX内核及系统开发的理想选择。 ## 项目核心功能与优势 minixfromscratch项目为MINIX开发者提供了一站式的开发解决方案,主要具有以下核心功能和优势: - **双版本支持**

gitblog_00796的博客 517

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

minix v3 on vmvare

eclipse下恢复代码提示功能Minix3下添加新用户和安装XwindowsVmware 下安装Minix3.1.2acmd posted @ 2009年4月06日 13:50 in problems , 63 阅读 <br /> 在minix3.org上下载的一个zip格式的压缩文件,解压后是个iso文件,在vmware下创建新的系统没问题,安装的时候出错了,错误如下:<br />VMware Fusion internal monitor error <br />*** vcpu-0:ASSERT v

ihuntm的专栏 1069

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

MINIX3 - 安装+使用

下载     MINIX3     3.0不支持图形界面    3.2.1支持图形界面 安装注意点 一路回车(中间有选项提示输入yes/no,选择yes 网络方面选NAT 和1.auto 安装图形界面 #pkgin update #pkgin install x11 #reboot #passwd 图形界面不支持无密码登陆 #xdm 进入图形界面的命令

baidu_33012579的博客 1082

minix文件系统源码分析之inode.c(基于linux1.2.13)

该文件是实现软链接相关的功能。我们可以了解到软链接的实现原理。 /* * linux/fs/minix/symlink.c * * Copyright (C) 1991, 1992 Linus Torvalds * * minix symlink handling code */ #ifdef MODULE #include <linux/module.h> #e...

标子 的专栏 829

MINIX3.1.2的X-windows启动问题处理

分析原因:> The problem youre experiencing is caused by the fact that Minix > currently doesnt have a Virtual Memory system. As a result, X-Windows > must rely on REAL memory to operate. ... > You can

welcomejzh的专栏 1224

minix文件系统源码分析之bitmap.c(基于linux1.2.13)

/* * linux/fs/minix/bitmap.c * * Copyright (C) 1991, 1992 Linus Torvalds */ /* bitmap.c contains the code that handles the inode and block bitmaps */ #ifdef MODULE #include <linux/module.h...

标子 的专栏 431
上一篇: 1.1.3 关于GNU项目
下一篇: 1.2.2 对386硬件的多任务测试
极客老李
博客等级 码龄14年 2粉丝 30原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值