ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

王道操作系统:1.4、操作系统结构

2022-08-20 13:01:21  阅读:147  来源: 互联网

标签:1.4 功能 操作系统 王道 内核 模块 微内核 服务器


操作系统结构

分层法

概念

是将操作系统分为若干层,最底层(层0)为硬件,最高层(层N)为用户接口,每 层只能调用紧邻它的低层的功能和服务(单向依赖)

图示

优点

①便于系统的调试和验证,简化了系统的设计和实现

②易扩充和易维护

问题

①合理定义各层比较困难

②效率较差,各层之间都有相应的层间通信机制,这无疑增加了额外的开销,导致系统效率降低

模块化

概念

是将操作系统按功能划分为若干具有一定独立性的模块,各模块之间能够通过接口进行通信

图示

衡量独立性的标准

内聚性,模块内部各部分间联系的紧密程度。内聚性越高,模块独立性越好。

耦合度,模块间相互联系和相互影响的程度。耦合度越低,模块独立性越好。

优点

①提高了操作系统设计的正确性、可理解性和可维护性

②增强了操作系统的可适应性

③加速了操作系统的开发过程

缺点

①模块间的接口规定很难满足对接口的实际需求

②各模块设计者齐头并进,每个决定无法建立在上一个已验证的正确决定的基础上,因此无法找到一个可靠的决定顺序。

(宏、大)内核

概念

将系统的主要功能模块都作为一个紧密联系的整体运行

在核心态,从而为用户程序提供高性能的系统服务

类似公司刚成立时老板要管很多事情

举例

Windows、Android、 iOS、 macOS、 Linu

基于宏内核的构架,广泛吸取微内核

构架的优点而后揉合而成的混合内核

微内核

目的

实现高可靠性,一个模块中的错误只会使这个模块崩溃,而不会使整个系统崩溃

概念

将内核中最基本的功能保留在内核,而将那些不需要在核心态执行的功能

移到用户态执行,从而降低内核的设计复杂性

公司壮大后老板只需关键决策,底下的事情员工去做

移出内核的操作系统代码根据分层的原则被划分成若干服务程序,它们的执行相互独立,交互则都借助于微内核进行通信

对操作系统的分类

微内核(机制)

概念
②一些较基本的功能
①与硬件处理紧密相关的部分
③客户和服务器之间的通信

多个服务器(策略)

概念
实现操作系统中的绝大部分功能的一组服务器(进程)
举例
实现对进程(线程)进行管理的进程(线程)服务器
实现虚拟存储器管理功能的虚拟存储器服务器
运行在用户态

图示(单机环境)

基本功能

①进程(线程)管理

通信、切换、调度

②低级存储器管理

页表等

③ 中断和陷入处理

注:一个功能是一分为二的放在内核和服务器,不能说这个功能完全是由微内核实现,微内核放的是与硬件紧密相关的一小部分和最和基本的功能

特点

①扩展性和灵活性

②可靠性和安全性

③可移植性

④分布式计算

缺点

性能问题,因为需要频繁地在核心态和用户态之间进行切换,操作

系统的执行开销偏大

外核

概念

对机器进行分区,给每个用户整个资源的一个子

集,运行在内核态

任务

为虚拟机分配资源,并检查使用这些资源的企图,以确保没有机器会使用他人的资源

每个用户层的虚拟机可以运行自己的操作系统,但限制只能使用已经申请并且获得分配的那部分资源

优点

减少了映射层,只需要记录已经分配给各个虚拟机的有关资

源即可

将多道程序(在外核内)与用户操作系统代码(在用户空间

内)加以分离

课后习题

微内核描述

①内核足够小

②基于客户/服务器模式

③应用“机制与策略分离”原理

④采用面向对象技术

标签:1.4,功能,操作系统,王道,内核,模块,微内核,服务器
来源: https://www.cnblogs.com/zxgblog/p/16607543.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有