操作系统复习总结_第1页
操作系统复习总结_第2页
操作系统复习总结_第3页
操作系统复习总结_第4页
操作系统复习总结_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上计算机操作系统第一章 绪论计算机是一种用于处理信息的工具;程序是计算机用于处理信息的基本单元,程序的执行过程即为信息的处理过程;程序按顺序存储并按顺序执行。操作系统宗旨:面向系统资源,操作系统必须尽可能提高资源利用率;面向用户,操作系统必须提供方便易用的用户界面。操作系统定义:Ø (本质)是一个大型的软件系统;Ø (对内)负责计算机的全部软件、硬件资源的管理,控制和协调并发活动,实现信息的存储和保护;Ø (对外)为用户使用计算机系统提供方便的用户界面;Ø (结果)使计算机系统实现高效率和高自动化。操作系统功能:Ø 处理

2、机管理(最重要的功能):作业,进程Ø 存储管理:内存Ø 设备管理Ø 文件管理Ø 提供良好的用户界面:操作命令界面(键盘命令、图形界面、批处理界面),系统调用界面多道程序设计技术的特点(现代操作系统的基础):多道,宏观并行,微观串行;操作系统分类:Ø 批处理系统:优点:吞吐量大,资源利用率高;缺点:不具有交互性Ø 分时操作系统:多路调制性,独占性,交互性Ø 实时操作系统:对响应时间的实时要求(可高可低);可靠性和安全性放第一位,效率其次,交互性差;系统整体性强。(实时控制系统:响应速度快,可靠性要求高;实时信息处理系统:强调系

3、统的安全性和可靠性,而不具备分时系统的强交互性)Ø 网络操作系统:服务于计算机网络,按照网络体系结构的各种协议Ø 个人计算机操作系统:Windows、Linux系统Ø 分布式操作系统操作系统特性:Ø并发性Ø共享性Ø 不确定性Ø 虚拟性第三章 用户界面操作系统用户界面的两种类型:Ø 操作命令界面:键盘命令(目录操作、文件操作、系统管理)、图形界面(具有里程碑式的意义)、批处理界面(对批处理文件中各作业的执行过程进行控制,使用户能够在作业级别上控制多个作业)Ø系统调用界面:任何操作系统都必须提供系统调用界面关

4、系:操作命令界面是在系统调用界面的支持下开发完成的不同的操作系统针对自身的特点提供不同的用户界面,如:Ø分时系统必须提供键盘命令和系统调用界面Ø 批处理系统则必须提供批处理控制语言和系统调用界面系统调用与子程序调用的区别:系统调用子程序调用系统调用的程序是操作系统的程序,其操作是针对系统资源的,执行时处理机处于管态或核态。 子程序调用的程序是用户的程序,其操作不涉及系统资源,执行时处理机处于目态。 系统调用时会产生中断,并通过中断使CPU的态由用户态转换为管态。 子程序调用时不会产生中断,CPU的态也不会改变,都是目态。系统调用的命令由操作系统提供。子程序调用命令由所用的语

5、言系统提供。 第四章 进程及进程管理现代操作系统最主要的特点:实现多道程序并发执行,并由此引发资源共享;进程概念引入的目的:为了对并发执行的程序进行动态描述;进程是操作系统最核心的概念。程序并发执行的特点: Ø 失去程序的封闭性与可再现性Ø 程序与任务不再一一对应Ø 程序并发执行中存在相互制约的关系导致“与时间有关的错误”的原因:Ø 与诸程序的执行速度有关;Ø 共享了同一个变量或者互相需要协调同步;Ø 对于变量的共享或者互相协作的过程没有进行有效地控制。一进程进程的定义:进程,是一个具有一定独立功能的程序关于某个数据集合的一次运行活动

