操作系统复习提纲 | 顾建伟个人博客
现在的位置: 首页 > 操作系统相关 > 正文
操作系统复习提纲
2013年05月17日 操作系统相关, 电脑相关 ⁄ 共 4703字 暂无评论

分享到:


操作系统的目标: 有效性(1.提高系统资源利用率2.提高系统吞吐量),方便性,可扩充性,开放性

操作系统的作用:1.OS作为用户与计算机硬件系统之间的借口(3种借口1命令方式2系统调用方式3.图形用户方式)2.OS作为计算机系统资源的管理者(资源分为4类处理器,存储器,I/O设备,信息)3.OS实现了对计算机资源的抽象

操作系统的发展过程: 1.单道批处理系统2.多道批处理系统3.分时系统(UNIX)4.实时系统

单道特征:(1)自动型(2)顺序性(3)单道性 多道特征:内存中同时存放几个作业;宏观上并行运行:都处于运行状态,但都未运行完;微观上串行运行:各作业交替使用CPU;

分时操作系统的特征:(a)多路性:一台计算机与若干终端相连接,终端上的用户可以同时或基本同时使用计算机。(b)独立性:由于时间片很短,使用户感觉不到别人也在使用这台计算机,好象只有自己独占机器一样。 (c)及时性:用户的请求在很短时间内得到响应。

(d)交互性:用户通过终端与系统人机对话(d)交互性。实时操作系统的主要特征:及时响应、高可靠性、专用性、少人工干预

多道批处理系统的目的提高资源的利用率和系统吞吐量

操作系统的特征:并发(最重要的特征),共享,虚拟,异步性

并发,共享最基本的特征

操作系统的主要功能: 1 处理机管理2 存储管理3 设备管理4 文件管理5 用户接口

OS的结构设计 1传统的操作系统结构2客户/服务器模式3面向对象的设计模式4微内核OS结构

描述程序执行时动态特征的概念,这就是进程

程序的执行有两种方式:顺序执行和并发执行

顺序执行的特征1顺序2性封闭性3可再现性

并发执行的特征1间断(异步)性 2失去封闭性3失去可再现性

进程与程序的区别

1进程是动态的,程序是静态的:程序是有序代码的集合;进程是程序的执行。通常进程不可在计算机之间迁移;而程序通常对应着文件、静态和可以复制。

2进程是暂时的,程序的永久的:进程是一个状态变化的过程,程序可长久保存。

3进程与程序的组成不同:进程的组成包括程序、数据和进程控制块(即进程状态信息)。

4进程与程序的对应关系:通过多次执行,一个程序可对应多个进程;通过调用关系,一个进程一个程序。

进程的三种基本状态:运行状态(Running) 就绪状态(Ready) 阻塞状态(Blocked)

进程的特性:1结构特征2)动态性(最基本特征)3)并发现4)独立性5)异步行

进程的定义:一个具有一定独立功能的程序在一个数据集合上的一次动态执行过程:

进程实体:程序段,相关数据段,PCB,3部分组成

进程控制块(PCB)是由OS维护的用来记录进程相关信息的一块内存

进程控制块的作用:使一个在多道程序环境下不能独立运行的程序,成为一个能独立运行的基本单位,一个与其它进程并发执行的程序

进程控制块的4方面信息:1)进程标示符2)处理机状态3)进程调度状态4)进程控制信息

进程的同步(Synchronization)是解决进程间协作关系的手段。也就是对多个相关进程在执行次序上的协调。这些进程相互合作,在一些关键点上可能需要相互等待或互通消息。

进程同步的基本概念1两种形式的制约关系2临界资源(独占设备)3临界区4同步机制应遵循的规则1)空闲让进2)忙则等待3)有限等待4)让权等待

信号量机制:1整形信号量2记录型信号量3AND型信号量4信号量集

进程可以通过P、V两个特殊的操作来发送和接收信号,如果相应的信号仍然没有送到,进程将被挂起直到信号到达为止。

放水果

int S=1; /* S=1表示盘子为空*/int Sa=0;int So=0;

main( )

{ cobegin father( ); son( ); daughter( );coend }

father( )

{ while (1) { P(S); 将水果放入盘中; if (放的是橘子) V(So); else V(Sa); } }

son( )

