操作系统大内核和微内核_操作系统中的内核类型

操作系统大内核和微内核

As we have already studied about the Kernels, we know that the Kernel is a program which is the main component of the Operating System. Now let us study about the types of Kernels.

正如我们已经研究了内核一样 ,我们知道内核是一个程序,它是操作系统的主要组件。 现在让我们研究内核的类型。

内核类型 (Types of kernels )

A Kernel is classified into two main types:

内核分为两种主要类型:

  1. Monolithic Kernel

    整体内核

  2. Micro Kernel

    微内核

One more type of Kernel exists which is the combination of these two types of kernels and is known as the Hybrid Kernel.

存在另一种类型的内核,这是这两种类型的内核的组合,称为混合内核

Let us study each of them in brief...

让我们简短地研究它们中的每一个...

1)整体内核 (1) Monolithic Kernel)

In this type of Kernel architecture, all the functions, like Process Management, Memory management, interrupt handling, etc. are performed in the Kernel space.

在这种类型的内核体系结构中,所有功能(如进程管理,内存管理,中断处理等)都在内核空间中执行。

The monolithic Kernels first consisted of only one module, and this module was responsible for all the functions that were performed by the Kernel. This increased the performance of the OS as all the functions were present inside the same module, but this also led to serious drawbacks like large size of the Kernel, very low reliability because even if a single function of the Kernel failed, this led to the failure of the entire Kernel Program, and poor maintenance, due to the same reason. So, to increase the performance of the system, a modular approach was made in the Monolithic kernels in which each function was present in a different Module inside the Kernel Space. So, for fixing any bugs or in case of failure, only that particular module was unloaded and loaded after fixing.

整体式内核首先仅包含一个模块,而该模块负责内核所执行的所有功能。 由于所有功能都存在于同一模块中,因此提高了OS的性能,但这也导致了严重的缺陷,例如内核的尺寸过大,可靠性非常低,因为即使内核的单个功能失败,这也会导致由于相同的原因,整个内核程序都会失败,并且维护不善。 因此,为了提高系统性能,在Monolithic内核中采用了模块化方法,其中每个功能都存在于内核空间内的不同模块中。 因此,对于修复任何错误或出现故障的情况,修复后仅卸载和加载该特定模块。

Monolithic Kernel

2)微内核 (2) Micro Kernels)

In this type of Kernel architecture, the basic user services like device driver management, protocol stack management, File system management and graphics control are present in the Userspace, and the rest functions lie Memory management, Process management is present inside the Kernel space. So, whenever the system has the requirement of services present in the Kernel space, the OS switches to the Kernel Mode, and for the user level services, it switches to the User Mode. This type of Kernel Architecture reduces the size of the Kernel, but the speed of executing processes and providing other services is much slower than the Monolithic Kernels.

在这种类型的内核体系结构中,基本的用户服务(如设备驱动程序管理,协议栈管理,文件系统管理和图形控制)位于用户空间中,其余功能位于内存管理中,进程管理位于内核空间中。 因此,每当系统需要内核空间中存在的服务需求时,OS就会切换到内核模式,而对于用户级服务,它将切换到用户模式。 这种类型的内核体系结构减小了内核的大小,但是执行进程和提供其他服务的速度比Monolithic内核要慢得多。

Micro Kernels

3 *)混合内核 (3*) Hybrid Kernel)

For the best performance of the system, we require both high speed and small size of the kernel so that our system may have the maximum efficiency. So, to meet this, a new type of Kernel was designed which was somewhat a combination of the Monolithic Kernel and the MicroKernel. This type of Kernel is known as the Hybrid Kernel. Such type of Architecture is being used in almost all systems which are being manufactured nowadays.

为了使系统达到最佳性能,我们需要高速且小尺寸的内核,以使我们的系统具有最大的效率。 因此,为了解决这个问题,设计了一种新型内核,某种程度上是整体内核和微内核的组合。 这种类型的内核称为混合内核。 这种类型的体系结构已在当今正在制造的几乎所有系统中使用。

