微内核操作系统
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
4) 提供了对分布式系统的支持
•
由于在微内核OS中,客户和服务器之间以 及服务器和服务器之间的通信,是采用消息传递 通信机制进行的,致使微内核OS能很好地支持分 布式系统和网络系统。事实上,只要在分布式系 统中赋予所有进程和服务器惟一的标识符,在微 内核中再配置一张系统映射表(即进程和服务器的 标识符与它们所驻留的机器之间的对应表),在进 行客户与服务器通信时,只需在所发送的消息中 标上发送进程和接收进程的标识符,微内核便可 利用系统映射表,将消息发往目标,而无论目标 是驻留在哪台机器上。
• •
微内核 提供必要服务的操作系 统内核;其中这些必要的服务 包括任务,线程,交互进程通 信(IPC,Inter-Process Communication)以及内存管 理等等。所有服务(包括设备 驱动)在用户模式下运行,而 处理这些服务同处理其他的任 何一个程序一样。因为每个服 务只是在自己的地址空间运行。 所以这些服务之间彼此之间都 受到了保护。
(3) 中断和陷入处理
• 大多数微内核操作系统都是将与硬件紧密相关的一小部分
•
放入微内核中处理。此时微内核的主要功能,是捕获所发 生的中断和陷入事件,并进行相应的前期处理。如进行中 断现场保护,识别中断和陷入的类型,然后将有关事件的 信息转换成消息后,把它发送给相关的服务器。由服务器 根据中断或陷入的类型,调用相应的处理程序来进行后期 处理。 在微内核OS中是将进程管理、存储器管理以及I/O 管理这些功能一分为二,属于机制的很小一部分放入微内 核中,另外绝大部分放在微内核外的各种服务器中来实现。 事实上,其中大多数服务器都比微内核大。这进一步说明 了为什么能在采用客户/服务器模式后,还能把微内核做 得很小的原因。
(1)足够小的内核
在微内核操作系统中,内核是指精心设计的、 能实现现代OS最基本的核心功能的部分。微内核 并非是一个完整的OS,而只是操作系统中最基本 的部分,它通常用于: ① 实现与硬件紧密相关的处理; ② 实现一些较基本的功能; ③ 负责客户和服务器之间的通信。 它们只是为构建通用OS提供一个重要基础, 这样就可以确保把操作系统内核做得很小。
微内核操作系统
数学与计算机科学学院 2011级计算机与科学技术二班 孙丽欣 黄思宁 罗宗 李凌茜
微内核操作系统
• 目录简介 • 技术优势 • 结构详解 • 采用微内核的操作系统 • 微内核操作系统的基本概念 • 微内核操作系统的优点 • 微内核操作系统存在的问题
目录简介
•
微内核(英文中常译作 µ-kernel或者micro kernel)。是一种能够
2) 增强了系统的可靠性
•
这一方面是由于微内核是出于精心设计和 严格测试的,容易保证其正确性;另一方面是它 提供了规范而精简的应用程序接口(API),为微内 核外部的程序编制高质量的代码创造了条件。此 外,由于所有服务器都是运行在用户态,服务器 与服务器之间采用的是消息传递通信机制,因此, 当某个服务器出现错误时,不会影响内核,也不 会影响其它服务器。
微内核操作系统的基本概念
为了提高操作系统的“正确性”、“灵活性”、 “易维护性”和”可扩充性”,在进行现代操作 系统结构设计时,即使在单处理机环境下,大多 也采用基于客户/服务器模式(即C/S模式)的微 内核结构,将操作系统划分为两大部分:微内核 和多个服务器。至于什么是微内核操作系统结构, 现在尚无一致公认的定义,但我们可以从下面四 个方面,对微内核结构的操作系统进行描述。
结构详解
•
微内核是内核的一 种精简形式。将通常与内 核集成在一起的系统服务 层被分离出来,变成可以 根据需求加入的选 件,这样就可提供更好的 可扩展性和更加有效的应 用环境。使用微内核设计, 对系统进行升级,只要用 新模块替换旧模块,不需 要改变整个操作系统。
采用微内核的操作系统
• • • •
Nucleus Chorus系统公司(Beaverton,oregon)设计,该公司总 部设在法国。 WindowsNT这种操作系统是围绕着Microsoft设计的微内核而设计的, 它紧跟在Mach设计之后。它提供线程调度、中断和意外事件管理、多处理器 同步和系统恢复(在掉电之后)。它永远不会被存储器管理程序调出内存, 而且它的执行也永远不能被其它进程中断。 OSF/1MK这是开放式系统基金会的OSF/1 UNⅨ操作系统使用微内核 研究的最新版本。它实现了Mach内核,并提供虚拟存储管理、进程间通信和 设备驱动程序管理。 UNⅨ SVR4 UNⅨ系统实验室公司推出了一个微内核的UNⅨ SVR4 (系统V版本4)。它实现了Nucleus微内核。它提供前面讨论的所有微内核 特征;然而,在微内核中不管理驱动程序。 WorkPlace OS IBM的微 内核是基于Mach微内核的。这种微内核在Motorola Power PC处理器上运 行,它是Intel80486和Pentium处理器的直接竞争者。WorkPl口,如DOS、OS/2、 Windows、U-NⅨ等。IBM微内核的体积很小(约40K),可处理基本的任 务,如存储器管理、线程管理、中断管理和消息传递。
(2) 低级存储器管理
• 通常在微内核中,只配置最基本的低级存储器管
理机制。如用于实现将用户空间的逻辑地址变换 为内存空间的物理地址的页表机制和地址变换机 制,这一部分是依赖于机器的,因此放入微内核。 而实现虚拟存储器管理的策略,则包含应采取何 种页面置换算法,采用何种内存分配与回收策略 等,应将这部分放在微内核外的存储器管理服务 器中去实现。
微内核操作系统的优点
• 1) 提高了系统的可扩展性 • 由于微内核OS的许多功能是由相对独立的
服务器软件来实现的,当开发了新的硬件和软件 时,微内核OS只须在相应的服务器中增加新的功 能,或再增加一个专门的服务器。与此同时,也 必然改善系统的灵活性,不仅可在操作系统中增 加新的功能,还可修改原有功能,以及删除已过 时的功能,以形成一个更为精干有效的操作系统。
•
应当指出,在微内核OS中,由于采用了非 常小的内核,以及客户/服务器模式和消息传递机 制,这些虽给微内核OS带来了许多优点,但由此 也使微内核OS存在着潜在的缺点。其中最主要的 是,较之早期OS,微内核OS的运行效率有所降 低。
谢谢观看!
5) 融入了面向对象技术
•
在设计微内核OS时,采用了面向对象的技 术,其中的“封装”,“继承”,“对象类”和 “多态性”,以及在对象之间采用消息传递机制 等,都十分有利于提高系统的“正确性”、“可 靠性”、“易修改性”、“易扩展性”等,而且 还能显著地减少开发系统所付出的开销。
微内核操作系统存在的问题
3) 可移植性
•
随着硬件的快速发展,出现了各种各样的 硬件平台,作为一个好的操作系统,必须具备可 移植性,使其能较容易地运行在不同的计算机硬 件平台上。在微内核结构的操作系统中,所有与 特定CPU和I/O设备硬件有关的代码,均放在内 核和内核下面的硬件隐藏层中,而操作系统其它 绝大部分(即各种服务器)均与硬件平台无关,因 而,把操作系统移植到另一个计算机硬件平台上 所需作的修改是比较小的。
技术优势
• 能够使得不同的API,文件系统,甚至不同的操作 系统的特性在一个系统中共存。 • 系统非常灵活。当运行一个应用程序时,只需把选 • • •
定的系统服务加载到系统中即可。而修改了服务以后可以 通过联机进行测试;并不需要重新构建或者启动一个新的 内核,他们并不影响系统的运行。 系统服务或者设备驱动故障和与它们有关的运行任 务是隔绝的。 依存关系的服务器系统可以加以限制,使为安全重 要至关信赖的计算基数的应用可被削减。 这种由微内核所决定的结构(IPC,多线程)能够 应用在所有的应用程序和服务上。一个精炼的微内核接口 能够有演绎成更多模块的系统结构。