CHS_01.1.4+操作系统体系结构 一

CHS_01.1.4+操作系统体系结构 一

  • 操作系统的体系结构 也就是操作系统的内核应该怎么设计这样一个问题
    • 操作系统的内核

在这个小节中 我们会学习

操作系统的体系结构 也就是操作系统的内核应该怎么设计这样一个问题

在这里插入图片描述

那这个小节的内容我们只需要做简要的了解就可以了 我们考试中常考的是这样的两种体系结构 一种叫大内核 一种叫微内核

那经过我们之前的学习 我们知道计算机系统的层次结构是这样子的 但是操作系统的内部其实还可以再进行进一步的划分

一部分是内核的功能 另一部分是非内核的功能 操作系统最核心的那些功能需要放在操作系统的内核当中

操作系统的内核

在这里插入图片描述

比如说时钟管理 中断处理 还有原语另外呢 还有之后我们要学习的进程管理 存储器管理 设备管理等等

这些功能都是要放在操作系统内核当中的 那那这儿提到的时钟管理其实就是用我们之前提到过的时钟中段来实现了

计算机计时的功能想要实现程序并发 就必然离不开始终管理这个

很重要的内核功能 那中断处理呢就不再多解释了 之前已经举了很多例子 另外呢 还有一种特殊的程序叫做原语

原语这种程序 它具有原子性 所谓的原子性就是说这种程序要么就一气呵成的全部运行完成 要么就是不运行

它的执行过程是不可被中断的 也就是说 在执行原语的这一小段程序的过程当中

即使有外部中断信号过来了 那cpu也会继续把原语执行完成 才去处理那个外部中断信号

总之 我们这儿列举的最下面这一层的这三个东西 适合硬件结合最为紧密的

所以他们必须放在操作系统的内核当中 那其实像Ubuntu、CentOS等等这些我们耳熟能详的linux操作系统

这些系统的开发团队 他们主要干的事情其实是在实现非内核的功能 而这些个操作系统的内核使用的就是linux的内核

那同学如果不知道这些什么东西的话也无所谓 这个不需要深究 总之 内核是操作系统最核心最基本的部分

它由一系列的内核程序组成 这些内核程序必须运行在内核态
在这里插入图片描述

那刚才我们提到的最底层的这三个部分是与硬件关联最紧密的模块

这些功能是必须放在内核当中的 还有一些管理相关的功能 向进程管理 存储器管理

对于这些功能的管理更多的是对数据结构的一个操作 而不会直接涉及到硬件

所以 有的操作系统并不把这些管理功能放在内核当中 而只在内核当中保留与硬件接触最紧密的这些部分
在这里插入图片描述

因此 这就引出了两种截然不同的内核的设计方法 把所有的这些功能都包含在操作系统内核当中的

这种结构就叫做大内核 而如果内核当中只保留与硬件关系最紧密的这些部分

那么这种内核就叫做微内核 那我们需要注意的是 如果采用的是微内核的这种结构的话

那么 属于内核的这些功能是需要运行在内核态的 而不属于内核的上面的这些功能就需要运行在用户态

这会对我们系统的性能造成一定的影响 那我们用更直观的例子来体会这一点

那假设现在有两种体系结构的系统 第一个系统 它采用的是大内核的体系结构

那么 由于进程管理 存储管理等等这些这些功能都是被划分在内核当中的 所以这些功能的处理都需要运行在内核态

而只有应用程序是运行在用户台的 而对于采用微内核结构的操作系统来说

只有和硬件联系最紧密的 这些功能被划分在了内核当中 只有这些功能是需要在内核太下才可以执行的

而其他的这些功能模块在用户态下就可以运行 那现在来看这样一个故事
在这里插入图片描述

假设现在这个应用程序想要请求操作系统的服务 并且这个服务的背后需要同时涉及到进程管理 存储管理 设备管理这几个功能

如果采用的是大内核的体系结构的话 那么应用程序向操作系统提出服务的请求

这个时候 cpu会从用户他切换为核心态 然后开始运行这一系列的内核程序

而如果采用的是v内核的体系结构的话 应用程序向操作系统提出服务的请求

接下来 操作系统的这几个模块都需要为应用程序服务 而进程管理这个模块 在处理应用程序的请求的时候 他同样也需要得到内核的支持 所以这个模块对内核的访问就涉及到了

cpu从用户态转到内核态 服务完成了之后又会从内核态再转回用户态

然后 同样的存储管理和设备管理这两个模块 他们也在完成相应的工作的时候 同样也需要得到内核的支持 因此每一个模块都需要请求内核的服务

那每一次请求内核的服务都会涉及到一个cpu状态转换的过程 因此 如果我们采用的是大内核的

