Bootstrap

操作系统结构

分层法

操作系统中的分层法是指将操作系统的不同功能层次划分为若干个层次,每个层次提供一些特定的功能,上层调用下层提供的接口来完成自己的功能。常见的操作系统分层如下:

  1. 硬件层:操作系统的最底层,对各种硬件设备进行控制和管理,如CPU、内存、外设等。
  2. 内核层:也称为操作系统的核心层,提供系统调用接口与用户空间进行交互,进行进程管理、内存管理、文件管理以及设备驱动等操作。
  3. 系统调用层:提供系统调用接口,向用户程序与内核层提供交互功能。
  4. 工具层:提供操作系统的各种工具与实用性应用程序,如文件管理器、任务管理器、网络管理器等。
  5. 用户界面层:提供人机交互界面,如图形用户界面(GUI)、命令行界面(CLI)等。

通过分层法,操作系统的功能被分散到不同的层次中,每层只需实现自己的特定功能,从而更好地实现了系统应用程序的模块化设计,利于软件维护。

模块化

模块化是将操作系统按功能划分为若干具有一定独立性的模块。

衡量模块的独立性主要有两个标准:

  1. 内聚性,模块内部各部分间联系的紧密程度。内聚性越高,模块独立性越好。
  2. 耦合度,模块见相互联系和相互影响的程度。耦合度越低,模块独立性越好。

模块化的优点:

  1. 提高了操作系统设计的正确性、可理解性和可维护性;
  2. 增强了操作系统的可适应性。
  3. 加速了操作系统的开发过程。

模块化的缺点:

  1. 模块间的接口规定很难满足对接口的实际需求。
  2. 各模块设计者起头并进,每个决定无法建立在上一个已验证的正确决定的基础上,因此无法找到一个可靠的决定顺序。

操作系统的内核

从操作系统的内核架构来划分,可分为宏内核和微内核。

内核是操作系统最基本、最核心的部分。

实现操作系统内核功能的那些程序就是内核程序。

注意:

操作系统内核需要运行在内核态

操作系统的非内核功能运行在用户态

一个故事:现在,应用程序想要请求操作系统的服务,这个服务的处理同时涉及到进程管理、存储 管理、设备管理。

注意:变态的过程是有成本的,要消耗不少时间,频繁地变态会降低系统性能

宏内核

宏内核,也称单内核或大内核.是指将系统的主要功能模块都作为一个紧密联系的整体运行在核心态,从而为用户程序提供高性能的系统服务。0

微内核

微内核的基本概念

微内核架构,是指将内核中最基本的功能保留在内核,而将那些不需要的核心态执行的功能移到用户态支撑,从而降低内核的设计复杂性。

在微内核结构中,为了实现高可靠性,只有微内核运行在内核态,其余模块都运行在用户态,一个模块中的错误只会使这个模块崩溃,而不会使整个系统崩溃。

微内核的基本功能

  1. 进程(线程)管理。
  2. 低级存储器管理。
  3. 中断和陷入处理。

微内核的特点

  1. 扩展性和灵活性。
  2. 可靠性和安全性。
  3. 可移植性。
  4. 分布式计算。

操作系统引导

常见的操作系统的引导过程:

  1. 激活CPU。
  2. 硬件自检。
  3. 加载带有操作系统的硬盘。
  4. 加载主引导记录MBR。
  5. 扫描硬盘分区表。
  6. 加载分区引导记录PBR。

虚拟机

虚拟机是一台逻辑计算机,是指利用特殊的虚拟化技术,通过隐藏特定计算平台的实际物理特性,为用户提供抽象的、同意的、模拟的计算环境。

;