{whlie(1) { P(So); 从盘中取出橘子; V(S); 吃橘子; } }

daughter()

{ whlie(1) { P(Sa); 从盘中取出苹果; V(S); 吃苹果 } }

 

调度类型

高级调度,又称为作业调度、长程调度或宏观调度。用于决定对外存上处于后备状态的作业进行选择,给选中的作业调入内存,并为它们创建进程、分配资源,并将新创建的进程排在就绪队列中,准备执行。

作业调度的主要任务是完成作业从后备状态到执行状态和从执行状态到完成状态的转变

作业调度功能:1.分配作业控制块JCB;2.按一定的调度算法,从后备作业中选择一个或几个作业进入系统内存;3.为被选中的作业创建进程,并且为其申请系统资源;4.作业结束后作善后处理工作。

1.接纳多少个作业(取决于多道程序度)

2.接纳哪些作业(取决于采用的调度算法)

低级调度又称为进程调度短程调度微观调度。主要任务是按照某种策略和方法选取一个处于就绪状态的进程,将处理机分配给它。进程调度的运行频率很高

低级调度可以采用下面两种方式: 1.非抢占方式2.抢占方式

中级调度又称为中程调度交换调度。主要任务是按照某种策略和方法,将处于外存对换区中的,重新又具备运行条件的就绪进程调入内存,或将处于内存就绪状态或内存阻塞状态的进程交换到外存对换区。

调度方式和算法的若干准则

面向用户的准则1.周转时间短(带权周转时间 W=T/Ts)2.响应时间快3.截止时间的保证4.优先权准则

面向系统的准则1.系统吞吐量高2.处理机利用率好3.各类资源的平衡利用

调度算法1 先来先服务调度算法(利于长作业)2 短作业优先调度算法(对长作业不利)

优先权调度算法的类型非抢占式优先权算法 抢占式优先权调度算法

优先权的类型1.静态优先权 确定优先权的依据有:(1)进程类型。(2)进程对资源的需求。(3)根据用户要求。2.动态优先权

高响应比优先调度算法 优先权=(等待时间+要求服务时间)/要求服务时间

时间片轮转调度算法 时间片大小的确定 1.系统对响应时间的要求2.就绪队列中进程的数目3.系统的处理能力

 

 

 

 

死锁是指多个进程因竞争资源而造成的一种僵局,若无外力作用,这些进程都将永远不能再向前推进

产生死锁的原因1)竞争资源(2)进程推进顺序不当

产生死锁的必要条件 1、互斥条件2、不剥夺条件3、请求和保持条件4、环路等待

处理死锁的基本方法 1.预防死锁2.避免死锁3.检测死锁4.解除死锁

预防死锁的方法1摒弃“请求和保持”条件2摒弃”不剥夺”条件3摒弃“环路等待”条件

存储管理的功能:1、主存储器的分配和回收 2、提高主存储器的利用率3、存储保护4、内存扩充

存储管理的主要任务1)提高内存利用率2)内存的分配与回收3)地址映射4)虚存扩充

地址转换有两种方式,一种方式是作业装入时由作业装入程序实现地址转换,称为静态重定位;另一种实在程序执行时实现地址转换,称为动态重定位

静态重定位:地址变换只是在装入时一次完成,以后不再改变。它根据装配模块将要装入的内存起始地址,直接修改装配模块中的有关使用地址的指令。

静态重定位的优点:无须硬件支持。缺点:(1)程序重定位以后就不能在内存中移动(移动时它们的物理地址都发生了变化)。(2)要求程序的存储空间是连续的,不能把程序存储到若干个不连续的区域中。

动态重定位是指在程序执行过程中进行地址重定位,即把装入模块装入内存后,并不立即把装入模块中的相对地址转换成绝对地址,而是把这种转换推迟到程序要真正执行时,每次访问内存单元前才进行地址变换。动态重定位可使装配模块不加任何修改就装入内存,装入内存后的所有地址仍然都是相对地址

动态分区分配 是根据进程的实际需求,动态的为之分配内存空间

在实现可变分区分配存储管理方式时,必须解决下述三个问题:(1)分区分配中所用的数据结构1.空闲分区表2.空闲分区链;(2)分区的分配算法;(3)分区的分配和回收操作。