体系结构的话 那么应用程序的这个请求只需要两次变态就可以了 这一次 这一次

而如果采用的是v内核的体系结构的话 那么整个过程的处理就需要有六次变态

这需要注意的是 这个cpu的状态转换 这个过程其实是有成本的 需要消耗不少的时间 因此频繁的切换cpu的状态是会降低系统性能的

对了 这个地方也需要强调一下 大家在考试的时候不要使用变态这个词 这个只是我们为了方便描述 然后使用的一种描述方式

大家在考试答题的时候需要写的正规一点 就是要说成是cpu状态的转换

好的 那么这个小姐 我们介绍的是操作系统的体系结构 分为大内核和微内核相 通过刚才例子相信大家也能够体会他们俩的

一个区别大内核的优点就是性能高 因为应用程序在请求内核服务的时候 这个变态的过程会比较少

而v内核的缺点呢是需要频繁的在核心态和用户态之间切换 所以它的性能会更低一些

不过 非内核的优点呢是 它的内核功能很少 所以结构清晰 方便程序员维护

而大内核 由于他们把很多很多功能都放在内核里 所以内核代码就会变得比较庞大 结构混乱 难以维护

这也不难理解 那典型的大内核操作系统 像linux unix这些都是大内核的

然后 微内核的操作系统的话 大家可以去看一下windows NT 当然这些并不是考试考察的重点 考试的时候只会考察

啊 这两种体系结构 它们的优缺点 大家只要能够有个印象就可以好的
在这里插入图片描述

推荐一个零声学院免费公开课程,个人觉得老师讲得不错,分享给大家:Linux,Nginx,ZeroMQ,MySQL,Redis,fastdfs,MongoDB,ZK,流媒体,CDN,P2P,K8S,Docker,TCP/IP,协程,DPDK等技术内容,立即学习

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/306018.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

数模学习day08-拟合算法

这里拟合算法可以和差值算法对比 引入 插值和拟合的区别 与插值问题不同,在拟合问题中不需要曲线一定经过给定的点。拟 合问题的目标是寻求一个函数(曲线),使得该曲线在某种准则下与所 有的数据点最为接近,即曲线拟…

手把手教你从阿里云容器仓库拉取镜像

如何从阿里云容器镜像仓库拉取镜像 背景,我的服务器无法访问外网,那么在需要使用一些容器镜像的时候就无法从阿里云容器镜像仓库拉取镜像,那怎么办呢,坦白讲,我比较菜,我也不是做开发的,我是做…

1.9.。。

1 有道云笔记 2 .cpp #include "mywidget.h" #include "ui_mywidget.h"myWidget::myWidget(QWidget *parent) :QWidget(parent),ui(new Ui::myWidget) {ui->setupUi(this);this->setWindowTitle("原神");this->setStyleSheet("…

JVM主要的几种垃圾回收算法

1、Java 为什么要实现自动内存管理 ? 简化开发过程:通过内存自动管理可以避免手动分配和释放内存的麻烦,减少了内存泄漏和内存错误的风险,让研发能更专注于业务逻辑,不必纠结于内存管理的细节。 提高开发效率&#xff…

2024年第九届机器学习技术国际会议(ICMLT 2024) 即将召开

2024年第九届机器学习技术国际会议(ICMLT 2024)将于2024年5月24-26日在挪威奥斯陆举行。ICMLT 2024旨在讨论机器学习技术领域的最新研究技术现状和前沿趋势,为来自世界各地的科学家、工程师、实业家、学者和其他专业人士提供一个互动和交流的…

cosmos及特定应用程序的区块链

特定应用程序的区块链,简单来说,一个区块链就是一个专门的应用程序。为了实现某一特定的去中心化应用而专门实现一个区块链。 传统的用智能合约构建去中心化应用不行吗? 灵活性不足:智能合约本质上受到虚拟机本身的限制。例如,以…

uniapp自定义封装只有时分秒的组件,时分秒范围选择

说实话&#xff0c;uniapp和uview的关于只有时分秒的组件实在是不行。全是日历&#xff0c;但是实际根本就不需要日历这玩意。百度了下&#xff0c;终于看到了一个只有时分秒的组件。原地址&#xff1a;原地址&#xff0c;如若侵犯请联系我删除 <template><view clas…

BlogPark测试报告

目录 一&#xff0c;项目背景 二&#xff0c;项目功能 三&#xff0c;测试计划 3.1 测试用例的设计 3.2 功能测试 1.正常登录 2.正常写博客测试 &#xff08;输入完整的标题和内容&#xff09; 3.发布博客之后跳转到详情页观察是否有刚发布的博客 4.删除博客观察列表的…

会计报名照片怎么压缩?这几种方法一定要会

