• 微内核


    它为模块化拓展提供基础

    关于微内核主要有以下几个问题

    • 内核必须有多小才能被称为微内核

    • 怎么设计才能获得最佳性能

    • 在内核空间还是在用户空间运行一个非内核的操作

    • 是保留子系统的代码还是从头开始

      微内核的体系结构

      微内核的基本原理是:把最基本的操作系统功能放到内核中,其他服务和程序在微内核之上构建,并在用户态下运行

    尽管对于什么在微内核中,什么在微内核之外,不同的设计有不同的分界线

    但是传统上属于操作系统一部分的功能都在外部子系统中

    如:设备驱动程序,文件系统,虚存管理程序,窗口系统和安全服务

    他们可以互相交互,也可以和微内核交互

    微内核构建了单个计算机中的C/S模式,程序借助微内核传递消息给操作系统的部件,例如程序想打开一个文件,那么它就会通过微内核给文件系统服务进程发送消息

    • 接口一致:因为的服务是通过微内核进行消息传递提供的,因此进程不需要区分服务的级别(内核级别,用户级别)

    • 可拓展性:由于内核只负责传递消息,因此增加功能的话只需要修改服务选项列表,而不需要重写内核

    • 灵活性

    • 可移植性

    • 可靠性

    由于不同的微内核具有不同的功能和大小

    但是相同的是微内核必须包括直接依赖于硬件的功能

    • 低级存储管理
    • 进程间通信
    • I/O
    • 中断管理

    微内核只需要负责把虚拟页映射到物理页框

    而存储管理的大部分功能,包括页面置换算法,分页逻辑等都可以在内核外实现

    当应用程序发生缺页中断的时候,内核就会给页面调度程序发送消息,表明引用的是哪一个页

    一旦完成调度,那么页面调度程序就会给应用程序发送恢复执行的信息

    微内核操作系统中进程与进程直接的通信的基本形式是消息

    消息由:消息头,消息体组成

  • 相关阅读:
    jsp 页面获取当前路径
    html5 页面音频
    微信关于网页授权access_token和普通access_token的区别
    Texlive source
    vscode 快捷键
    vscode setting
    vscode extension 插件管理
    what
    linux manual
    java tool type
  • 原文地址:https://www.cnblogs.com/gride-glory/p/7875654.html
Copyright © 2020-2023  润新知