高分操作系统 第二章 操作系统逻辑结构

这是一篇大学课程——操作系统同步笔记,最后有期末大礼包!!

2.1 操作系统逻辑结构


1、OS的设计和设计思路

  • 整体式结构
  • 以模块为基本单位构建
  • 特点:
    ① 模块设计、编码和调试独立
    ② 模块调用自由
    ③ 模块通信多以全局变量形式完成
  • 缺点
    ① 信息传递随意,全局变量难以控制
    ② 维护和更新困难
  • 层次结构
  • 例如: TCP/IP协议栈
  • 所有功能模块按照调用次序排成若干层,相邻层间只有单向依赖或单向调用
  • 分层原则:
    ① 硬件相关——最底层
    ② 外部特性——最外层
    ③ 中间层——调用次序或消息传递顺序
    ④共性的服务——较低层
    ⑤活跃功能——较低层
  • 层次结构优点
    ① 结构清晰,避免循环调用
    ② 整体问题局部化,系统的正确性容易保证
    ③ 有利于操作系统的维护、扩充、移植
  • 微内核结构(客户/服务器结构,Client/Server)
  • 操作系统 = 微内核 + 核外服务器
  • 微内核:足够小,提供OS最基本核心功能和服务(面向底层)
    ① 实现与硬件紧密相关的处理
    ② 实现一些较基本的功能
    ③ 负责客户和服务器间的通信
  • 核外服务器:完成OS绝大部分服务器功能,等待应用程序提出请求(面向用户)
    ① 由若干服务器或进程共同构成
    ② Linux单体内核;MinixOs 微内核结构

2.2 CPU的态


1、支持CPU最基本和硬件结构

CPU、内存、中断、时钟

2、CPU态

  • CPU的工作状态
  • 对资源和指令使用权限的描述

3、态的分类

  • 核态
  • 能够访问所有资源和执行指令
  • 管理程序/OS内核
  • 用户态
  • 仅能访问部分资源,其他资源受限
  • 用户程序
  • 管态
  • 介于核态和用户态之间

4、用户态和核态之间的转换

  • 用户态向核态转换
  • 用户请求OS提供服务
  • 发生中断
  • 用户进程发生错误(内部中断)
  • 用户态企图执行特权指令
  • 核态向用户态转换
  • 一般是执行终端返回:IRET
  • 硬件和OS对CPU的观察
  • 硬件按“态“‘来区分CPU状态
  • OS按"进程"来区分CPU状态
  • Intel CPU的态
  • Ring0~Ring3(Ring0最核心;Ring3最外层)
    权限检查:态的转换
    程序段:请求特权级,RPL,态的属性
    描述符特级权限:DPL
  • 存储器
  • 分类
    ① 按存储器(半导体存储器)读写方式
    RAM/ROM
    ② 按存储元材料
    半导体存储器(常做主存)、磁存储器(磁带、磁盘)、光存储器(光盘)
    ③ 按与CPU联系
    主存(直接和CPU交换信息)
    辅存:(不能和CPU交换信息)

5、存储体系(混搭)

  • 理想存储体系:速度快、容量大、成本低
  • 实际存储体系:寄存器、高速缓存、辅存(是综合的)

2.3 中断机制


1、中断

  • 定义

  • 中断是指CPU对外部时间的反应过程或机制

  • CPU收到外部信号(中断信号)后,停止当前工作,转去处理该外部事件,处理完毕后回到原来工作的中断处(断点)继续原来工作

  • 引入中断目的(基本目的是为了响应I/O)

  • 实现高并发活动

  • 实现实时处理

  • 故障自动处理

  • 中断源和中断

  • 引起系统中断的事件叫做中断源

  • 中断类型
    1.强迫性中断(程序没有预期)和自愿中断(程序有预期)
    2.外中断(CPU外部例如I/O)和内中断(CPU内部),其中外中断还分为不可屏蔽中断(中断原因很紧要,CPU必须相应,例如关机指令——最高中断)和可屏蔽中断(最低中断——休眠)

  • 中断的一些概念

  • 断点:程序中断的地方,将要执行的下一指令的地址。

  • 现场(上下文):当前程序能正常运行所依赖的信息集合——相关寄存器

  • 现场的两个处理过程:①现场的保护,进入中断服务之前,把先前的数据保存在栈里,方便后面还原②现场的恢复

  • 中断的响应过程

  1. 识别中断源
  2. 保护断点和现场 (中断前的最后程序进栈)
  3. 装入中断服务程序的入口地址(CS:IP)(记录到CS:IP,硬件自动完成)
  4. 进入中断服务 (中断前的最后程序出栈)
  5. 恢复现场和断点 (根据CS:IP,返回到中断前的程序再继续运行
  6. 中断返回:IRET
  • 中断响应的实质
  • 交换指令执行地址
  • 交换CPU的态
  • 工作:现场保护和恢复,参数传递(通信)

2.4 课后习题


1、什么是陷阱指令?在操作系统中有什么用途?

(1)陷阱指令
陷阱指令是处理陷阱的指令。陷阱是指计算机系统在运行中的一种意外事故,例如电源电压不稳、输入输出设备出现用户使用了未定义的指令或特权指令等意外情况,使得计算机系统不能正常工作。一旦出现陷阱,计算机应能暂停当前程序的执行,及时转入故障处理程序进行相应的处理。

(2)用途
陷阱指令切换CPU的执行模式从用户模式到内核模式。该指令允许用户程序调用的操作(调用)函数系统内核

2、中断的概念是什么?中断的响应过程是怎样的?

(1)中断的概念
​中断是指CPU对外部时间的反应过程或机制,CPU收到外部信号(中断信号)后,停止当前工作,转去处理该外部事件,处理完毕后回到原来工作的中断处(断点)继续原来工作。

(2)中断的响应过程
① 识别中断源
② 保护断点和现场 (中断前的最后程序进栈)
③ 装入中断服务程序的入口地址(CS:IP)(记录到CS:IP,硬件自动完成)
④ 进入中断服务 (中断前的最后程序出栈)
⑤ 恢复现场和断点 (根据CS:IP,返回到中断前的程序再继续运行
⑥ 中断返回:IRET

3、何为CPU的态?定义态的作用什么?有哪些态?

1、CPU的态是指CPU的工作状态,是对资源和指令使用权限的描述
2、定义态的作用:能够保护系统内部以及划分权限,防止用户在不经意间损毁系统,提高系统安全性
3、① 用户态(仅能访问部分资源,其他资源受限)
② 核态(能够访问所有资源和执行指令)
③ 管态(介于核态和用户态之间)

4、微内核的结构特点是什么?

足够小,提供OS最基本核心功能和服务运行在内核态上的一个模块,这样就可以提供更好的可扩展性和更加有效的操作环境

5、 何为操作系统的逻辑结构?有哪几种典型逻辑结构?

1、操作系统的逻辑结构:OS的设计和实现思路
2、① 整体结构(以模块为基本单位构建)
​ ②层次结构(所有功能模块按照调用次序排成若干层,相邻层间只有单向依赖或单向调用)
​ ③微内核结构(客户/服务器结构)(操作系统=微内核+核外服务器)

  • 4
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

杰西啊杰西

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值