会计师报名考试的时候&#xff0c;在上传证件照信息时通常会对图片大小、格式、尺寸、还有照片dpi分辨率以及照片背景颜色都有具体的要求&#xff0c;小编在这边建议考生提前了解好报名照片的要求&#xff0c;避免照片审核失败&#xff0c;那么会计报名照片怎么压缩呢&#xff…

基于springboot在线考试系统源码和论文

网络的广泛应用给生活带来了十分的便利。所以把在线考试管理与现在网络相结合&#xff0c;利用java技术建设在线考试系统&#xff0c;实现在线考试的信息化。则对于进一步提高在线考试管理发展&#xff0c;丰富在线考试管理经验能起到不少的促进作用。 在线考试系统能够通过互…

ISIS基本概率与配置(HCIP完整版)

目录 一、ISIS协议基础 1、ISIS概述&#xff08;认识ISIS&#xff09; 2、ISIS的应用 4、ISIS的工作过程 5、ISIS路由器的类型 6、ISIS区域 7、ISIS报文 8、ISIS基础配置 9、进程号&#xff1a; 10、NET地址 11、ISIS邻居关系 二、邻居表分析 1、ISIS邻居表字段解析…

MVC设计模式和与三层架构的关系

MVC设计模式和与三层架构的关系 MVC是一种设计模式&#xff0c;将软件按照模型、视图、控制器来划分&#xff1a; M&#xff1a;Model&#xff0c;模型层&#xff0c;指工程中的JavaBean&#xff0c;作用是处理数据 JavaBean分为两类&#xff1a; 一类称为数据承载Bean&#x…

JavaSec基础 反射修改Final修饰的属性及绕过高版本反射限制

反射重拾 半年没碰java了 先写点基础回忆一下 反射弹计算器 public class Test {public static void main(String[] args) throws Exception {Class<?> clazz Class.forName("java.lang.Runtime");clazz.getDeclaredMethod("exec", String.cla…

记录汇川:H5U与Fctory IO测试5

主程序&#xff1a; 子程序&#xff1a; IO映射 子程序&#xff1a; 自动程序 Fctory IO配置&#xff1a; 触摸屏如下&#xff1a; 实际动作如下&#xff1a; Fctory IO测试5

力扣:18.四数之和

一、做题链接&#xff1a;18. 四数之和 - 力扣&#xff08;LeetCode&#xff09; 二、题目分析 1.做这一道题之前本博主建议先看上一篇《三数之和》 2.题目分析 给你一个由 n 个整数组成的数组 nums &#xff0c;和一个目标值 target 。请你找出并返回满足下述全部条件且不重…

java连接池、C3P0、Druid德鲁伊连接池技术

java线程池 连接池C3P0Druid 连接池 概念&#xff1a;其实就是一个容器(集合)&#xff0c;存放数据库连接的容器。当系统初始化好后&#xff0c;容器被创建&#xff0c;容器中会申请一些连接对象&#xff0c;当用户来访问数据库时&#xff0c;从容器中获取连接对象&#xff0c…

信息论与编码期末复习——计算题+基础汇总(二)

个人名片&#xff1a; &#x1f981;作者简介&#xff1a;一名喜欢分享和记录学习的在校大学生 &#x1f42f;个人主页&#xff1a;妄北y &#x1f427;个人QQ&#xff1a;2061314755 &#x1f43b;个人邮箱&#xff1a;2061314755qq.com &#x1f989;个人WeChat&#xff1a;V…

微信小程序连接数据库与WXS的使用

&#x1f389;&#x1f389;欢迎来到我的CSDN主页&#xff01;&#x1f389;&#x1f389; &#x1f3c5;我是Java方文山&#xff0c;一个在CSDN分享笔记的博主。&#x1f4da;&#x1f4da; &#x1f31f;推荐给大家我的专栏《微信小程序开发实战》。&#x1f3af;&#x1f3a…

基于Springboot+vue高校宿舍管理系统(前后端分离)

该项目完全免费 高校宿舍管理系统采用前后端分离的架构方式&#xff0c;是为学校宿舍管理打造的一套系统,可以让管理者更为便捷地处理学生公寓问题,从而大大提高管理效率,让学生公寓的资源合理分配,事半功倍,进而改善了学生公寓管理。 系统分为三种角色&#xff0c;分别是系统…

这些开源自动化测试框架,会用等于白嫖一个w

作者&#xff1a;黑马测试 链接&#xff1a;https://www.zhihu.com/question/19923336/answer/2585952461 来源&#xff1a;知乎 著作权归作者所有。商业转载请联系作者获得授权&#xff0c;非商业转载请注明出处。 随着计算机技术人员的大量增加&#xff0c;通过编写代码来…