6、,是操作系统进行调度和资源分配的基本单位。进程由一个程序段和一个PCB组成。进程是程序在并发环境中的执行过程。进程分为系统进程和用户进程。系统进程运行时CPU处于系统态(核态或管态);用户进程运行时CPU处于用户态(目态)。进程与程序间的关系:Ø 进程中包含了需要执行的程序,程序是进程的一个组成部分。Ø 进程与程序的关系主要体现在以下几点:p进程是一个动态概念,而程序是一个静态概念p进程具有并行特性,而程序没有。p进程与程序之间存在多对多的联系(无一一对应关系)。进程映像指进程实体的组成,它主要包括两个部分:程序和进程控制块进程控制块PCB:Ø实质:定义的一个数据

7、结构Ø作用:控制和管理进程在执行过程中的动态信息,是进程存在的唯一标识,以此来感知进程的存在!Ø与程序的关系:每个进程有唯一的PCB;OS依据PCB管理进程;利用PCB来管理进程的动态、并发;PCB是进程存在的唯一标志,进程存在则PCB存在,进程撤消则PCB消Ø 内容:进程标识、处理器状态信息及现场保护区、进程控制信息进程的三态模型: 终止态 新建态进程控制:Ø进程创建:分配进程标 识及空白PCB 分配内存空间 复制父进程内存空间的内容到该进程内存空间中 初始化PCB 置状态为就绪,插入就绪队列 格式: int fork( )返回值:=0创建成功,从子进

8、程返回;>0创建成功,从父进程返回;=1创建失败。Ø进程撤销:void exit ( int status )Ø进程睡眠:sleep(n)Ø 进程唤醒二同步与互斥临界资源指的是一次只允许一个进程使用的独占资源。诸进程对它的访问必须互斥。(包括可能的系统资源及用户资源)临界区是指包含了访问临界资源的那段程序。1)进程在进入临界区之前必须先申请,2)当且仅当临界区中涉及的临界资源没有其它进程使用时才能进入临界区;3)在出临界区后立即释放临界资源。互斥必要条件:Ø诸进程共享同一个临界资源Ø共享的方式是先来者先使用的异步方式互斥机制必须满足以下要

9、求:Ø实现互斥Ø有空让进Ø 有限等待同步机构:Ø 锁和上锁、开锁操作:可能产生进程的忙等待!CPU效率下降!解决互斥的最简单方法:为临界区设置锁位Ø 信号灯(信号量)及其P、V操作(申请或释放信号量的操作,由系统提供的系统调用完成,不允许中断)/*P操作原语请求资源或条件*/P(s)s;if(s0)保留调用进程的CPU现场; 将该进程插入s的等待队列;置该进程为等待态;转进程调度;/*V操作原语释放资源或条件*/V(s)s;if (s0) 移出s等待队列中的第一个进程; 将该进程插入就绪队列; 置该进程为就绪态;不同层之间通过原语来实现信息交互

10、;P、V操作用原语实现,不允许中断。用信号灯实现进程互斥的步骤:Ø 寻找共享的临界资源;Ø 判定临界区;Ø 设置信号量及其初值;Ø 使用mutex的P、V操作将临界区括起来。互斥问题P、V信号量相同,同步问题P、V信号量不同。【注】如果有n个终端,则mutex信号量的取值范围为: (n1)mutex1其物理含义为:Ø 当机票库空闲时,mutex=1。Ø 当有一个终端进入,对机票进行处理,其它终端进程还没有到来时,mutex=0。Ø 当所有终端进程都到来,且有一个正在对机票进行处理时,mutex=(n1)。它表示有n1个进程在

