首页 > 其他分享 >【操作系统】典型内核架构对比

【操作系统】典型内核架构对比

时间:2022-11-08 19:16:07浏览次数:66  
标签:架构 操作系统 管理 内存 微内核 进程 内核

目录

参考:
(1)操作系统实战45讲
(2)Linux系统——架构浅析

一、架构分类

内核是操作系统的核心,对下承接硬件设备,对上承接应用程序,管理计算机的所有资源。主要包括以下几个模块;
进程调度、内存管理、设备管理、文件系统、网路管理。

参考wiki:

1、宏内核

宏内核架构中,内核包含所有核心模块,各模块属于同一层次,“宏”的体现在该层设计的功能较多;

其优点在与性能强大,缺点在于各模块之间耦合度较高,结构复杂,开发与维护困难。

应用程序
内核:进程调度、内存管理......
硬件设备

2、微内核

微内核架构中,内核仅保留少量模块(IPC通信、内存管理等),其他功能进行模块化处理,转化成用户进程;用户进程利用消息机制与内核进行通信。

微内核高度模块化,稳定性较好,但是由于用户进程需要频繁地与内核进行交互,性能较低。

应用程序
用户进程:设备管理、文件管理、系统服务......
内核:进程间通信、内存管理......
硬件设备

3、混合内核:

混合内核架构,为微内核的重构版本,将一些对性能影响较大的组件从用户进程中移到内核,为了效率在架构方面做了部分妥协,如果彻底妥协就变回宏内核了。

应用程序
用户进程:系统服务、文件管理......
内核:进程间通信、内存管理、设备管理......
硬件设备

二、Linux

linux内核走的是宏内核路线,主要包括:进程调度、内存管理、设备驱动、文件系统、网络模块。

架构图参考链接1;

三、iOS Darwin

Darwin作为macOS与iOS操作系统的核心,使用微内核(Mach)和对应固件来支持不同的处理器平台,并提供操作系统原始的基础服务,内核态还有BSD系统为上层的功能性系统提供服务和工具。可见,Darwin为混合内核架构。

Mach内核提供简单的进程、线程、IPC通信、虚拟内存设备驱动相关的功能服务,BSD则提供强大的安全特性,完善的网络服务,各种文件系统的支持,同时对Mach的进程、线程、IPC、虚拟内核组件进行细化、扩展延伸。

应用在调用Darwin系统API时,会传入一个API编号,根据编号索引Mach陷入中断服务函数。此时,API号码如果小于0,则表明请求的是Mach内核的服务,API号码如果大于0,则表明请求的是BSD内核的服务,它提供一整套标准的POSIX接口。

架构图参考链接1;

四、Windows NT

NT是现代Windows的内核,从Windows 2000开始。NT内核定义了三层,最底层的HAL,封装硬件差异;第二层为小内核,完成进程、内存、配置、I/O文件缓存、电源与即插即用、安全等相关的服务;第三层是内核执行体,对外提供相应的接口,其它执行体要通过内核模式可调用接口和其它执行体通信或者请求其完成相应的功能服务。

NT架构结构清晰,完全遵循高内聚、低耦合的设计标准,可惜闭源。

架构图参考链接1;

标签:架构,操作系统,管理,内存,微内核,进程,内核
From: https://www.cnblogs.com/HZL2017/p/16870817.html

相关文章

  • 【深入浅出 Yarn 架构与实现】2-1 Yarn 基础库概述
    了解Yarn基础库是后面阅读Yarn源码的基础,本节对Yarn基础库做总体的介绍。并对其中使用的第三方库ProtocolBuffers和Avro是什么、怎么用做简要的介绍。一、主要......
  • 大数据架构/总监-深圳(年包80-200W)
    岗位需求提炼1、有大厂大数据架构背景,PB级的大数据处理经验;2、做过商业化大数据产品(对外销售的大数据产品);3、熟悉大数据的全流程(采集、存储、清洗、分析、治理等)4、大......
  • 一套用了 70 年的计算机架构 —— 冯·诺依曼架构
    本文已收录到 GitHub·AndroidFamily,有Android进阶知识体系,欢迎Star。技术和职场问题,请关注公众号[彭旭锐]进Android面试交流群。前言大家好,我是小彭。上......
  • 操作系统学习笔记——第五章 I/O设备管理
    在学习操作系统时总结了笔记,并分享出来,特别是蓝色和红色字体。有问题请及时联系博主:​​Alliswell_WP​​,转载请注明出处。参考书:《操作系统》谌卫军等,清华大学出版社,2012年......
  • 操作系统学习笔记——第四章 存储管理
    在学习操作系统时总结了笔记,并分享出来,特别是蓝色和红色字体。有问题请及时联系博主:​​Alliswell_WP​​,转载请注明出处。参考书:《操作系统》谌卫军等,清华大学出版社,2012年......
  • 操作系统学习笔记——输入输出(I/O)管理
    在学习操作系统时对输入输出(I/O)管理特别困惑,所以总结了笔记,并分享出来,特别是蓝色和红色字体。有问题请及时联系博主:​​Alliswell_WP​​,转载请注明出处。 重点难点:输入输......
  • 操作系统学习笔记——进程管理(进程与线程)
    在学习操作系统时对进程管理(进程与线程)特别困惑,所以总结了笔记,并分享出来,特别是蓝色和红色字体。有问题请及时联系博主:​​Alliswell_WP​​,转载请注明出处。 重点难点:进程......
  • 操作系统学习笔记——全部知识点流程图
    在学习操作系统时对各部分的流程及具体如何工作特别困惑,所以总结了笔记,并分享出来,特别是蓝色和红色字体。有问题请及时联系博主:​​Alliswell_WP​​,转载请注明出处。参考书......
  • 操作系统学习笔记——第一章 操作系统概述
    在学习操作系统时总结了笔记,并分享出来,特别是蓝色和红色字体。有问题请及时联系博主:​​Alliswell_WP​​,转载请注明出处。参考书:《操作系统》谌卫军等,清华大学出版社,2012年......
  • 操作系统学习笔记——第二章 进程管理 和 第三章 死锁
    在学习操作系统时总结了笔记,并分享出来,特别是蓝色和红色字体。有问题请及时联系博主:​​Alliswell_WP​​,转载请注明出处。参考书:《操作系统》谌卫军等,清华大学出版社,2012年......