操作系统-操作系统结构

操作系统结构

简单结构

  • 定义:没有 ==模块化== 的设计,利用最小的空间尽可能提供操作系统所有功能
  • 优点 & 缺点:
    • 优点:操作系统所有功能之间可以 ==任意== 通信 -> 效率相对较高
    • 缺点:(1) 操作系统理解维护非常困难 (2) 单个功能的崩溃会影响整个操作系统
  • 细节:
    • 早期的 MS-DOS 操作系统就是采用 ==简单结构== -> 没有明确的区分功能的接口和层次
    • 早期的 MS-DOS 操作系统允许应用程序 ==直接访问== 底层硬件的驱动 -> 对于操作系统来说是非常危险的
      • 原因(1):设计之初确实没有想过采用分层的思想
      • 原因(2):Intel 提供的处理器不支持双模式的切换和硬件保护
ef1890dc51c4b642bb635f990f2bb33f.png

分层结构

803771918db7acc1e75351a686904ac6.png

微内核

  • 定义:删除内核中所有不必要的功能,将其当做 ==系统级== 或者说 ==用户级== 的功能实现

  • 优点 & 缺点

    • 优点:

      1. 操作系统易于扩展

      2. 操作系统可以非常轻易的实现跨平台

        解释:删除了内核中非常多的不必要的功能之后导致内核是非常小的

      3. 操作系统具有很好的 ==可靠性== 和 ==安全性==

        解释:原来的运行在内核中的功能现在被迁移到内核之外运行,即使发生故障也不会影响操作系统

    • 缺点:操作系统效率相对较低

  • 细节:

  • 运行过程:

    1. 应用程序需要使用 I/O 设备 -> 应用程序发送系统调用
    2. 系统找到相应的驱动程序然后通知驱动程序完成指令
    3. 驱动程序找到相应的控制器 -> 控制器操控相应的设备完成指令
    4. 微内核最后将结果返回给应用程序
bc0b601e584f9af9f666ae094fa56f89.png

虚拟机

  • 定义:运行在 ==操作系统之上== 的具有真实计算机拥有的 ==全部硬件功能== 的计算机

  • 优点 & 缺点

    • 优点:

      1. 虚拟机系统故障不会影响到 ==宿主操作系统== 和 ==真实的底层硬件==

      2. 虚拟机为开发人员提供了非常大的便利

      <a style="color:red;">虚拟机具备真实计算机拥有的全部硬件功能,虚拟机可以安装任何操作系统</a> -> 程序员可以利用虚拟机安装各式各样的操作系统进行使用
      
    • 缺点:虚拟化技术相对比较难以实现

      常用虚拟机:Virtual Box & VMware

  • 细节:

ac3a1f73524eabcaae4797f20a718493.png
Author: Fuyusakaiori
Link: http://example.com/2021/09/18/os/overview/结构/
Copyright Notice: All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.