操作系统基本概念处理机管理设备管理作业管理用户接口存储管理文件管理操作系统定义OS的作用OS特征OS的主要功能OS目标OS分类多道程序设计进程基本概念进程同步互斥进程间通信进程调度死锁I/O系统I/O控制方式缓冲技术I/O软件组成设备独立性设备分配驱动程序虚设备技术通道技术磁盘调度文件基本概念文件的逻辑结构文件的物理结构文件目录外存空间管理文件共享与保护数据一致性用户接口作业基本概念批处理系统作业管理分时系统作业管理程序的装入与链接存储管理任务动态分区分配交换技术页式存储管理段式存储管理段页式虚拟存储技术批处理操作系统分时系统实时操作系统个人计算机操作系统网络操作系统分布式操作系统操作系统定义OS功能OS特征OS分类硬件运行环境操作系统设计并发共享虚拟异步有效管理合理调度使用方便吞吐量时间片虚机器操作系统设计目标操作系统结构设计CPU状态系统堆栈中断技术时钟通道地址映射存储保护处理机管理存储管理设备管理文件管理用户接口操作系统基本概念进程进程状态及转换进程控制块系统并发度进程控制进程特性可重入程序共享内存消息缓冲Send/Receive原语管道通信信箱调度算法选择原则算法:先进先出时间片轮转基于优先数高相应比优先抢占式实时调度技术进程同步进程互斥临界区进程同步机制信号量P、V操作生产者与消费者问题读者写者问题哲学家进餐问题死锁的有关结论产生死锁的必要条件死锁预防死锁避免死锁检测解除资源分配图多道程序设计进程基本概念进程同步互斥进程间通信进程调度死锁顺序环境并发环境与时间有关的错误不可在现性进程管理一、生产者-消费者问题同步关系:P→C互斥关系:互斥访问BUF设:生产进程资源私用量e:BUF中空的buf数消费进程资源私用量f:BUF中产品数目pc公用信号量m:互斥访问BUF设:指针i指向首空bufj指针指向首产品初值e=nf=0m=1i=j=0i=jBUF空(i+1)modn=jBUF满0123…n-1e+f=nijp进程产品→buf(i)i=(i+1)modnV(f)生产一件产品P(e)P(m)v(m)c进程V(m)消费产品P(f)P(m)从buf(j)中取出产品j=(j+1)modnv(e)下述两段执行序列是否正确?请分析可能出现的问题,并说明理由。①wait(mutex);“临界段代码”;wait(mutex);②“临界段代码”;(没有对信号量的访问)解答:①错误(1’)分析:将signal(mutex)误写成wait(mutex).(2’)后果:进程使用临界资源完毕后将无法释放资源,若该资源紧张则可能导致死锁,违背了空闲让进的原则.(2’)②错误(1’)分析:wait操作和signal操作缺失.(2’)后果:进程将自由进入临界区使用临界资源,将导致资源被破坏的严重后果(2’)1.假定系统中有五个进程{P0,P1,P2,P3,P4}和三类资源{A,B,C},各种资源的数量分别为10,5,7,在T0时刻的资源分配情况:资源情况进程MaxAllocationNeedAvailableABCABCABCABCP0753010332P1322200P2902302P3222211P44330027431226000114312.P1请求资源Request1(1,0,2),系统按银行家算法进行检查:①Request1(1,0,2)=Need1(1,2,2)②Request1(1,0,2)=Available1(3,3,2)资源情况进程MaxAllocationNeedAvailableABCABCABCABCP0753010230P1322302P2902302P3222211P4433002743020600011431•存在安全序列{P1,P3,P4,P2,P0},因此,系统是安全的,可用立即将P1所申请的资源分配给他。资源情况进程WorkNeedAllocationWork+AllocationFinishABCABCABCABCPPPPP(3)P4请求资源,Request4(3,3,0),系统按银行家算法进行检查:①Request4(3,3,0)=Need4(4,3,1)②Request4(3,3,0)=Available4(2,3,0),让P4等待。(4)P0请求资源,Request0(0,2,0),系统按银行家算法进行检查:①Request0(0,2,0)=Need0(7,4,3)②Request0(0,2,0)=Available0(2,3,0)③系统暂时先假定可为P0分配资源,并修改数据。MaxAllocationNeedAvailableABCABCABCABCP0753030210P1322302P2902302P3222211P44330027230206000114312.某系统中四个进程的到达时间和要求服务时间如下表,请采用SPF(不抢占)调度算法进行分析,求进程执行序列和平均周转时间。要求有分析过程。3.考虑一个有150个存储器单元的系统,如下分配给三个进程:进程最大需求已分配————————————————————170452604036015使用银行家算法,以确定下面的任何一个请求是否安全:a.第4个进程到达,最多需要60个存储单元,最初需要25个单元;b.第4个进程到达,最多需要60个存储单元,最初需要35个单元;如果安全给出安全序列;若不安全给出结果分配简表。•第四章存储管理段式存储管理页式存储管理段页式存储管理虚拟存储器虚拟存储技术程序局部性原理虚拟页式管理虚拟段式管理页面淘汰算法用户程序划分逻辑地址内存空间划分内存分配管理考虑硬件支持地址映射过程装入与链接对换技术高速缓存内存磁盘系统区用户区内存管理分配回收存储共享存储保护内存扩充地址映射存储体系存储管理任务存储管理方案虚拟存储管理其他存储管理1、在一个请求分页系统中,假如系统分配给一个作业的物理块数为4,且此作业的页面走向为:2,3,2,1,5,2,4,5,3,2,5,2。试用FIFO(先进先出)和OPT(最佳)两种算法分别计算出程序访问过程中所发生的缺页次数(假设开始执行时主存中没有页面,凡第一次用到的页面都产生一次缺页中断。要求列表计算)。LRU?3?页面置换次数例2:已知某分页系统,主存容量为64K,页面大小为1K,对一个4页大的作业,其0、1、2、3页分别被分配到主存的2、4、6、7块中。(1)将十进制的逻辑地址1023、2500、3500、4500转换成物理地址?(2)以十进制的逻辑地址1023为例画出地址变换过程图?答:①逻辑地址1023:1023/1K,得页号为0,页内地址为1023,查页表找到对应的物理块号为2,故物理地址为2×1K+1023=3071②逻辑地址2500:2500/1K,得页号为2,页内地址为452,查页表找到对应的物理块号为6,故物理地址为6×1K+452=6596③逻辑地址3500:3500/1K,得页号为3,页内地址为428,查页表找到对应的物理块号为7,故物理地址为7×1K+428=7596④逻辑地址4500:4500/1K,得页号为4,页内地址为404,因页号不小于页表长度,故产生越界中断。(2)地址变换过程图页表地址页表长度401023逻辑地址1023≥越界+2内存块号页号0146721023物理地址3071页表寄存器23小结方法功能单一连续区分区式页式段式段页式固定可变静态动态适用环境单道多道多道多道多道虚拟空间一维一维一维二维二维重定位方式静态静态动态动态动态动态分配方式静态连续区静态动态连续区静态或动态页为单位非连续动态段为单位非连续动态分配页为单位非连续释放执行完后全部释放执行完后全部释放分区释放执行完后释放淘汰与执行完后释放淘汰与执行完后释放淘汰与执行完后释放保护越界保护越界保护与保护键越界保护与控制权保护越界保护与控制权保护越界保护与控制权保护内存扩充覆盖与交换覆盖与交换覆盖交换虚拟存储虚拟存储虚拟存储共享不能不能较难方便方便硬件支持保护用寄存器保护用寄存器,重定位机构地址变换机构,中断机构,保护机构段式地址变换机构,保护与中断机构,动态连接机构段式地址变换机构,保护与中断机构,动态连接机构设备管理重要性设备独立性设备分类设备管理任务I/O通道DMA控制方式用户进程与设备无关软件设备驱动程序中断处理程序SPOOLing技术共享打印机设备管理设备分配回收独占设备分配共享设备分配基本概念I/O软件组成缓冲技术设备处理虚设备技术设备驱动程序设备管理磁盘访问时间磁盘调度先来先服务最短寻道时间优先扫描(电梯算法)CSCAN磁盘存储管理•第五章设备管理的重点、难点设备管理的主要任务什么叫通道技术如何解决因通道不足而产生的瓶颈问题I/O控制方式:四种I/O方式的基本原理;I/O方式由低到高效的演变的推动因素是什么?缓冲的概念,为什么引入缓冲中断处理程序的处理过程设备分配方式第五章设备管理的重点、难点虚拟设备和SPOOLing技术什么是虚拟设备什么是SPOOLing技术,SPOOLing系统的组成如何利用SPOOLing技术实现共享打印机磁盘调度磁盘调度的目标磁盘访问时间的计算FCFS、SSTF、SCAN、CSCAN等算法的应用及这些调度算法的演变过程,分别解决了哪些问题;各算法的性能比较一个磁盘系统,平均寻道时间为12ms,转速为10000转/分,每个磁道有18个扇区,每个扇区512个字节。请问要读取一个扇区所花的时间是多少?解:TS=12msTR=1/2r=60÷10000×0.5=3msTA=b/rN=(512×60)÷(18×512×10000)=0.33msTT=TS+TR+TA=12+3+0.33=15.33ms答:读取一个扇区所花的时间是15.33ms。例磁盘调度目标:减少寻道时间1、FCFS(FisrtComeFirstServed)先来先服务特点:公平、简单,寻道时间长,相当于随机访问模式。仅适用于请求磁盘I/O的进程数目较少的场合。2、SSTF(最短寻道优先)最短寻道时间优先SSTF比FCFS有更好的寻道性能贪心的算法饥饿现象不能保证平均寻道时间最短?3、SCAN扫描算法(也称为电梯算法)。进程“饥饿现象”SSTF存在。SCAN算法:在移动方向固定的情况下采用了SSTF,以避免饥饿现象4、循环扫描CSCAN磁头单向移动一个方向读完,不是象SCAN那样回头,而是循环扫描。例假设一个活动头磁盘有200道,编号从0-199.当前磁头正在143道上服务,并且刚刚完成了125道的请求。现有如下访盘请求序列(磁道号):86,147,91,177,94,150,102,175,130试给出采用下列算法后磁头移动的顺序和移动总量(总磁道数).(1)先来先服务(FCFS)磁盘调度算法.(2)最短寻道时间优先(SSTF)磁盘调度算法.(3)扫描法(SCAN)磁盘调度算法.(假设沿磁头移动方向不再有访问请求时,磁头沿相反方向移动)答、(1)磁道访问顺序为:86,147,91,177,94,150,102,175,130磁头移动的总磁道数=57+61+56+86+83+56+48+73+45=565(3分)(2)当前磁头在143道上:磁道访问顺序为:147,150,130,102,94,91,86,175,177磁头移动的总磁道数=4+3+20+28+8+3+5+89+2=162(3分)(3)当前磁头在143道上,并且刚刚完成125道的请求磁道访问顺序为:147,150,175,177,130,102,94,91,86磁头移动的总磁道数=4+3+25+2+47+28+8+3+5=125(4分)例若干个等待访问磁盘者依次要访问的磁道为20,44,40,4,80,12,76,假设每移动一个磁道需要3毫秒时间,移动臂当前位于40号柱面,请按下列算法分别写出访问序列并计算为完成上述各次访问总共花费的寻道时间。(1)先来先服务算法;(2)最短寻道时间优先算法。(3)扫描算