操作系统期末复习重点史上
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
操作系统(Operating System)复习要点
第一章
操作系统:计算机系统中的一组系统软件,由它统一管理计算机系统的各种资源并合理组织计算机的工作流程,方便用户使用。具有管理与服务功能
操作系统的特征:并发性,共享性,随机性,可重构性,虚拟性。
并发就是指计算机系统中同时存在多个程序,宏观上瞧,这些程序就是同时向前推进的。
共享性:批操作系统程序与多个用户程序共用系统中的各种资源虚拟性:物理实体转化为若干逻辑上的对应物。
操作系统的功能:1,进程管理;2,存储管理;3,文件管理;
4,作业管理;5,设备管理;6,其她功能(系统安全,网络通信)。
传统OS中,进程就是系统调度的最小单位,就是程序的一次执行;而现代OS中则就是线程,就是程序一次相对独立的执行过程。
操作系统的发展历史
1,手工操作:穿孔卡片
2,监督程序——早期批处理:计算机高级语言出现,单道批处理单道批处理:串行执行作业中,由监督程序识别一个作业,进行处理后再取下一个作业的自动定序处理方式
3,多道批处理系统——现代意义上的操作系统
多道批处理:允许多个程序同时存在于主存之中,由中央处理机以切换方式为之服务,使得多个程序可以“同时”执行。
操作系统分类:批处理OS,分时OS,实时OS,嵌入式OS,个人计算机OS,网络OS,分布式OS,智能卡OS。
操作系统类型:批处理OS,分时OS,实时OS,网络OS,分布式OS。分时系统:支持多个终端用户共享一个计算机系统而互不干扰,能实现人机交互的系统。
特点:支持多用户,具有同时性、独立性、及时性、交互性。实时系统:使计算机系统接收到外部信号后及时进行处理,并且在严格的规定时间内处理结束、再给出反馈信号的系统。
特点:及时响应,快速处理,安全可靠。
宏观与微观两个发展方向:网络OS、分布式OS(大型系统)、嵌入式OS(微机)
研究操作系统的几种视角:软件的视角、用户接口、资源管理、虚拟机、服务提供者视角
第二章
作业的定义:用户要求计算机系统处理的一个计算问题。(或参考“小结”)
作业的两种控制方式
1,批处理:操作系统按各作业的作业控制说明书的要求,分别控制相应的作业按指定步骤执行。
2,交互:在作业执行过程中,操作系统与用户之间不断交互作用。
作业调度:从后备作业队列中选取某个作业投入主存参与多道运行。
调度算法原则:①尽可能运行更多的作业,优先考虑短作业;
②使处理机保持繁忙,优先考虑计算量大的作业;
③使I/O设备保持繁忙,优先考虑I/O繁忙的作业;
④对所有的作业都就是公平合理的。
选择原则:①选择的调度算法与系统的整体设计目标一致;
②注意系统资源的均衡使用,使I/O作业与CPU作业搭
配合理;
③作业应该在规定时间内完成,能缩短作业周转时间。调度性能的衡量——周转时间、平均周转时间、带权周转时间、平均带权周转时间
周转时间=完成时间-提交时间;
运行时间=完成时间-开始时间;
带权周转时间=周转时间÷运行时间;
响应比=1+等待时间÷运行时间
调度算法:(注意:一律以小时为单位)
FCFS:按到达先后顺序执行;
短作业优先法:按运行时间最短优先;
响应比优先法:按响应比最高的作业优先,注意每执行完一次
作业计算一次响应比。
交互式作业的管理—接口(①操作控制命令②菜单技术③窗口技术):字符(命令行)、菜单、图形
用户与操作系统之间的接口:①程序一级接口②作业控制一级接口P42 中的第二题(应用题),必做。
第三章
进程的定义:具有独立功能的并行程序一次执行过程
进程与程序的区别与联系:
区别:①程序就是指令的有序集合,静态;进程就是程序的一次运行活动,动态;
②进程就是一个独立运行单位,共享资源的实体,能并发执行;而程序不能。
联系:①一个程序对应多个进程,一个进程至少对应一段程序;
②静态地观察进程,与程序一样都由指令集与数据构成。进程的特征:动态性、并行性、独立性,异步性,结构性。
进程与线程的区别:线程就是进程内一个可独立执行的子任务,基本上不拥有或少量拥有资源。
进程的状态:就绪状态,自由状态(执行状态与阻塞状态)
状态转换:、原因就是自身的推进与外界条件的变化。
执行→阻塞:某一事件的请求执行;
阻塞→就绪:事件结束,等待调度;
就绪→执行:处理机分配进程。
进程控制块(PCB):管理与控制进程①进程标识符
②现行状态
③CPU状态保护区
④进程程序起始地址
⑤资源清单
⑥进程优先数
⑦队列指针或队列表
进程的互斥:进程对某一资源进行请求时,当且仅当只许一个使用。进程的同步:异步环境下, 一组并发进程因直接制约而互相发送消息,进行互相合作,互相等待,使得各进程在时间上先后
次序的过程。
临界区:访问临界资源的那段程序
临界资源:一次仅供允许一个进程使用的资源
临界区的调度原则:互斥访问,空闲让进,忙则等待,有限等待,让权等
待
信号量与P、V操作:
P(S):每执行一次,申请一次单位资源。S:=S+1
S≥0,继续执行; S<0,阻塞。
V(S):每执行一次,释放一个单位资源。S:=S-1
S>0:继续执行; S≤0,从信号量的等待队列中移出一个进程赋
予其就绪状态。
读者与写者问题:
begin
S , Sr , Semaphore ;
rc : integer ;
S := 1; Sr := 1; //S就是判断写者,Sr就是判断读写权利
Rc := 0 ; //判断读者就是否存在
cobegin
PROCESS readr i (i=1,2,……)
Begin
P(Sr);
rc :=rc +1;
if rc=1 then P(S);
V(Sr);
read file F ;
P(Sr);
rc := rc – 1;
if rc=0 then V(S);
V(Sr);
end;
PROCESS Writer j (j=1,2,……)
begin
P(S);
write file F;
V(S);
end;
coend;
end;
生产者与消费者问题: begin semaphore ,mutex ,empty ,full;
mutex:=1, empty:=n, full:=0;
cobegin
producer:begin
L1:produce next message;
P(empty);
P (mutex);
Add to buffer;
V(mutex);
V(full);
Goto L1;
consumer: begin
L2:
P(empty);
P (mutex);
Take from buffer;
V(mutex);
V(full);
Consume product;
Goto L2;
End;
coend;
End;
进程调度
引起调度的原因:①正在执行的进程执行完毕
②执行中进程阻塞自己,进行等待状态
③执行中进程提出I/O请求后被阻塞
④执行中进程执行了某种原语操作而阻塞
⑤在分时系统中,分配给该进程运行时间片已用
完
⑥在执行完系统调用,当系统程序返回用户进程
时,可认为系统进程执行完毕,可调度选择新一个
用户进程执行
⑦可剥夺方式下,就绪队列中,某进程优先级高于
当前执行进程
调度算法:FCFS、短进程优先、最高优先级优先(剩余作业最短优先、高响应比者优先)、轮转法(简单轮转,可变时间轮转,多队列轮转)
死锁的定义:计算机系统与进程所处的一种状态,当某进程提出资源请求后,使得若干进程在无外力作用下永远不能继续前进的状态。引起死锁的原因:①当进程提出资源请求时,而系统中多道程序共享
的系统资源不足;
②进程推进顺序非法。
两种资源:①永久性资源:可供进程重复使用的资源
②消耗性资源:由某个进程产生而由另一个进程消耗的
资源
死锁产生的四个必要条件:①互斥条件②请求与保持条件③不剥(只要死锁,4个同时成立) 夺条件④循环等待条件
死锁的解决:预防、检测与恢复