# 1. 操作系统逻辑结构

逻辑结构的种类:

  • 整体式结构
  • 层次式结构
  • 微内核结构

# 整体式结构

模块为基本单位构建。

image-20190926145036216

特点:模块设计、编码和调试独立,调用自由,模块以全局变量形式完成。

缺点:信息传递随意,维护和更新困难。

# 分层结构

所有功能模块按照调用次序拍成若干层,相邻层之间只能单向依赖或单向调用。

image-20190926150907112

特点:方便系统维护、扩充、移植;结构清晰,避免循环调用;整体问题局部化,系统正确性可以保证。

# 微内核结构

操作系统 = 微内核 + 核外服务器

微内核:足够小,提供os最基本核心功能和服务。比如与硬件相关处理。

核外服务器:完成os的绝大部分服务功能。比如进程/线程服务器。

# 2. CPU态(Mode)

操作系统需要依赖的最基本硬件:CPU、内存、中断、时钟。

# CPU

CPU Mode指的是cpu的工作状态,影响着资源和指令的使用。比如下面特权指令,只有mode处于很高权限才可以。

image-20190926152757300

# CPU态的分类

1、核态(kernel mode):能访问所有资源和指令

2、用户态(User mode):仅能访问部分资源

3、管态(Supervisor mode):介于两者之间。

用户态和核态可以相互转换:

image-20190926153025845

# 存储器

分类方法:

  • 按存储器读写工作方式:
    • RAM
    • ROM
  • 按存储元材料:
    • 半导体存储器(常做主存)
    • 磁存储器(磁盘)
    • 光存储器(光盘)
  • 按与CPU联系
    • 主存:直接与CPU交换信息(内存)
    • 辅存:不能直接和CPU交换信息(外存)

# 实际存储体系

实际的存储体系,是由多种存储器混搭而成:

image-20190926162521977

它的工作原理是:

  1. cpu访问告诉缓存,如果指令数据在,那么就是命中;没有命中,访问主存
  2. 如果主存没有命中,那么就是缺页。会从辅存上将内容调入主存。

image-20190926162609113

# 3. 中断机制

定义:CPU对突发的外部事件的反应过程或者机制。本质上,中断是交换指令执行地址,与交换CPU的态。

image-20190926163003192

上图是中断机制的工作流程,中断服务程序是事先准备好的专门用来处理中断的程序。

# 相关概念

断点:程序中断的地方,将要执行的下一指令的地址(放入CS:IP)

现场:程序正确运行所运行的信息集合,比如寄存器中的数据。

每次中断进行的前后,都要借助,来完成现场的保护和恢复。

image-20190926163953712