存放访问地址区上限、下限
如果越界,发出越界中断请求,停止程序运行
重点:内存保护方式不仅限地址界限寄存器
这是操作系统第一章的思维导图,非常详细 |
操作系统第一章
功能
内存管理
内存分配
任务
为程序分配内存
提高存储器利用率
允许正在运行程序申请附加内存
分配方式
静态分配
内存划分固定大小、数量
动态分配
在系统运行中根据进程请求分配,动态变化
数据结构
用于内存分配的数据结构:记录内存使用情况:空闲区大小、起始地址
功能支持
分配功能
回收功能
内存保护
任务
使内核空间不会被随意访问
每道程序都在自己空间运行
实现方式
采用界限寄存器
存放访问地址区上限、下限
如果越界,发出越界中断请求,停止程序运行
重点:内存保护方式不仅限地址界限寄存器
地址映射
概念
把程序需要的逻辑地址——>物理地址的过程叫地址映射
地址映射
在硬件支持下完成
内存扩充
任务
借助虚拟技术,逻辑上扩容
目的
实现请求调入功能
装入一部分程序就启动,等执行时发现为装入,再请求调入
置换功能
请求调入时,如果空间不足,将一部分置换出去
进程管理
功能
进程描述
进程控制
进程创建
进程撤销
唤醒
阻塞进程
进程同步
多个进程、线程运行的协调与互斥
进程通信
进程之间信息交换
进程调度
选择可执行进程,分配给处理机
设备管理
任务
完成用户I/O请求
分配I/O设备
功能
缓冲管理
管理缓冲区
设备分配
设备处理
由设备驱动程序实现CPU与设备控制器之间的通信
设备独立性、虚拟设备
文件管理
文件存储空间管理
为文件分配外存
提高外存利用率
提高文件访问速度
目录管理
为文件建立目录、并进行组织
目录项
文件名、文件属性、文件地址
文件读写、存取
根据用户请求从外存中读取数据、或将数据写入外存
防止未经核准用户存取文件
防止冒名顶替存取文件
防止不正确方式使用文件
提供用户接口
命令接口
用户与计算机交互
联机
每次输入一条命令立即命令解释并执行
脱机
批处理用户接口
图形用户接口
程序接口
提供给程序员的
体系结构
软件体系结构
作用
为软件系统提供一个结构,行为,属性的高级抽象
包含
系统元素的结构
元素间的关系
指导元素的集成模式、约束
优点
降低开发后期错误数量
渐少软件维护成本
提高软件重用的抽象层次和粒度
提高系统质量、开发效率
操作系统结构分析
简单监控程序模型
任意时刻只有一个任务
代表:
FMS、IB-SYS
单体结构模型
所有软件、数据机构都在一个逻辑模块中
特点
结构简单,便于理解、实现
效率高
结构复杂
易引发死锁和循环调用
系统可修改性和可维护性差
典型
UNIX
MS-DOS
Linux
Mac OS x
BSD
层次结构
基本思想
讲操作系统分解为多个小的,易理解层,系统功能被隔离在不同层、形成一连串彼此连续的抽象串
典型
THE系统
客户/服务器与微内核结构
操作系统发展的里程碑
核心思想——功能外移
微内核只保留最基本的功能
其他功能放到服务器
优点
结构清晰
高灵活性、高可靠、可维护
缺点
效率不高
原因
消息收发依靠消息传递机制实现,比传统的直接调用代价高
解决办法
直接优化系统消息传递机制
扩大微内核、把关键服务和驱动程序加入内核中
减少用户态,核心态的切换
典型
发展方向
通用操作系统
COS-IX V2.3
嵌入式
典型
Mach操作系统
VxWorks
动态可扩展
解决问题
系统行为的动态改变
主要技术
UPCALL
在微内核中,通过核心层到用户层的系统调用实现扩展技术
代表
MIT大学的Exo kernel
DOWNLOAD
将软件构件动态的下载到内核,以达到改变操作系统行为目的
代表
哈佛大学的VINO
What
用户——硬件接口
目标
与硬件交互
为底层可编程部件提供服务
为应用程序提供环境
资源管理
前提
1现代系统特点是支持多任务
2需要对进行资源管理
原因
保证用户程序顺利执行
系统资源最优利用
管理包含
处理机
任意时刻处理机都只能处理一个程序流
内存管理
为多应用程序分配内存
应用程序地址空间互不干扰
程序执行完毕回收其所占内存
完成逻辑地址——物理地址转换
设备
接受用户I/O请求
为用户分配I/O设备
管理I/O缓存
驱动I/O设备
文件
吧长时间保留的数据信息以文件的形式放在外存储器中(硬盘,光盘,磁带,U盘)
外存空间分配
外存空间回收
文件按名存取
文件组织
共享
保护
发展
第一代计算机
电子管做器件
硬连线表示程序
单道批处理
晶体管做器件
使用磁性存储
多道程序
电路芯片做器件
分时
多用户同时使用终端
微机
Windows系统
Linux
Chrome OS
Mac OS
实时
特点
要求结果正确
规定时间内
VxWorks
对比特点
单道
特点
自动性
顺序性
单道性
缺点
进行I/O时,cpu只能等待
CPU资源利用低
多道
后备作业队列
特点
多道性
无序性
调度性
复杂性
优点
提高cpu,内存,I/O的利用率,系统吞吐量
缺点
系统平均周转时间长
周转时间是:从作业被提交给系统开始到作业完成为止的时间
缺乏交互
分时
特点
多路性
同一台主机上同时连接多个联机终端
独立性
多个终端用户彼此独立操作,互不干扰
及时性
用户在很短时间内获得响应
交互性
用户通过终端与系统进行人机对话
优点
人机交互方便
实时
特点
多路性
主要表现在经常对多路的现场信息采集,对 多个对象监控
独立性
与分时系统一样,每个终端在提出服务请求后彼此独立,互不干扰
及时性
实时信息处理系统:以人所能接受的等待时间来确定
实时控制系统:以控制对象所要求的开始截止时间、完成截止时间确定
交互性
仅限于访问特定的专用服务程序
可靠性
操作系统产品现状
服务器操作系统
运行在网络服务器上
Solaris、FreeBSD、Linux、Windows Server200X
微机
Windows个人计算机、Macintosh、Chrome OS
嵌入
第一个商用嵌入:VRTX32
特点
易移植
开放源码
高可靠、性能高
物联网
苹果iOS、Android Things、Windows10、FreeRTOS
优点
小巧
实时
可装卸
弱交互
强稳定
接口统一
低能耗
代码固化
特征
并发
多个事件同一时间间隔发生
共享
概念
任意时刻一种资源只被一个进程共享
分类
互斥共享
资源被访问时,其他进程只能等待
同时共享
虚拟
通过技术,把物理实体——>逻辑对应物
异步
每个进程不可预知
指令的执行
程序是指令的集合
指令周期
一个单一指令需要的处理称为指令周期
取指令
处理器从存储器中取一条指令
程序计数器(PC)保存下一次要取的指令地址
执行指令
取到的指令放在IR中,执行指令中的动作
动作分类
处理器与存储器之间的指令或数据传送
处理器与I/O之间的指令或数据传送
算术运算、逻辑运算
控制操作——修改指令的执行顺序
cpu寄存器
PC——存指令地址
IR——存正在执行的指令
累加器AC——临时存储体和累加操作
操作码对应操作
0001——从内存中读取数据送入AC
0010——把AC的内容送入内存
0101——吧内从中获取的值与AC中值相加,仍然放在AC
小结
程序的执行是反复取指令,执行指令的过程