翻译自: https://www.includehelp.com/operating-systems/types-of-kernels.aspx

操作系统大内核和微内核

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【论文解读】Learning based fast H.264 to H.265 transcoding

时间: 2015 年 级别:APSIPA 机构: 上海电力大学 摘要 新提出的视频编码标准HEVC (High Efficiency video coding)以其比H.264/AVC更好的编码效率,被工业界和学术界广泛接受和采用。在HEVC实现了约40%的编码效率提升的同时&#…

面试必备:聊聊sql优化的15个小技巧

sql优化是一个大家都比较关注的热门话题,无论你在面试,还是工作中,都很有可能会遇到。如果某天你负责的某个线上接口,出现了性能问题,需要做优化。那么你首先想到的很有可能是优化sql语句,因为它的改造成本…

面试突击73:IoC 和 DI 有什么区别?

作者 | 磊哥来源 | Java面试真题解析(ID:aimianshi666)转载请联系授权(微信ID:GG_Stone)IoC 和 DI 都是 Spring 框架中的重要概念,就像玫瑰花与爱情一样,IoC 和 DI 通常情况下也是成…

MyBatis整合Spring的实现(13)

2019独角兽企业重金招聘Python工程师标准>>> 本章中分析insert元素的解析。 1 配置文件 <insert id"insert" parameterType"cn.vansky.schedule.time.menu.bo.Menu"><!--WARNING - mbggeneratedThis element is automatically generat…

麻了,代码改成多线程,竟有9大问题

很多时候&#xff0c;我们为了提升接口的性能&#xff0c;会把之前单线程同步执行的代码&#xff0c;改成多线程异步执行。比如&#xff1a;查询用户信息接口&#xff0c;需要返回用户基本信息、积分信息、成长值信息&#xff0c;而用户、积分和成长值&#xff0c;需要调用不同…

浅聊一下线程池的10个坑

日常开发中&#xff0c;为了更好管理线程资源&#xff0c;减少创建线程和销毁线程的资源损耗&#xff0c;我们会使用线程池来执行一些异步任务。但是线程池使用不当&#xff0c;就可能会引发生产事故。今天跟大家聊聊线程池的10个坑。大家看完肯定会有帮助的~线程池默认使用无界…

Linux命令行上执行操作,不退回命令行的解决方法

问题描述&#xff1a; 如果你现在登录Centos执行了某个操作&#xff0c;但是操作一直占用命令行&#xff0c;命令行显示的也都是这个命令相关的操作&#xff0c;我想做其它事情 &#xff0c;该怎么办呢 &#xff1f; 解决方法&#xff1a; 根据《Linux命令行与Shell编程大全第2…

SpringBoot 读取配置文件的 5 种方法!

作者 | 磊哥来源 | Java面试真题解析&#xff08;ID&#xff1a;aimianshi666&#xff09;转载请联系授权&#xff08;微信ID&#xff1a;GG_Stone&#xff09;Spring Boot 中读取配置文件有以下 5 种方法&#xff1a;使用 Value 读取配置文件。使用 ConfigurationProperties 读…

使用阿里巴巴 Druid 轻松实现加密!

作者 | 磊哥来源 | Java中文社群&#xff08;ID&#xff1a;javacn666&#xff09;转载请联系授权&#xff08;微信ID&#xff1a;GG_Stone&#xff09;为什么要加密&#xff1f;现在的开发习惯&#xff0c;无论是公司的项目还是个人的项目&#xff0c;都会选择将源码上传到 Gi…

xml不显示css样式_如何使用CSS显示XML?

xml不显示css样式Introduction: 介绍&#xff1a; You must be aware of the term XML and must have dealt with these various XML files while developing a web page or website. This article focuses entirely on XML and how to display them using CSS. There are num…

