《操作系统教程》第5版-Chapter2-处理器管理知识点整理

 
 
特权指令仅在内核态下才能使用的指令
非特权指令:目态与管态皆可。应用程序只能使用非特权指令
 
内核态与用户态:
内核态:全部机器指令允许运行
用户态转变为内核态的情况:
系统调用
中断(如I/O操作完成)
异常事件
 
程序状态字PSW:指示程序 状态,控制执行 顺序,保留与运行相关的各种 信息。实现程序状态的 保护和恢复
 
中断: 暂时中止现行程序在CPU上的运行, 转而执行相应事件处理程序,待 处理完成后再返回断点或调度其他程序执行的过程
 
P59
硬中断:硬件发出或产生的中断
中断源分类:外中断,内中断
外中断( 中断或异步中断): 处理器之外的中断信号
分为 可屏蔽中断不可屏蔽中断
 
内中断( 异常或同步中断): 处理器内部的中断信号
细分为:
1.访管中断:系统调用
2.硬件故障中断:电源失效
3.程序性异常:非法操作
无法屏蔽,必须立即响应处理
 
中断与异常的比较:
1. 中断是与当前运行程序无关的中断信号触发的CPU与中断是异步的,CPU对于中断是完全被动的
异常是CPU控制单元产生的,与CPU同步。大部分异常发生在用户态。唯一发生在内核态的异常是“缺页异常”
2.中断要求快速处理,中断处理程序过程中不能被阻塞。异常处理程序过程中可以被阻塞
3.中断允许嵌套,异常大多数为一重
 
软中断:软件上模拟硬件中断
 
**中断源种类
外部设备请求
故障中断:运算溢出,存储器运算器故障,电源
数据通道中断
程序自愿中断中断
时钟中断
 
** 三态模型
 
七态模型
线程: 轻量级进程。线程是进程中能够并发执行的实体,是进程的组成部分,也是 处理器调度和分派的基本单位
线程状态:运行,就绪,等待,终止
没有挂起:线程不是资源拥有单位。对换出内存的是其所属的进程
优点:
快速线程 切换
通信易于实现
减少管理 开销
并发程序提高
 
为什么引入线程:
开销:减少程序并发执行时所付出的 时空开销
并发性:使得 并发粒度更细并发性更好
分离“独立分配资源”与“被调度分派执行”
 
进程的两部分: 资源集合线程集合
 
进程映像——某时刻 进程的内容及其状态集合,包括:
进程控制块
进程程序块
进程核心栈
进程数据块
 
进程的组成: 控制块,程序块,核心栈,数据块
 
PCB进程控制块,进程描述符):进程有且仅有一个,进程存在的唯一标识。操作系统用来记录和刻画进程状态及信息的数据结构。
 
PCB的信息:
标识信息
现场信息
控制信息
 
为什么引入进程:
刻画系统的 并发性。程序的执行 不是连续的而是走走停停的。程序并发执行会引发 共享和竞争问题。“程序”是个静态概念,无法描述程序的并发性
解决资源的 共享性
 
调度的层次:
作业调度(高级调度): 从外存的作业里选择作业,分配资源,建立进程,获得竞争处理机的权利,作业调度就是内存与辅存之间的调度
中级调度内存调度。提高内存使用率和系统吞吐量。 把暂时不能运行的进程调至外存,此时进程的状态为 挂起态
进程调度
 
多线程的实现:
内核级线程(KLT):线程管理工作由内核完成。如Windows 2003,OS/2,Mach C
优点:
能够同时调度同一进程中的多线程并行运行
一个线程阻塞,其他线程(同一进程或不同进程) 的运行不受影响
切换速度快
缺点: 同一进程的线程切换需要内核态与用户态的转变系统开销大
 
用户级线程(ULT):线程管理工作由应用程序完成。如POSIX,Java线程库
优点:
无需使用内核特权,节省开销与资源
允许实现自己的调度算法
能够运行在任何操作系统上
缺点:
一个线程阻塞,整个进程阻塞
只能执行一个用户级线程,无法得益于多线程的并发执行
混合式线程:Solaris
 
低级调度算法:(P101)
FCFS
SJF
SRTF(最短剩余时间优先算法)
HRRF(最高响应比优先)
优先级调度算法
RR
MLFQ(多级反馈队列)
 
进程管理和控制:创建进程,阻塞进程,唤醒进程,挂起进程,激活进程,终止和撤销进程
 
 
中断屏蔽:禁止CPU响应中断或禁止中断产生
延迟或禁止中断的响应
协调中断响应与中断处理的关系
防止同级中断相互干扰
发布了14 篇原创文章 · 获赞 1 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/m0_37302219/article/details/104267762