分区的分配算法⑴首次适应算法⑵循环首次适应算法⑶最佳适应算法⑷最差适应算法

动态重定位分区分配算法  与动态分区分配算法基本相同;差别仅在于:在这种分区算法中,增加了“紧凑”功能,当找不到足够大的空闲分区来满足用户需求时,进行紧凑。

对换是指把内存中暂不能运行的进程,或暂时不用的程序和数据,换出到外存上,以腾出足够的内存空间,把已具备运行条件的进程,或进程所需要的程序和数据,换入内存。实际上是用辅存作缓冲,让用户程序在较小的存储空间中,通过不断地换出作业来运行较大的作业。对换是提高内存利用率的有效措施。

分页存储管理是将一个进程的逻辑地址空间划分成若干个大小相等的区域,称为。相应地,将物理内存空间划分成与页相同大小的若干个物理块,称为块或页框

虚拟存储技术的特征1不连续性2部分交换3大空间

虚拟存储器的特征 1多次性2对换行3虚拟性(最重要特征)

请求分页系统是建立在基本分页基础上的,为了能支持虚拟存储器功能而增加了请求调页功能和页面置换功能

哪几种可能造成中断(缺页,越界,保护)

缺页率表示“缺页次数 / 内存访问次数”(比率)或“缺页的平均时间间隔的倒数”

置换算法最佳算法(OPTl)最近最久未使用算法(LRU)先进先出算法(FIFO)

 

 

 

 

 

设备的分类

1按使用特性分类 存储设备,输入输出设备

2按传输速率分类 低速设备(键盘、鼠标、语音输入),中速设备(行式打印机、激光打印机),高速设备(磁带机、磁盘机、光盘机)

3按信息交换的单位分类 块设备(可寻址DMA方式),字符设备

4按共享性分类 独占设备,共享设备,虚拟设备

设备管理的目标1为用户提供方便、统一的界面 2提高设备的利用率 3设备分配 4缓冲区管理 5实现物理I/O设备的操作

I/O通道指专门负责输入输出工作的处理机。使原来由CPU处理的I/O任务转为通道来承担。解决了输入输出操作的独立性和各部件工作的并行性。

通道类型 1.字节多路通道2.数组选择通道3.数组多路通道

I/O控制方式 1程序I/O方式、2中断方式、3 DMA方式、4 I/O通道方式。

缓冲技术 为了解决CPU与I/O设备间速度不匹配的矛盾,提高I/O速度和设备利用率,采用了缓冲技术平滑各种不同速度设备之间的信息传输。

缓冲的引入 1、改善CPU与I/O设备间速度不匹配的矛盾 2、可以减少对 CPU的中断频率,放宽对中断响应时间的限制 3、提高 CPU和 I/O设备之间的并行性

设备驱动程序的功能

(1)接收上层软件发来的抽象要求,并转换成具体要求。

(2)检查用户I/O请求的合法性,了解I/O设备的状态,设置工作方式。

(3)由驱动程序向设备控制器发出I/O命令,启动分配到的I/O设备,完成指定的I/O操作。

(4)及时响应由控制器或通道发来的中断请求,调用相应的中断处理程序进行处理。

(5)对于设置有通道的计算机系统,驱动程序还应能够根据用户的I/O请求,自动地构成通道程序

 

设备独立性(Device Independence为了提高OS的可适应性和可扩展性,必须实现设备的独立性(设备无关性)用户在编制程序时所使用的设备与实际使用的设备无关,即不直接使用物理设备名(或设备的物理地址),只能使用逻辑设备名;而系统在实际执行时,将逻辑设备名转换为某个具体的物理设备名,实施I/O操作。

设备分配依据的主要数据结构 系统设备表(SDT)设备控制表(DCT)控制器控制表(COCT)通道控制表(CHCT)

设备分配应考虑的策略1设备的固有属性(1独享设备2 共享设备3可虚拟设备)2设备分配算法(1先来先服务2优先级高者优先)3设备分配中的安全性(1、安全分配方式

2、不安全分配方式)

SPOOLing技术1输入井和输出井2输入缓冲区和输出缓冲区3输入进程SPi和输出进程SPo

 

说出你的想法!
有事加我的QQ:932404999(微博ID:顾建伟个人博客网)
×