c#组元(Tuple)的使用

组元(Tuple)是C# 4.0引入的一个新特性&#xff0c;可以在.NET Framework 4.0或更高版本中使用。组元使用泛型来简化类的定义&#xff0c;多用于方法的返回值。在函数需要返回多个类型的时候&#xff0c;就不必使用out , ref等关键字了&#xff0c;直接定义一个Tuple类型&#x…

浅谈一下 MyBatis 批量插入的 3 种方法!

作者 | 磊哥来源 | Java中文社群&#xff08;ID&#xff1a;javacn666&#xff09;转载请联系授权&#xff08;微信ID&#xff1a;GG_Stone批量插入功能是我们日常工作中比较常见的业务功能之一&#xff0c;今天咱们来一个 MyBatis 批量插入的汇总篇&#xff0c;同时对 3 种实现…

快速搭建 SpringCloud Alibaba Nacos 配置中心!

作者 | 磊哥来源 | Java中文社群&#xff08;ID&#xff1a;javacn666&#xff09;转载请联系授权&#xff08;微信ID&#xff1a;GG_Stone&#xff09;Spring Cloud Alibaba 是阿里巴巴提供的一站式微服务开发解决方案&#xff0c;目前已被 Spring Cloud 官方收录。而 Nacos 作…

浅聊一下建表的15个小技巧

前言对于后端开发同学来说&#xff0c;访问数据库&#xff0c;是代码中必不可少的一个环节。系统中收集到用户的核心数据&#xff0c;为了安全性&#xff0c;我们一般会存储到数据库&#xff0c;比如&#xff1a;mysql&#xff0c;oracle等。后端开发的日常工作&#xff0c;需要…

JConsole的使用手册 JDK1.5(转)

一篇Sun项目主页上介绍JConsole使用的文章&#xff0c;前段时间性能测试的时候大概翻译了一下以便学习&#xff0c;今天整理一下发上来&#xff0c;有些地方也不知道怎么翻&#xff0c;就保留了原文&#xff0c;可能还好理解点&#xff0c;呵呵&#xff0c;水平有限&#xff0c…

一文快速上手 Nacos 注册中心+配置中心!

作者 | 磊哥来源 | Java中文社群&#xff08;ID&#xff1a;javacn666&#xff09;转载请联系授权&#xff08;微信ID&#xff1a;GG_Stone&#xff09;Spring Cloud Alibaba 是阿里巴巴提供的一站式微服务开发解决方案&#xff0c;目前已被 Spring Cloud 官方收录。而 Nacos 作…

所有子序列的逆序对总和_一个数字的所有子串的总和

所有子序列的逆序对总和Problem statement: 问题陈述&#xff1a; Given an integer, S represented as a string, get the sum of all possible substrings of this string. 给定一个以字符串形式表示的整数S &#xff0c;得到该字符串所有可能的子字符串的和 。 Input: 输入…

synchronized:使用不规范,老板泪两行!

线程安全问题一直是系统亘古不变的痛点。这不&#xff0c;最近在项目中发了一个错误使用线程同步的案例。表面上看已经使用了同步机制&#xff0c;一切岁月静好&#xff0c;但实际上线程同步却毫无作用。关于线程安全的问题&#xff0c;基本上就是在挖坑与填坑之间博弈&#xf…

SQL --运算符

2019独角兽企业重金招聘Python工程师标准>>> 一、<> (安全等于运算符) mysql中的 、<>或!运算符&#xff0c;相信大家已经很清楚了。今天看到了<>这个运算符&#xff0c;记录下来。 1><>和号的相同点 他们都是两个值比较符&#xff0c;相…

linux 文件浏览器_浏览Linux文件系统

linux 文件浏览器你为什么要学习&#xff1f; (Why would you want to learn?) Linux is probably the most used operating system when it comes to development. For a developer, Linux provides all the required tools. Learning how to navigate the Linux file system…