计算机操作系统专升本重要.ppt
操作系统(专升本)Mail:手机:,操作系统复习安排了解考试的基本信息和考纲要求掌握合适的复习方式,理清操作系统的线索和主要内容针对各章内容和习题,有针对性地复习和训练依据线索回顾基本概念和知识点,1-1 往年考试题型和分数1.单选题25-30分,25-15小题2.填空题20分,10个空3.简答题20-25分,4-5小题4.综合题30分,3大题,1-2 往年考试特色 04年,05年,06年1.选择题分布在各个章节,兼顾整个教材,考核主要侧重基本概念和知识点例1.SPOOLING是利用_为用户提供虚拟的输入/输出设备的。A.主存 B.磁盘 C.输入机 D.寄存器例2.在不使用快表的分页式存储管理中,访问一个数据需要访问_次内存。A.1 B.2 C.3 D.4,1-2 往年考试特色2.填空题延续选择题的风格,一般情况下是对选择题的进一步补充,但还是集中在重要知识点上.例1.把允许几个作业在执行期间交替使用的设备成为_设备。例2.内存与外存进行信息交换的单位是_参考P122,1-2 往年考试特色3.04年的简答题各章一题,集中在基本概念和知识点,标明为“理解”。05年的简答题相当于描述题带有分析味道,侧重理解和逻辑性。06年的简答题考核主要知识点,辅助理解分析。,1-2 往年考试特色例1.简述操作系统的基本特征例2.简述引起死锁的四个必要条件例3.简述SPOOLING系统的基本组成例4.计算机有了通道后,如何实现CPU与外射的并行工作?例5.什么是设备独立性?该特性有什么优点?例6.网络操作系统和分布式操作系统的主要区别是什么?,1-2 往年考试特色4.这几年的综合题侧重考核:进程通信的P/V操作 存储管理的缺页中断和计算 作业调度,平均周转时间计算 分页式系统的地址映射,1-2 往年考试特色例1.某分页存储管理系统,页内地址为11位,逻辑地址为24位。请问:(1)每页有多少字节?(2)逻辑地址空间有多少页?(3)逻辑地址3456对应的物理地址是多少?,2-1 复习的基本过程:全面复习(细致地看一遍书)(形成线索/框架)重点复习(针对提纲扩大范围)(达到一看就知道)习题强化(试题/补充/模拟)(透过题目复习),2-2 复习的基本要求:OS是一门理论性和实践性很强的课程,绝大部分都可作为考试的内容,但是从课程性质和考核大纲而言,必须重视的是:基本概念和知识点、基本理论(思想)、基本算法和计算技巧。,2-3 可参考的复习方式1.按章通过知识点和问题展开复习内容,力求较为全面地掌握基本概念、原理、方法,达到能分析问题和解决问题。2.强调OS的五大功能作为线索,掌握其中的重要理论和算法3.通过习题强化,并反思,第一章 操作系统概述-线索计算机系统的构成,软件系统,硬件系统,系统,应用,OS,语言处理,DBMS,五大部分,主机,CPU?发展的五个阶段?,OS是否和计算机同时诞生?为什么会产生OS?怎么产生?,定义(描述)/地位/特点/接口,管理功能,OS类型/特点,作业管理处理机管理存储器管理设备管理文件管理,批处理(单/多)单独自封/多共自封分时-多道+分时:多交独及 前台/后台作业实时-系统(限定/规定)高可靠性+高及时性网络操作系统:功能:网络通信,资源管理,网络服务,网络接口分布式OS 特征:透明性,可靠性,高性能,可伸缩性,第一章 操作系统概述线索,第一章 操作系统概述-问题1.计算机系统由什么构成?2.谁提出计算机硬件的五大结构?五大结构包括哪些?3.软件按照功能可以分为哪两类?4.操作系统产生的简单历程5.操作系统的雏形是什么?6.什么是多道程序设计?7.操作系统形成的标志是什么?,4.操作系统产生的简单历程 纯手工-手工批处理-监督程序-中断和多道程序设计引入-批处理系统-OS基本成型5.操作系统的雏形-批处理监督程序6.多道程序设计:允许多个程序(作业)同时进入计算机内存并启动,交替计算(运行)的方法。提升计算机使用效率7.现代操作系统形成的标志:多道程序系统的出现,8.操作系统的一种描述(定义)9.操作系统的地位和作用图解10.操作系统的功能分解11.现代操作系统的特征,基本特征12.操作系统的接口13.单道/多道批处理操作系统的特点14.分时操作系统的概念和特点15.实时操作系统的概念和特点16.网络操作系统的概念,功能和特点,8.操作系统是位于计算机硬件之上的第一层系统软件,是整个计算机系统的核心;它控制和管理计算机软硬件资源,合理、高效、安全地组织计算机的工作流程并方便用户使用计算机10.操作系统的五大功能作业管理-处理机管理-存储管理-设备管理-文件管理程序和数据存放的方式是什么?,11.现代操作系统的特征,基本特征 并发性、共享性、虚拟性、异步性12.操作系统的接口 操作接口(作业),程序接口(系统调用)13.单道/多道批处理操作系统的特点 单独自封;多共自封14.分时操作系统的概念和特点 多道+分时技术,多交独及15.实时操作系统的概念和特点 实时:限定的时间内做出响应 高可靠性+高及时性,16 网络:把地理上分散、功能独立的计算机和终端设备,通过通信线路连接,达到数据通信和资源共享目的的一种计算机系统。在网络范围内,用于管理网络通信和共享资源,协调各计算机上任务的运行,并向用户提供统一的,有效方便的网络接口的程序集合称为网络操作系统。计算机+通信技术 功能:网络通信,资源管理,提供网络服务,提供网络接口 特点:自治性,分散性,互联性,统一性,单道程序引入多道程序怎么描述多道程序运行的本质特点?引入进程,第二章 处理机管理线索,进程描述?分类?特点?状态?构成?,三态如何转化?注意此处的逻辑关系!是否需要三类队列?每类各多少?,构成三部分,PCB的内容,决定把CPU分配给哪个进程?分配多长时间?回收处理机,FCFS 先来先服务RR 时间片轮转优先数|多级队列-时间:剥夺与不可剥夺原语:进程管理原语,接口:指令/系统调用 管态/目态/访管作业及JCB作业的四个状态作业调度算法 相关计算,二.CPU管理的二级调度 线索进程调度 作业调度,决定哪些作业参与CPU竞争?,第二章 处理机管理1.单道程序执行特征独占,顺序,再现2.多道系统下程序运行的特征 并发,制约(间接/直接),状态多变3.进程的概念和构成,进程分类4.PCB结构包含标识,说明,现场,管理5.进程的特征 动态,并发,制约,生命期,可执行同一程序6.系统进程和用户进程关系7.进程的三种基本状态以及变迁过程,8.为了管理进程需要哪些控制队列?N个进程,如何分布在上述队列中?各个队列的个数是多少?9.进程调度的任务是什么?10.进程调度的算法有哪些?11.什么是先来先服务调度算法?如何理解先来先服务?进程会一直占用CPU直到运行完毕吗?是不是以启动进程并到达就绪队列的时间为准?还是以每次进入就绪队列的时间为准?,12.什么是时间片轮转调度算法?讨论时间片大/小的关系?时间片可以小于一个终端请求受理时间吗?FCFS与RR有什么区别?13.什么是优先数调度算法?优先级与优先数的关系如何?优先数有静态和动态,各有什么特点?系统进程的优先数如何?I/O约束的进程优先数高好还是低好?UNIX系统采用的是优先数调度算法吗?,14.什么是多级队列调度算法?刚创建的进程进入哪一级就绪队列?阻塞态出来的进程进入哪一级就绪队列?时间片满的进程进入哪一级就绪队列?如果有更高级别的进程在就绪队列中,此时处于运行的进程会被抢用CPU吗?被抢用CPU的进程进入哪一级就绪队列?它能保证主机与外设的较高利用率吗?各级就绪队列采用何种调度算法?15.进程调度的两种基本方式是什么?抢先式,不可抢先式,A.什么情况下会引发进程调度程序执行 一个进程从运行到阻塞 一定 一个进程从运行到就绪 可能 一个进程从阻塞到就绪 可能 一个进程正常结束撤销后 一定B.FCFS属于可剥夺,不可剥夺调度而时间片轮转法属于_C.优先数调度的调度方式是否两种方式都可以?D.进程模型中CPU调度和分配资源的基本单位是什么?,16.为什么需要原语?什么是原语?用什么方式实现原语?17.特权指令,管态,目态,系统调用,用户程序,访管指令,它们相互关系如何?源程序系统调用编译成访管指令+功能编码CPU执行该指令,产生软中断陷入操作系统(目态到管态)找到响应的系统调用程序入口地址执行相应功能返回中断点(注意:进程可能已切换)18.系统调用与一般程序调用的关系,19.什么是作业?作业步?JCB?20.什么是后备作业?后备作业队列?后备作业是否参与CPU的竞争?21.什么是作业调度?它和进程调度关系如何?高级调度低级调度22.作业的生命期经历哪些状态?提交后备运行完成23.作业调度的原则 公平均衡使用资源高吞吐能力 什么是周转时间?表征系统吞吐能力Ti=完成时间-到达系统时间(后备),24.作业调度算法FIFO,短作业优先,高响应比优先的思想和应用 25.为什么说高响应比优先是FIFO和短作业优先的折中?26.短作业总能得到最小的平均周转时间吗?如果能条件是什么?27.处于阻塞态的进程,当它所等待事件发生时(完成),一定会变成就绪态并插入就绪队列吗?,28.一个分时系统,允许10个终端用户同时工作,时间片100ms,对于用户的每个请求,CPU需要300ms进行处理,那么一个用户提出两次请求的时间间隔最少是多少?29.三个先后到达的进程A,B,C分别需要24ms,3ms,3ms,如果按照FCFS的方式进行进程调度,请问平均等待时间是多少?平均等待时间为平均周转时间,30.作业分析,忽略系统调用时间,用三种作业调度算法确定作业调用顺序,并计算各自的周转时间和总的周转时间,FCFS:1-3-2 18.810.31.5 29.512.12.6 39.011.32.3 平均周转时间=(1.5+2.6+2.3)/3=32/15短作业:1-2-3同FIFO 18.810.31.5 29.511.11.6 39.012.12.1 平均周转时间=(1.5+1.6+2.1)/3=26/15,高响应比:1-3-2 18.810.31.5 29.512.12.6 39.011.32.3 平均周转时间=(1.5+2.6+2.3)/3=32/15作业1到达后先执行,到了10.3的时候作业2和3都已经达到,此时计算可知:作业2响应比=0.8/0.8=1 作业3响应比=1.3/1.0=1.3所以先执行作业3后执行作业2,31.,总内存量100K,进程不在内存中移动,内存连续分配;按照FCFS算法调度作业和进程,请计算各周转时间,平均周转时间(忽略其它时间)。内存分布.,平均周转时间=1.12,作业1 15k作业2 70k作业5 10k 5k,15k作业2 70k作业5 10k 5k,作业3 50k作业4 20k 15k作业5 10k 5k,实存分配 虚存分配,第三章 存储管理线索,固定分区,可变分区,实存页式,虚存页式,虚拟存储器,缺页中断,页面淘汰,基本思想内存怎么分割地址重定位/映射内存分配与回收内存保护内存扩充内存利用率:碎片,主要问题:大(多)程序,小内存,装不下;内存利用率主要技术:覆盖技术,(交)对换技术,虚存技术,本章掌握基本概念:重定位,碎片,页,块,页表,快表 虚拟存储器,缺页中断,异常现象,抖动 覆盖,交换,页淘汰,局部性原理内存管理方法:A.每种存储管理方法的基本思想,地址映射,优缺点 B.空闲区的管理和分配算法 C.页面淘汰和缺页中断计算:地址映射,缺页率计算,1.内存空间=物理地址空间,绝对地址空间2.程序空间=逻辑地址空间,相对地址空间3.CPU怎么访问内存存储器?4.一个程序的生命周期经历了哪些过程5.什么是地址重定位?它有哪些形式?6.静态重定位的特点是什么?能在内存中移动吗?重定位需要硬件支持吗?在内外存的程序相同吗?重定位工作是一次性完成吗?7.PCB中有没有程序地址的说明信息?该地址常称为起始地址,它是程序段的起址吗?什么是碎片?内/外碎片?,8.单一连续分区存储管理 内存如何分区?系统区和用户区 用户区全部分配给一个程序吗?采用何种地址重定位?如何实现内存的存储保护?可以采用一个界限寄存器法 会造成内存浪费吗?缺点单道,内部碎片,问题未解决 如何运行大程序?覆盖扩充内存 如何模拟实现多任务?交换技术,9.固定分区存储管理 内存如何分区?系统区和用户区 用户区如何划分?这种划分固定吗?每个分区的管理结构如何安排?采用地址重定位的方式是什么?如何实现内存的存储保护?可以采用上下界限寄存器法 会造成内存浪费吗?缺点内/外部碎片,无法移动 采用什么策略将空闲分区分配给多个进程针对多个队列和1个队列两种情况.,10.可变分区存储管理 内存如何分区?系统区和用户区 用户区根据什么划分?每个分区的管理结构如何安排?采用地址重定位的方式是什么?该重定位需要硬件支持吗?如何映射 产生的空闲块采用什么方式合并?空闲区的分配算法,出发点是什么?如何实现内存的存储保护?可以采用上下界限寄存器法 缺点外部碎片,分区合并耗时,11.分页式存储管理(实存页模式)内存如何划分?程序如何划分?固定分区思想+动态重定位技术 什么是块?什么是页?页表?内存块表?进程页表?重定位方式?如何映射?地址换算公式:相对地址/块长=页号 相对地址%块长=页内偏移 形成地址对(页号,页内偏移)查进程页表 得到块号拼合绝对地址(块号,页内偏移)访问物理内存,CPU访问寄存器和内存的速度差异这个矛盾导致快表的引入。这也印证了局部性原理 快表的命中率表征了性能的高低 快表的工作方式快在哪里?内存块的分配与回收存储分块法,位图法,单链表法 特点分块,不连续全部装入,动态重定位 缺点半页浪费,全部装入,12.虚存作用:解决了内存的扩充问题,满足大程序的装入。什么是虚拟存储器?大小如何确定?什么是虚拟地址空间?应用:利用虚存思想的管理主要有:虚存页式,段式,段页式需要解决两个主要问题:如何发现某个页不在内存?内存空闲块不足无法装入程序页怎么办?,13.请求分页式存储管理思想:不要求程序页全部并连续地装入内存块中,可以只载入其中的一部分,其它页保存在辅存中,需要的时候通过缺页中断载入内存中,如果内存不够则产生页面淘汰以便装入新的页。新的页表结构 页号,块号,缺页中断位,辅存地址 通常缺页中断位=1表示页在内存,否则发出缺页中断,请求载入外存页 辅存地址:记录页在外存的地址,P74-75A.缺页中断处理过程B.缺页中断同一般的中断有何区别?何时产生?中断完成后回到哪里?C.缺页中断率=缺页次数/总页数 影响缺页率的因素:分配给程序的内存块数,页面尺寸,程序的实现,页面淘汰算法 内存空闲块不足,必须选择已分配的内存块,调出内存,才能装入调入页面.这就是页面淘汰,它由缺页中断引起.问题:1.选择谁?2.会出现异常或抖动/颠簸现象吗?页面淘汰中可能涉及到页面保存的问题,因此需要在页表结构中加入相应的管理信息:引用位,改变位 分别标志在某个时间段是否被引用,是否被修改。,页淘汰相关算法:FIFO 先进先出LRU 最近最久未用页面淘汰LFU 最近最少用页面淘汰OPT 最优页面淘汰例子:页面走向4,3,2,1,4,3,5,4,3,2,1,5在程序页面为3和4时,分别采用FIFO,LRU算法,计算缺页序列和缺页中断率。并分析FIFO是否会产生异常现象。,页面走向:4,3,2,1,4,3,5,4,3,2,1,5 FIFO 页面为3时 9/12 页面4时 10/12 4 3 2 1 4 3 5 5 5 2 1 1 4 3 2 1 1 1 5 4 3 2 1 5 4 3 2 1 4 3 3 3 5 2 2 4 3 2 2 2 1 5 4 3 2 1 4 3 2 1 4 4 4 3 5 5 4 3 3 3 2 1 5 4 3 21 2 3 4 5 6 7 8 9 4 4 4 3 2 1 5 4 3LRU 页面为3时 10/12 页面为4时 8/124 3 2 1 4 3 5 4 3 2 1 5 4 3 2 1 4 3 5 4 3 2 1 5 4 3 2 1 4 3 5 4 3 2 1 4 3 2 1 4 3 5 4 3 2 1 4 3 2 1 4 3 5 4 3 2 4 3 2 1 4 3 5 4 3 21 2 3 4 5 6 7 8 9 10 4 3 2 1 1 1 5 4 3,问题1:在请求分页模式中,分配给程序A的内存为M块,页面走向共P页,其中有N个不同的页面,初始无任何页在内存中。问无论采用何种算法,缺页中断次数的下界是多少缺页中断次数的上界是多少?问题2:实存页模式中,块长2k,如果一个程序的相对地址空间为05129则分配给该程序的内存空间为多少字节?浪费了多少?,问题3:实存页模式下,内存总量65536字节,块4k,一程序代码段长32768字节,数据段长16386字节,栈段长15870字节,规定不允许一个块内包含两个段的内容,请问能为该程序分配空间吗?如果块长为512字节呢?问题4:假定CPU访问内存的时间为200ns,访问快表的时间为40ns,命中率为90%,请问进行一次内存存取的平均时间是多少?比纯粹采用页表方式下降了多少?,问题5:CPU访问页表100ns,快表20ns,希望将一次存取内存的平均时间控制在140ns内,请问命中率是多少?问题6:系统内存划分成8块,块长4k,某程序虚拟地址空间划分成16页,如下表,为列出者不在内存。页号 块号 页号 块号 计算如下虚拟地址 0 2 4 4 的绝对地址 1 1 5 3 20 4100 8300 2 6 9 5 3 0 11 7,问题7:可变分区中,按地址法组织空闲分区,大小分别为10k,4k,20k,18k,7k,9k,12k,15k现依次有三个请求12k,10k,9k 问采用最先适应,最佳适应,最坏适应该如何分配?地址法:分区按照起始地址从小到大排序尺寸法:分区按照大小从小到大排序,补1:设正在处理器上执行的一个进程的页表如下,表中的虚页号和物理块号是十进制数,起始页号(块号)均为0。页的大小为1024字节。详述在设有快表的请求分页存储管理系统中,一个虚地址转换成物理地址的过程。下列虚地址对应于什么物理地址:5499,2021虚页号 状态位 访问位 修改位 物理块号 0 1 1 0 4 1 1 1 1 7 2 0 0 0-3 1 0 0 2 4 0 0 0-5 1 0 1 0,1.略2.5499/1024=5 余 379,则虚页号=5,页内偏移为379 则物理地址为:1024*0+379=379 2021/1024=0 余 997,则虚页号=0,页内偏移为997 则物理地址为:1024*4+997=5093,补2:在一个采用页式虚拟存储管理的系统中,有一用户作业,它依次要访问的字地址序列是:115,228,120,88,446,102,321,432,260,167,若该作业的第0页已经装入主存,现分配给该作业的主存共300字,页的大小为100字,请回答下列问题:(1)按FIFO调度算法将产生_次缺页中断,依次淘汰的页号为_,缺页中断率为_。(2)按LRU调度算法将产生_ 次缺页中断,依次淘汰的页号为_,缺页中断率为_。,计算的页号为:0,1,2,1,0,4,1,3,4,2,11)按FIFO调度算法将产生5次缺页中断 依次淘汰的页号为:0,1,2 缺页中断率为:5/10=50%2)按LRU调度算法将产生6次缺页中断;依次淘汰的页号为:2,0,1,3 缺页中断率为:6/10=60%,第三章 小结重要内容:每种管理方案思想,所用的数据结构优缺点,特别是页式;地址映射;可变分区中的分配和回收算法;缺页中断及页淘汰计算;,设备 设备分配 数据传输方式,第四章 设备管理,范畴,分类引入设备管理?设备管理的目标设备管理的功能,用户发出I/O请求I/O管理程序接受设备驱动完成I/O设备中断处理请求,I/O管理程序接受1.接受用户请求2.组织管理I/O的进行3.I/O完成后的善后处理,I/O处理步骤,SDTDCTDCBCOCTCHCT绝对/相对号设备类/设备表磁臂调度,程序循环测试中断方式DMA方式窃取总线通道方式 CPU与I/O并行缓冲和SPOOLING系统,基本概念:设备,设备独立性,移臂调度 虚拟设备,SPOOLING技术/系统 缓冲,DMA,通道方法:独占设备分配,移臂调度,数据传输控制方式计算:扇区与块的对应,移臂调度,第四章 设备管理,1.什么是设备?2.设备如何分类?设备从属关系:系统/用户设备 分配特性:独占,共享,虚拟 工作特性:输入/输出,存储设备3.磁盘基本构造扇区-磁道-柱面-盘面-盘片-盘片组-磁头-移动臂 P90扇区弧长不等但是信息量相等,磁盘存储数据的方式:先柱面0开始,然后磁道0开始,最后扇区0开始进行顺序存取。假定每个柱面C个磁道,每个磁道S个扇区,如果给定柱面I,磁头J,扇区K如何得到磁盘块号呢?B=k+S(J+I*C)反之可以计算I,J,K;令D=S*C,M=B/D,N=B%DI=M,J=N/S,K=N%S,例题:磁盘共100柱面,8磁道/柱面,8扇区/磁道,构成地址(柱面,磁道,扇区),一文件6400个记录,记录大小同扇区,文件从(0,0,0)开始存放。问题:第3680个记录应放在磁盘的哪个位置?地址(78,6,6)对应的是哪个记录?,1:3680/(8*8)=57,3680%(8*8)=3232/8=4,32%8=0=(57,4,0)2:B=6+8*(6+78*8)=5046,4.设备管理的目标 提高外部设备的利用率 为用户提供方便统一的使用界面5.设备管理的功能 提供一组I/O命令以便用户程序调用,并获得对外部设备的使用 进行设备的分配和回收 对缓冲区管理 实现真正的I/O操作,6.输入输出处理的步骤 P91 用户发出输入输出的I/O请求 I/O管理程序接受请求 调度设备驱动程序完成I/O操作 设备中断处理程序处理请求7.设备独立性:通常用户不指定特定的设备,而指定逻辑设备,使得用户作业和物理设备独立开,再通过其他途径建立逻辑设备和物理设备之间的对应关系,这种特性称为设备独立性 返回,8.管理设备的数据结构设备控制块DCB 记录设备的标识,类型,状态,请求队列指针,设备驱动程序地址等系统设备表SDT 记录系统所有的设备的DCB指针,设备标识,类型等。中断向量表IVT控制器控制表COCT 通道控制表CHCT,9.独享设备 一次只允许一个进程使用的设备(排它性),采用“静态分配“系统对各种不同类型的设备进行内部编号,以便区分,称为绝对号.用户使用设备只考虑使用某种设备,而不是指定使用哪台设备,所以用户也可能对多台设备进行逻辑编号,以便区分,称为相对号,P97 系统设置两种控制表:设备类表和设备表,以便实现用户相对设备号和物理绝对号的对应。设备类表记录设备类,总数,可用数,设备表地址 设备表记录绝对号,状态,空闲情况,相对号,使用者等,10.独享设备的分配算法 FCFS 优先级高者先服务注意:设备请求队列的处理。系统都是把设备分配给队首进程,因此第二种算法需要排序。另外进程使用完设备后,才从设备请求队列中移出。,11.磁盘的一次存取时间包含三部分 寻道时间(查找时间),延迟时间(等待时间),传输时间对于用户的I/O请求序列,可以调整的有查找时间和等待时间;提高磁盘访问效率主要通过:减少查找时间。,根据用户作业发出的I/O请求的柱面位置,决定请求执行的顺序的调度称为移臂调度减少等待时间的调度为旋转调度主要的移臂调度算法有:FCFS 最短查找时间优先 电梯 单向扫描,习题P113 磁盘请求10 22 20 2 40 6 38柱面先后到达,移动臂移动一个柱面6ms,分别采用上述四种算法调度,各花多少查找时间?起始柱面20。(其中电梯算法先由外向里移动)(注意单向扫描的方向),12.设备的构造 I/O设备一般包含机械与电子两部分 机械部分就是所谓的设备本身 电子部分通常称为“设备控制器”或者适配器,其工作速度快,可连接多个相同类型的设备。每种设备都通过一个控制器同CPU相连,因此CPU只同控制器沟通,控制器同设备沟通。,13.数据传输方式主要了解:主机与外设如何交换数据,CPU作什么,数据传输完后如何告知CPU,CPU如何应答等。A.程序直控式B.中断方式C.直接存储器存取/DMA方式D.通道方式,14.缓冲技术主机与外设的速度不匹配,因此需要引入缓冲,以避免快等慢现象。可以通过硬缓冲(寄存器)和软缓冲(存储单元)方式实现缓冲。缓冲的形式:单,双,多,池,15.虚拟设备 采用软件技术依靠大容量磁盘来模拟独占设备使其变成共享设备,即用一种物理设备模拟另一种物理设备,称这样的设备为虚拟设备。实现虚拟设备的软硬件条件:A.大容量磁盘,且与CPU能并行 B.多道程序设计,16.实现SPOOLING系统硬件上:在磁盘上划分出两个区域,一个为输入井(存放多个作业全部信息的存储空间),一个为输出井(存放每个作业运行输出的存储空间)软件上:需要多道程序设计因此将建立在多道程序设计基础上的联机外围设备同时操作称为SPOOLING技术。,将操作系统种实现虚拟设备的软件功能模块称为SPOOLING系统。功能模块的三大部分:A.预输入程序 输入机到输入井 B.缓输出程序 输出输出井中信息 C.井管理程序(包括井管理读/写管理程序)请求输入/输出设备工作时,让井管理读/写代替输入/输出设备实现从输入井/输出井中读取/输出数据,第四章 小结重点掌握:磁盘结构-柱面,磁道,扇区设备管理采用的数据结构独享设备分配的数据结构和算法磁盘访问时间磁盘调度算法设备构成中的设备控制器四种数据传输方式为何引入缓冲?SPOOLING系统,基本概念:文件,文件系统,文件结构 存取方式,FCB,目录,保密,共享与保护(保护的方法),文件操作 基本理论算法:空闲空间管理方法,文件内部实现,文件地址映射计算:空闲空间计算,地址映射,第五章 文件管理,1.什么是文件?具有完整逻辑意义的一组相关信息的集合称为文件2.什么是文件系统?与文件管理相关的那部分软件、被管理的文件以及管理所需要的数据结构的总体称为文件系统。,3.文件的分类 性质和用途:系统,用户,库 保护性质:只读,读写,执行,不保护 保护期限:临时,档案,永久 存取方式:顺序存取,随机存取 设备类型:磁盘,磁带,打印 逻辑结构:流式,记录式 物理结构:连续,链接,索引 文件内容:普通,目录,特殊,4.文件的逻辑结构从用户角度的组织文件的形式文件呈现在用户面前的形式 分类:流式文件记录文件5.文件的物理结构文件的存储结构,以记录成组的形式将文件存在辅存上。分类:顺序,链接,索引,6.文件存取方式A.顺序存取 按照记录排列顺序 连续文件,链接文件,索引文件B.随机存取 以任何次序存放 连续文件,索引文件7.磁盘存储空间管理A.位示图B.空闲区表C.空闲块链 D.成组链接法,A.位示图样例(注意基于0),如果此时对第2个字节的第4位访问,则对应的磁盘块是多少?,字节0字节1字节2,一磁盘空间24K,块长1K,前三个块和第20块已经分配出去了,试画出位示图。,8.文件控制块FCB文件名,文件在辅存中的物理位置,文件的逻辑结构,物理结构,存取控制信息,管理信息,9.文件目录 将多个文件的FCB集中起来构成文件目录另外文件目录以文件的形式存放称为目录文件。一级目录,二级,多级(树型层次)二级以上解决了文件同名冲突注意:绝对路径和相对路径按名存取,活动文件目录问题:从用户角度出发,引入文件系统的主要目的是_。,10.文件的基本操作-按名存取open(Fname,OpenMode)read(Fname,3,A)1.通过Fname查找文件目录,找到文件的FCB指针进而得到FCB结构2.进行存取控制验证,是否合法3.从逻辑地址转化到物理地址4.启动设备,11.文件的使用 文件共享:一个文件可以被多个授权用户共同使用。A.多个可用,一次仅一个在用 B.多个用户同时使用,最多保证一个可写,其他可读.实现共享:A.同一个文件的多个FCB副本B.连接法(分离法/硬连接)C.符号连接法,12.文件的保护防止未经授权的用户使用文件,同时防止文件主自己错误使用文件而毁坏文件。采用的方式:A.存取控制矩阵 用户X文件权限 B.存取控制表 每个文件对用户分组 C.权限表 用户可使用的文件集合 D.口令验证机制(常存入FCB中,易被破解),13.文件的操作创建 申请存储空间,生成文件FCB打开 将文件FCB存入活动文件目录中删除 收回文件的存储空间,去掉FCB关闭 释放FCB在活动目录中的位置读/写 通过缓冲区进行读写,第五章 小结理解如下内容:文件的组织形式有哪些?OS采用什么形式实现文件的存储?OS如何满足用户的按名存取文件?OS如何管理外存的空闲空间?OS如何实现目录?OS如何实现文件的共享和保护?OS如何实现I/O地址映射?,14.习题2A.按记录存放,则每两个记录间要留出间隙即1000个记录,有999个间隙。则浪费999*0.6/(1000*160/800+999*0.6)B.每5个一个间隙,共200组,199间隙C.1000*0.6/x-1为间隙个数设为y y/(1000*160/800+y)=0.5,14.习题31425/250=5余1651425/500=2余425则可知在逻辑记录5中,物理块2中,补充1:假定盘块1K,每个盘块号4B,文件索引节点的磁盘地址明细表如图,将下列字节偏移量转换成物理地址。9000,14000,350000,补充2:磁盘的每个磁道分成9个块,现有一个文件共有A,B,C,D,E,F,G,H,I共9个记录,每个记录的大小与块的大小一致,设磁盘转速为27ms/转,每读出一块后需要2ms的处理时间。若忽略其他辅助时间,请问:1。如果顺序存放这些记录并顺序读取,处理该文件要多少时间?2。如果要顺序读取这个文件,记录该如何存放使得整个处理时间最短?这个题目很有技巧性,请大家注意顺序读取、处理时间和转速的关系。,由题目所给条件可知,磁盘转速27ms/每转,每磁道存放9个记录,因此读出1个记录的时间是27/9=3ms1.读出并处理记录A需要5ms,此时读写磁头已经转到了记录B的中间,因此为了读出记录B,必须在转将近一圈(从记录B中间到记录B头)。以此类推,但是最后一个记录的读取与处理时间只要5ms,为什么?所以总时间=8*(27+3)+(3+2)=245ms,2.由于读出并处理一个记录需要5ms,当读出并处理A的时,不妨假设记录A放在第1个盘块中,读写头已经移到第2个盘块的中间,为了顺序读取B记录,应该将B放在第3个盘块中,如下表所示:盘块123456789记录A FBGCHDIE这样,处理一个记录并将磁头移到下一个记录的时间是:3(读出)+2(处理)+1(等待)=6ms所以总共需要:6*8+5=53ms,重要概念:临界资源,临界区,同步/互斥,信号量,P/V操作,死锁,低级通信和高级通信基本方法:死锁产生的四个必要条件解决死锁的策略 重要算法操作:P/V,银行家算法,第6章 进程间的制约关系,1.进程间的制约关系 同步/互斥进程同步:两个以上进程基于某个条件来协调它们的活动进程互斥:若干进程要使用同一共享资源时候,任何时刻最多允许一个进程使用,其他要使用该资源的进程必须等待,直到占用资源的进程释放该资源。,2.临界资源 一次仅允许一个进程使用的资源的3.临界区 并发进程中使用临界资源的程序段4.临界区的执行要互斥,并符合准则无空等待 有空让进 择一而入 算法可行,5.信号量 用来解决并发进程间同步与互斥的通用方法,通过一个非负整型变量S,外加一个队列Vq与它关联,S需要一个初值定义两种操作:P操作和V操作P(S):S=S-1if S0 该进程阻塞,进入Vq else 继续运行V(S):S=S+1if S=0 唤醒Vq中的一个进程P/V操作以原语方式执行(单CPU下,可用开关中断实现),根据P/V操作的特性,可以实现:6.信号量+P/V操作保证进程间互斥取信号量初值为1,在使用临界资源前执行P操作,使用完后执行V操作7.实现同步 注意:有几个不同的同步需求就得设置几个信号量,初值都为08.实现资源分配 信号量的初值=资源的个数,习题2:S=100 资源数量Enter while(true)do if 有人来 则 P(S)登记 Exit while(true)do if 有人走 则 取消登记 V(S),习题4:SB=1表示空缓,SW1=0,SW2=0Read操作 读数 P(SB)存数 if 奇数 V(SW1)else V(SW2)W1操作 P(SW1)读数并打印 V(SB)W2操作 P(SW2)读数并打印 V(SB),习题3:S1=1 S2=0 S3=0R Read P(S1)Input to B V(S2)S P(S2)Process B V(S3)T P(S3)Get And Print B V(S1),习题1:S1=0(门开着)S2=1(停着)司机:P(S1)启动 售票 运行 停车V(S2)售票员:P(S2)开门 关门 V(S1),9.死锁 两个以上的进程相互间在等待一种不会发生的事情产生的四个必要条件:互斥条件占用并等待条件非剥夺条件循环等待条件问题:如果其中一条不满足,死锁会发生吗?,10.如何解决死锁A.忽略死锁B.预防死锁C.避免死锁D.检测死锁并恢复,预防死锁的方法:只要能够破坏死个必要条件中的一个即可。例如SPOOLING破坏独占资源全部分配破坏条件2资源顺序编号,顺序申请破坏条件4,11.避免死锁系统中可能产生死锁,因此针对每次资源请求,都要做一次模拟分配,只有不存在死锁可能才分配。常用银行家算法解决。安全状态:当存在一种分配顺序能够保证所有的进程得到自己需要的资源并运行完毕。如果不存在则为不安全状态,不安全状态它一定会导致死锁吗?,12.习题7 资源总量 10进程 总量 已得A 6 1 B 5 1C 4 2D 7 4(1):D提出一个资源请求,问是否安全?(2):C提出一个资源请求,问是否安全?,13.死锁的检测与恢复 通过查找进程间是否有循环等待的环路,如有则认为出现了死锁。出现死锁后,可以采用如下方法:A.删除环中(=1)个进程,释放资源B.剥夺进程的资源给其他进程C.采用日志法,登记进程执行的情况,一旦检测到死锁,立刻返回死锁前的步骤,14.高级进程通信低级通信如:开关锁,P/V操作高级通信是系统给用户的程序接口之一,含有直接和间接通信直接通信:消息通信间接通信:信箱通信,补充1:四个进程合作完成一个任务,试用P/V操作完成四个进程之间的同步问题。,补充2:桌上有一空盘,允许放一只水果。爸爸可向盘中放苹果和桔子,儿子专吃桔子,女儿专吃苹果。规定当盘空的时候只能放一只水果共儿女取用。试用P/V原语实现爸爸、儿子、女儿三个并发进程的同步。,第六章 小结重点掌握:进程间的制约关系 同步/互斥临界资源和临界区信号量概念和相关P/V操作死锁和产生死锁的必要条件解决死锁的相关对策理解银行家算法和应用,Unix进程管理部分:1.进程构成:PCB,数据段,共享正文段2.PCB-基本PCB,扩充的User PCB3.可变优先数调度法,越小越先调度,第七章 实例分析,Unix存储管理1.采用可变分区管理+对换技术 最先适应分配空闲区,对换进程的非系统部分(非常驻内存);分区按照地址从小到大排列。2.请求页式虚存管理 进程逻辑分成:系统区,进程控制区,进程程序区。系统区在系统空间中常驻,另外两个非常驻。,Unix文件管理1.文件FCB的分解 内部i节点+文件目录项,便于文件共享2.文件系统分成基本文件系统和可装卸文件子系统,通过虚拟文件系统VFS对所有的进程提供实际文件的统一服务。3.文件管理的物理结构:固定指针+可变重数的多级索引结构,Unix文件管理4.采用“成组链接”法管理磁盘上的空闲块。Unix设备管理1.设备编号 主设备号表征设备的类型,次设备号表征同类设备中都不同设备。主设备号驱动程序次设备号选择设备执行I/O操作,2.Unix对缓冲区管理的特色设备缓冲区队列P206页习题4-Unix文件结构解析,DOS操作系