11、等待队列上等待。【例】多个生产者,多个消费者共享多个缓冲区:算法描述:main() /*定义信号量及其初值*/int full=0;int empty=n;int mutex=1;cobegin produceri(); consumerj();coend/*某个生产者进程i*/produceri() while(生产未完成)生产一个产品; P(empty);/请求缓冲区有空条件 P(mutex);/请求进入临界区 送一个产品到缓冲区;/临界区 V(mutex);/释放临界区 V(full);/释放缓冲区有数条件/*某个消费者进程j*/cosumerj() while(还要继续消费)P(ful

12、l); /请求缓冲区有数条件 P(mutex);/请求进入临界区 从缓冲区中取一个产品;/临界区 V(mutex);/释放临界区 V(empty);/释放缓冲区有空条件 消费产品;三线程线程及其特征: Ø 线程是调度执行的最小单位;Ø 线程从属于某个进程,是该进程的某个执行路线,相对独立的可执行单元Ø 一个进程中至少包含一个线程;Ø 由于同一进程内的线程之间涉及资源共享,所以需要同步机制来实现进程内多线程之间的通信;Ø 与进程类似,线程还可以创建其它线程,线程也有生命周期(新建态,就绪态,运行态,阻塞态,结束态),也有状态的变化。Ø

13、线程由与其相关的堆栈、寄存器和线程控制块TCB组成线程与进程的主要区别与联系 :调度执行的最小单位是线程,资源分配的最小单位是进程;在同一进程中,线程的切换不会引起进程的切换;而在不同的进程中进行线程的切换,会引起进程的切换线程的分类:Ø 用户级线程(创建和调度在用户空间进行):优点:开销小,算法灵活,高适应性;缺点:易阻塞,不便利用多处理器Ø 内核级线程(由操作系统完成):优点:调度一个进程中的多个线程,提高速度和效率;进程中的一个线程被阻塞时,该进程中的其它线程仍可运行;可用线程的方式实现。缺点:同一进程中的线程切换要有两次态的转换(用户态内核态用户态),因为线程的调度

14、运行在内核态,而应用程序运行在用户态。线程系统调用:Ø 创建:int pthread_create()Ø 终止:int pthread_exit()Ø 等待终止:int pthread_join()第五章 资源分配与调度操作系统对资源管理和分配的目标:Ø 保证资源有高的利用率Ø 尽可能满足更多用户的需求Ø 对不可共享的资源实施互斥使用Ø 防止由于资源分配不合理而引起的死锁资源分配的两种方式:Ø 静态分配(在作业级实施):当一个作业运行前,将它要求的所有资源一次性分配给该作业,直到该作业完成时释放其占用的所有资源,分

15、配给作业的资源伴随作业的整个运行过程。 缺点:效率太低Ø 动态分配(在进程级实施):当一个进程要求使用某个(类)资源时,向系统提出资源的请求,系统响应进程的请求将某种资源分配给进程,进程使用完毕后立即释放该资源优点:系统资源的利用率提高 缺点:有可能造成死锁一死锁死锁的定义:系统中所有的并发进程彼此互相等待,在得到对方资源之前不会释放自己所拥有的资源的一种任一进程都不能继续运行的系统状态。在死锁状态下,进程都处于阻塞态,解除它们阻塞的事件或条件永远也不会发生产生死锁的根本原因:系统资源不足(资源竞争+资源分配不合理) 【注】设系统所拥有的资源总数为M,共享该资源的进程数为P,每个进程

16、所需使用该资源的最大需求为N,则 MP*(N-1)+1 时无论如何分配都不会产生死锁产生死锁的必要条件和解决方法:Ø 互斥条件:假脱机技术Ø 不可剥夺条件(非抢占):强迫抢占Ø 占有并等待(部分分配):静态分配Ø 环路条件(循环等待):有序分配解决死锁的策略:Ø 预防死锁采用静态资源分配方法(资源独占)Ø 避免死锁采用有控资源分配方法(执行中保证)Ø 死锁的检测与忽略二银行家算法:Ø 安全序列在该序列中所有的进程都可以因为之前进程的完成所释放的资源使得它们一个接一个的完成。表示为<Pi,Pj,Pm>,其

