操作系统教程

《操作系统教程》第5版-Chapter3-同步通信与死锁知识点整理

空扰寡人 提交于 2020-02-12 12:23:31
A级: 死锁: ***定义:一个进程集合内 每个进程都在等待 只能由此集合中的 其他进程才能引发的事件 ,而 无限期僵持 的现象 ***死锁产生的原因: 进程推进顺序不当 PV使用不妥 资源分配不均 资源使用不加限制 ***死锁的条件: 互斥 占有和等待 不剥夺 循环等待 ***解决方法: 死锁防止,死锁避免,死锁检测和恢复 死锁预防 : 静态分配 ——破坏条件 占有和等待 按序分配,层次分配 ——破坏 循环等待 死锁避免 银行家算法 —— 循环等待 死锁检测和恢复 资源剥夺 进程回退 进程撤销 系统重启 进程同步与互斥的解决: 信号量,管程,消息传递 *** 临界区 :进程中用于 访问临界资源 的代码。一次只允许一个程序访问 信号量PV: 信号中包括一个整形变量,和两个原子操作P和V,其原子性由操作系统保证,这个整形变量只能通过P操作和V操作改变。 P意味着信号量值减1,减完之后如果信号量值小于0,则说明资源不够用的,把进程加入等待队列。 V意味着信号量值加1,加完之后如果信号量值小于等于0,则说明等待队列里有进程,那么唤醒一个等待进程 管程 把 分散在各进程中的临界区集中起来进行管理 ,防止进程有意或无意的违法同步操作,便于用高级语言来书写程序 使用 条件变量 , wait() , signal() 管程的定义:管程是由局部于自己的若干公共变量

《操作系统教程》第5版-Chapter4-存储管理

ⅰ亾dé卋堺 提交于 2020-02-12 02:24:45
存储管理 存储 分配 地址 映射 存储 保护 存储 共享 存储 扩充 存储器层次:寄存器,缓存,内存,磁盘,磁带 寄存器:速度最快最贵 **源程序运行的三个阶段: 编译 :生成目标代码 链接 静态链接 :装载前将目标模块与库函数链接装配成一个完整的可执行程序 动态链接 :程序装载时一边装载一边链接 运行时链接 :目标模块与库函数的链接推迟到执行时才进行 装载 :装入物理空间 绝对装载 :始终与内存地址相同 可重定位装载 :根据内存当前状况决定放入的物理位置。使用的地址为相对地址 动态运行时装载 :允许内存的程序换出到磁盘,适当时再换入内存。前后物理位置可不同。即允许进程的内存映像不同时候在不同位置 **重定位 : 逻辑地址变物理地址 静态地址重定位 动态地址重定位 使用两个控制寄存器:基址寄存器和限长寄存器 运行时链接地址重定位 连续存储管理: 固定分区 缺点: 必须使用覆盖技术 内存利用率不高 无法动态扩充 限制多道程序的道数 动态分区 可变分区分配算法: 最先适应 :未分配区表或链表中的空闲区按地址从小到大排列 下次适应 :上次扫描结束处顺序查找 最优适应 :满足要求的 最小分区 最坏适应 :总是挑 一个最大的空闲区 给作业使用 快速适应 :经常用到的长度的空闲区设立 单独的空闲区链表 管理的数据结构:已分配区表,未分配区表 空闲区管理办法:链表 内存不足处理技术 移动

《操作系统教程》第5版-Chapter5-设备管理

僤鯓⒐⒋嵵緔 提交于 2020-02-11 22:26:27
外部设备: 存储型设备 I/O设备 设备管理的功能: 设备 中断处理 缓冲区管理 设备 分配和去配 设备 驱动调度 实现 虚拟设备 I/O控制方式 轮询 :查询指令——读写指令——转移指令 会中止原程序的执行。主机不能充分发挥功效,整个系统效率很低 中断 核心思想: 允许I/O设备主动打断CPU的运行 不必忙式轮询 响应中断请求后必须停止现行程序 DMA (Direct Memory Access) 直接存储器存取 无需CPU干预, 只有当整个数据块传送结束后,处理器才被中断 CPU总是把总线占有权让给DMA,“周期窃取”,降低CPU处理效率 每发出一次 I/O指令只能读写一个数据块 通道( I/O处理器 ) 完成内存和设备之间的信息传送, 与CPU并行工作 CPU需要完成一组相关的读写操作与有关控制时, 只需要向通道发送一条 I/O指令。通道完成传送时向CPU发送中断请求 通道程序是由一系列通道指令所构成的 DMA与通道的区别:(通道的自主权更大) DMA需要CPU来控制传输的数据块大小,内存位置。通道则自行控制 DMA控制器对应一台设备与内存传递数据。通道控制多台设备与内存的数据交换 独立于设备的I/O软件 设备命名与保护 提供与设备无关的块尺寸 缓冲技术 设备分配和状态跟踪 错误处理和报告 设备驱动程序 : 逻辑I/O转化为物理 I/O 缓冲技术: 目的:

《操作系统教程》第5版-Chapter1-操作系统概述知识点整理

旧城冷巷雨未停 提交于 2020-02-11 21:17:29
操作系统资源管理技术:复用,虚拟和抽象 复用:时分复用,空分复用 虚拟:物理资源与逻辑资源的对应。如SPOOLing,虚拟内存,VFS 时间换空间:虚拟存储技术 空间换时间:SPOOLing 抽象:资源体现为接口,接口表现为一组操作 操作系统最基础的抽象:进程抽象,虚存抽象,文件抽象 进程抽象:进入内存的执行程序在处理器上操作的状态集的一个抽象。对于用户来说,就是fork(),wait()和exec(),不关心细节操作 文件抽象:设备的一种抽象。open(),write(),read(),不关心细节操作 操作系统: 管理系统资源 控制程序运行 改善人机界面 提供各种服务 组织工作流程 为用户提供良好运行环境的一种系统软件 操作系统的作用:(接口与服务,进程调度,虚拟机,管理资源) 用户接口与公共服务:改善人机界面,提供各种服务 进程执行的控制者和协调者:控制程序运行,组织工作流程 扩展机与虚拟机 资源的管理者和控制者:管理系统资源 操作系统管理的资源:(CPU,硬盘,打印机,文件,网络) 处理器 存储 设备 文件 联网与通信 系统调用:使用系统服务 作用:保证系统安全性,提供一致性接口 系统调用的分类: 1.进程管理 2.文件管理 3.设备管理 4.存储管理 5.进程通信 6.信息维护:系统信息 操作系统的分类 批处理操作系统:批中作业输入作业队列,依次执行 关键机制是