DJ1-3 操作系统引论

目录

操作系统的结构设计

1. 无结构操作系统

2. 模块化 OS 结构

3. 分层式 OS 结构

4. 微内核 OS 结构


操作系统的结构设计

操作系统是一个大型系统软件,其结构已经历了四代的变革:

  1. 第一代 OS 是无结构
  2. 第二代 OS 采用模块式结构
  3. 第三代是层次式结构
  4. 现代 OS 结构是微内核结构

1. 无结构操作系统

在早期开发操作系统时,设计者只是把 TA 的注意力放在功能的实现和获得高的效率上,缺乏首尾一致的设计思想。

这种 OS 是为数众多的一组过程的集合,各过程之间可以相互调用,在操作系统内部不存在任何结构。因此,有人把它称为整体系统结构。

缺陷:

  • 设计出的操作系统既庞大又杂乱,缺乏清晰的程序结构。
  • 编制出的程序错误很多,给调试工作带来很多困难;增加了维护人员的负担。

修改某一部分程序将会需要对整个 OS 进行重新编译。

2. 模块化 OS 结构

(1)模块化结构(模块 - 接口法)

使用分块结构的系统包含若干模块,每一模块实现一组基本概念以及与其相关的基本属性。

块与块之间的相互关系:所有各块的实现均可以任意引用其它各块所提供的概念及属性。

module

模块化操作系统结构

DJ1-3 操作系统引论_第1张图片

(2)模块化 OS 的优缺点

优点

  • 提高了 OS 设计的正确性、可理解性和可维护性。
  • 增强了 OS 的可适应性。
  • 加速了 OS 的开发过程。

缺点

  • 对模块的划分及对接口的规定要精确描述很困难。
  • 从功能观点来划分模块时,未能将共享资源和独占资源加以区别。

3. 分层式 OS 结构

使用分层系统结构包含若干层,其中,每一层实现一组基本概念以及与其相关的基本属性。

层与层之间的相互关系:

  • 各层实现不依赖其以上各层所提供的概念及其属性;
  • 各层实现只依赖其直接下层所提供的概念及属性;
  • 每一层均对其上各层隐藏其下各层的存在。

layer

层次的设置时应考虑的几个因素

① 程序嵌套。通常 OS 的每个功能的实现,并非是只用一个程序便能完成的,而是要经由若干个软件层才有可能完成,因此在考虑实现 OS 时,每个功能可能形成的程序嵌套。

② 运行频率。将那些经常活跃的模块放在最接近硬件的层。

③ 公用模块。把供多种资源管理程序调用的公用模块,设置在最低层, 以便调用。

④ 用户接口。命令接口、程序接口以及图形用户接口。这些接口应设置在 OS 的最高层,直接提供给用户使用。

层次化操作系统结构

DeltaCORE 的体系结构:层次+模块结构。

DJ1-3 操作系统引论_第2张图片

若更改硬件,则只需修改硬件抽象层即可。

4. 微内核 OS 结构

所谓微内核技术,是指精心设计的、能实现现代 OS 核心功能的小型内核,它与一般的 OS 程序不同, 它更小更精炼,它不仅运行在核心态,而且开机后常驻内存, 它不会因内存紧张而被换出内存。
当前比较流行的、能支持多处理机运行的 OS 几乎全部都采用了微内核结构,如:Mac OS、Windows 2000 。

微内核功能

微内核所提供的功能,通常都是一些最基本的功能,如:

  • 进程管理
  • 低级存储器管理
  • 中断和陷入处理
  • 进程间通信
  • 低级 I/O 功能

微内核特点

  • 足够小的内核
  • 基于客户/服务器模式
  • 应用 “机制与策略分离” 原理
  • 采用面向对象技术

你可能感兴趣的:(计算机操作系统,学习,windows,linux,macos)