17、中Pi,Pj Pm代表系统中的进程Ø 安全状态如果系统中的所有进程至少能找到一个安全序列,则称系统当前处于安全状态。【例】:假定系统有10个资源(为了说明问题的简单,不管它是什么资源),目前分配的情况如左表:此时,系统中只剩下2个资源,这时就要考察能满足哪个进程,不能满足P和R的最大要求,能满足Q,于是将剩下的2个资源分配给Q,Q就能完成,然后释放所占用的6个资源。可满足P,也可满足R,这时不论分给谁都能保证完成。安全序列:Q->P->R或Q->R->P,系统处于安全状态。【例】设系统中有3种类型资源(A、B、C)和5个进程P1、P2、P3、P4、P5。已知A

18、、B、C的总数量为17,5,20,在T0时刻的状态如表所示进程最大需求矩阵已分配矩阵ABCABCP1559212P2536402P34011405P4425204P5424314系统采用银行家算法避免死锁。问1)T0时刻是否为安全状态?若是,则给出安全序列。2)T0时刻若P2已分配0,3,4,能否实施分配?为什么?【解】1)(1)计算已分配资源数和剩余资源数可算得已分配资源数为:15,2,17,因已知资源总数,所以剩余资源数:2,3,3(2)计算各进程的剩余资源需求矩阵ABCP1347P2134P3006P4221P5110(3)将剩余资源数组带入各进程的剩余需求中找安全序列,<P5,P

19、4,P2,P3,P1>、<P4,P5,P2,P1,P3>等等2)不可以第六章 处理机调度处理机的调度的目标:Ø CPU使用率高:使处理机尽可能忙Ø 响应时间快:与用户交互快捷Ø 周转时间短:用户等待输出的时间短Ø 等待时间小:公平,确保每个进程都能公平地占有处理机Ø 系统吞吐量大:相同时间内完成的作业尽可能多批处理系统中的处理机调度分两级:作业调度(宏观调度)和进程调度(微观调度)一作业调度作业的状态:提交、后背、执行、完成作业调度的主要任务是完成作业从后备状态到执行状态和从执行状态到完成状态的转变。作业控制块JCB作业调度算

20、法的性能衡量指标:平均周转时间和带权平均周转时间Ø 周转时间完成时间提交时间等待 时间执行时间Ø 平均周转时间T周转时间总和÷作业数Ø 带权周转周转时间÷执行时间Ø 平均带权周转时间W带权周转总和÷作业数 【例】见课本作业调度算法: 先来先服务FCFS:按作业提交的先后次序进行调度 短作业优先SJF:选择运行时间最小的作业进行调度 响应比高优先HRRN:响应比等待时间/运行时间 优先调度 时间片轮转RR【例】有5个批处理的作业(A,B,C,D,E)几乎同时到达一个计算中心,估计的运行时间分别为2,4,6,8,10分钟,他们的

21、优先级分别为1,2,3,4,5(1为最底)。对下面的每一种调度算法,分别计算作业的平均周转时间:1、最高优先级优先;2、先来先服务FCFS(作业到达顺序为:CDBEA);3、短作业优先(SJF);4、时间片轮转(时间片为2分钟)。【解】1、最高优先级:2、FCFS算法:(作业到达顺序为:CDBEA)3.SJF算法:4. 时间片轮转算法:(时间片为1分钟)二进程调度进程调度的功能:Ø 记录系统中所有进程的执行情况 Ø 决定调度策略Ø 优先调度原则进程就绪队列按进程优先级高低排序Ø 先来先服务原则进程就绪队列按进程来到的先后次序排序Ø 实施处理机的

22、分配和回收进程调度的方式:Ø 非剥夺式调度:进程自动放弃CPUØ 可剥夺式调度:系统强迫进程放弃CPU进程调度算法:Ø FCFSØ 循环轮转调度(RR)Ø 多级反馈队列调度第七章 内存管理三级存储结构:高速缓存、内存和外存 一主存管理的功能地址映射(将程序地址空间中使用的逻辑地址变换成内存中的物理地址的过程):w 物理地址:把内存分成若干个大小相等的存储单元,每个单元给一个编号,这个编号称为内存地址w 逻辑地址:用户编程序时所用的地址w 地址映射方式:Ø 静态地址映射:作业装入时进行重定位 (软件实现)Ø 动态地址映射:程序

23、动态执行时进行重定位 (硬件完成)主存分配:w 主存管理策略:主存分配策略、放置策略、调入策略 虚拟存储:是操作系统采用虚拟技术,在不改变物理内存实际大小的情况下提供的逻辑上被扩充了的内存。w 局部性理论(支持虚拟存储的理论):时间局部性和空间局部性w 实现虚拟存储的方法Ø 请求调入策略:请求分页、请求分段。 Ø 交换技术Ø 采用覆盖技术存储保护:w 存储保护方法:Ø 上下界寄存器或基址加限长寄存器:下界寄存器 物理地址上界寄存器基址寄存器物理地址基址+限长寄存器Ø 存储保护键法;Ø 界限寄存器+核心态/用户态。【例】:有一程序装入内

24、存的首地址是500,末地址是1500,访问内存的逻辑地址是500、345、1000,判断是否合法。【解】:下界寄存器:500 上界寄存器:1500 逻辑地址装入内存的首地 物理地址 1、500500 1000 500 1000 1500() 2、345500 845 500 845 1500() 3、1000500 1500 500 1500 1500(×)二分区内存管理指导思想:主存适应作业,作业有多大就分多少,且物理空间连续。1.类型:w 固定分区:分成若干个大小不等的区域 空间浪费大,内脆片,并发度受影响w 动态分区:有多大分配多大 作业释放后空间不连续,外碎片2.动态分区存储

25、管理技术:w 地址映射w 分区的分配机构 首次适应:空闲区按起始地址递增顺序排列w 分区的分配与放置策略 最佳适应:空闲区按由小到大的顺序排列 最坏适应:空闲区按由大到小的顺序排列【例】某时刻系统中有三个空闲区其大小和首址为:(35KB,100KB)、(12KB,156KB)、(28KB,200KB)有一作业系列:(JOB1,12KB)、(JOB2,30KB)、(JOB3,28KB) 分别使用首次适应、最佳适应和最坏适应算法对下列作业进行分配【解】3.碎片问题: 拼接技术 有没有更好的办法彻底解决分区的碎片问题?分页内存管理三分业内存管理指导思想:程序适应主存1.分页管理的基本原理:w 概念:

26、程序地址空间分成大小相等的页,内存也分成与页面大小相等的块,程序装入内存时针对每一页分配一个内存块w 页表:页号+块号w 虚地址结构:页号P=逻辑地址 % 页大小;页内位移W=逻辑地址 mod 页大小w 地址变换:Ø 块起始地址页长度×块号Ø 块内位移=页内位移Ø 物理地址块起始地址页内位移W 【例】有一系统采用页式存储管理,有一作业大小是8KB,页大小为2KB,依次装入内存的第7、9、10、5块,试将虚地址7145,3412(十进制)转换成内存地址。【解】求虚地址 3412 P3412 2048 1W 3412 mod 2048 1364MR=9*20

27、48+1364=19796求虚地址 7145:P7145 2048 3W7145 mod 2048 1001MR=5*2048+1001=11241【例】有一系统采用页式存储管理,有一作业大小是8KB,页大小为2KB,依次装入内存的第7、9、A、5块,试将虚地址0AFEH,1ADDH(十六进制)转换成内存地址。【解】求虚地址0AFEH的物理地址:0000 1010 1111 1110P1 W010 1111 1110MR0100 1010 1111 11104AFEH求虚地址1ADDH的物理地址:0001 1010 1101 1101P3 W010 1101 1101MR0010 1010 1101 11012ADDH2.静态分页管理:静态分页管理于作业开始执行前将其全部页装入内存。静态分页管理没有提供虚拟内存。w 数据结构有3张表:页表、请求表、存储页面表 3.动态分页管理:w 理论基础:局部性理论(时间局部性+空间局部性)w 请求分页的页表:页号、块号、中断位、辅存地址、引用位、修改位w 请求分页的页面置换算法:最优算法OPT、先进先出算法FI

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论