您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 电子科技大学计算机操作系统―2008级OS复习
操作系统复习1.处理机管理处理机管理的基本任务是:按照一定策略,对处理机进行分配及进行资源回收。进程调度按照某种调度策略,实现对CPU的分配。进程控制进程的创建、撤消、状态转换等控制。进程同步协调、控制系统中进程的并发执行。•互斥方式•同步方式进程通信进程之间交换信息—高级通信方式。主要涉及内存管理,任务是为多道程序的执行提供必要、良好的环境。为用户提供足够大的存储空间。内存分配与回收存储保护地址映射内存扩充2、存储器管理基本任务是为用户提供统一的与设备无关的接口。对各种外设进行调度、分配、实现设备的中断处理及错误处理等。缓冲技术虚拟设备技术3、设备管理4、文件管理即对计算机软件资源的管理。基本任务是:1、负责文件的物理存储空间的组织分配与回收。2、实现文件的按名存取。3、实现文件与目录的创建、读、写、及修改、删除等基本操作。4、文件的共享与保护。5、用户接口从用户的角度考虑操作系统的功能。用户与操作系统的接口,通常有三种形式:1、命令接口(联机、脱机)2、程序接口(系统调用)是为用户程序在执行过程中访问系统资源而设置的一组广义指令,以函数的形式提供。3、图形接口是一种全新的人机界面,提供图形用户界面(GUI)和符号操作。操作系统是具有并发性的大型系统,信息交换和接口都十分复杂,因此,操作系统的体系结构和结构设计,直接影响到整个系统的性能,已成为软件工程的重要研究课题。模块化OS结构层次OS结构微内核OS结构三、操作系统的结构设计第二章进程的描述与控制本章重点1、进程的概念,进程控制、进程同步、进程通信;2、线程的概念,线程的同步和通信,线程分类及控制。3、程序并发执行的特征程序顺序执行程序并发执行顺序性间断性封闭性无封闭性可再现性不可再现性一、进程的描述进程的定义进程的特征进程的状态进程控制块进程是可并发执行的程序在给定数据集合上的一次执行过程,是系统进行资源分配和调度的一个独立的基本单位和实体,是执行一个映象程序的总环境,是一个动态的概念。1.进程的定义进程的引入是为了更好地描述程序并发执行的动态特征。定义一、进程的描述进程是执行程序的动态过程—动态概念。程序是进程运行的静态文本—静态概念。一、进程的描述一个进程可以执行一个或多个程序。一个程序可以被多个进程执行。程序可以作为一种资源以文件的形式长期保存。进程只是一次执行过程,具有生命期。进程与程序的区别、联系一、进程的描述进程是程序的一次执行过程具有生命期;它可以由系统创建并独立地执行,直至完成而被撤消。进程是可以并发执行的基本单位,从宏观上看,它们可以“同时”执行。由于共享资源,进程间相互约束,相互依赖。动态性并发性独立性异步性各个进程之间相互独立,是系统分配资源和能够被处理机调度的基本单位。各个进程按照各自独立的、不可预知的速度异步向前推进。即进程按异步方式执行。2.进程的特征3.进程的基本状态1、三种基本状态:执行状态(Executing)就绪状态(Ready)阻塞状态(Blocked)或等待(Wait)阻塞状态就绪状态执行状态调度I/O请求进程释放时间片到新状态结束后备队列新状态结束状态细化的进程状态图(增加挂起)活动阻塞执行状态活动就绪静止就绪静止阻塞调度释放I/O请求激活激活挂起挂起挂起释放一、进程的描述一、进程的描述进程控制块—PCB(ProcessControlBlock)记录和描述进程的动态特性,描述进程的执行情况和状态变化。是进程存在的唯一标识。4、进程控制块①进程控制块的内容②进程控制块的作用③进程控制块的组织方式一、进程的描述进程标识信息外部标识信息内部标识信息进程家族标识处理机状态信息通用寄存器指令计数器程序状态字(PSW)用户栈指针进程调度信息进程状态进程优先级其它调度信息等待事件进程控制信息程序数据地址进程同步及通信资源清单链接指针①PCB块的内容1.在引入线程的系统中,PCB还包括TCB信息。2.在用消息缓冲队列进行通信的系统中,还包括3个信息.②进程控制块的作用PCB块是一个进程存在的唯一标志,当系统创建一个进程时,为该进程设置一个PCB,再利用PCB对进程进行控制和管理。当进程撤消时,系统回收它的PCB。③PCB块的组织方式•链接方式链接成各种就绪,阻塞及空白等各种队列。•索引方式建立不同状态的索引表。一、进程的描述二、进程控制操作系统中,为了防止用户进程对OS及PCB等关键信息的破坏。一个进程在其生命期中有两种机器运行状态:系统态(核心态,管态)具有较高的访问权,可访问核心模块。用户态(目态)限制访问权。是机器指令的延伸,是非进程模块,不能并发执行。执行过程不可中断,用微代码实现。②原语(primitive)1、OS内核①进程运行状态二、进程控制③OS内核的功能1)中断处理系统中的所有中断都由内核响应。中断是进程并发执行的基础,OS是由中断驱动的。2)原语操作原语操作包括涉及CPU管理,存储管理,设备管理,文件管理的各种基本操作。3)时钟管理OS的许多重要·操作,如:按时间片轮转调度,实时系统中的截止时间控制等,都依赖于时钟管理。第二章进程的描述与控制二、进程控制创建原语create()撤消原语destroy()阻塞原语block()唤醒原语wakeup()挂起原语suspend()激活原语active()2.进程控制原语3.进程的基本状态1、三种基本状态:执行状态(Executing)就绪状态(Ready)阻塞状态(Blocked)或等待(Wait)阻塞状态就绪状态执行状态调度I/O请求进程释放时间片到新状态结束后备队列新状态结束状态创建原语create()撤消原语destroy()阻塞原语block()唤醒原语wakeup()每个进程互斥访问临界资源的那段代码称为临界区。代码构成如下:repeatentrysection进入区—申请进入临界区criticalsection临界区—访问临界资源exitsection退出区—退出对临界资源的访问remaindersection剩留区—进程的其他代码untilfalse临界资源(criticalsource)凡是以互斥方式使用的共享资源都称为临界资源。临界资源具有一次只允许一个进程使用的属性。临界区(criticalsection)临界资源与临界区三、进程同步空闲让进无进程处于临界区内时,可让一个申请进入该临界区的进程进入。忙则等待临界区内有进程时,申请进入临界区的进程必须等待。有限等待进程进入临界区的请求,必须在有限的时间内满足。让权等待等待进入临界区的进程,必须立即释放CPU。2、进程的同步机制同步机制的准则进程的同步机制要解决在进程异步运行时,在时间上施加某些限制,使其共享资源的操作与时间无关。第二章进程的描述与控制三、进程同步记录型信号量—利用P、V操作(原语)实现定义:typesemaphore=recordvalue:integer;信号量值l:listofprocess信号量等待队列指针end;AND信号量机制—利用SP、SV操作(原语)实现进程必须同时分配其所需要的资源,或者同时释放所有资源。解决效率低和可能产生“死锁的问题。”一般的量机制—利用SP、SV操作(原语)实现是对AND信号量集的扩充,一个进程可同时申请多个各类资源。3、信号量机制第二章进程的描述与控制①S.value:=S.Value+1;②若S.Value0进程继续执行。若S.Value≤0则释放S等待队列中的一个进程,使之转为就绪状态。4、P、V操作原语定义:VARS:Semaphore;•V操作(Signal原语)•P操作(wait原语)①S.value:=S.Value-1;②若S.Value≥0进程继续执行。若S.Value0进程阻塞,并进入等待队(L)。三、进程同步第二章进程的描述与控制三、进程同步说明:①S.Value0时,其值表示某类资源可用数量。S.Value≤0时,其绝对值表示在信号量队列中等待该资源的进程数。②P、V操作有严格的不可分割性;执行过程不允许中断;③P、V操作成对出现。实现同步机制基本思想是:加锁、解锁。第二章进程的描述与控制5、信号量的应用设mutex—公共互斥信号量初值:mutex.Value=1利用P、V操作实现互斥的模型实现进程互斥—以两个进程并发执行为例进程P1...P(mutex);进入P1临界区;V(mutex);...值0①进程P2...P(mutex);进入P2临界区;V(mutex);...值0③值-1②进程P1先执行P(mutex);进程P1进入临界区;进程P2开始执行P(mutex);进程P2阻塞,插入阻塞队列。若进程P1再次执行V(mutex);mutex.Value=0释放资源。生产者—消费者问题算法:生产者进程:生产一个产品m;...P(empty);P(mutex);将产品m放入缓冲区;in:=(in+1)modn;V(mutex);V(full);Varmutex,empty,full:semaphore:=1,n,0;buffer:array[0..n-1]ofmessage;in,out:0..n-1:=0,…0消费者进程:P(full);P(mutex);从缓冲区取产品m;out:=(out+1)modn;V(mutex);V(empty);检查有否空缓冲区检查缓冲区中有无进程释放缓冲区通知消费者进程使用检查缓冲区中是否有产品检查缓冲区中有无进程释放缓冲区通知生产者进程使用二、读者—写者问题读者进程:P(Rmutex);ifreadcount=0thenP(Wmutex);Readcount:=Readcount+1;V(Rmutex);...Performreadoperation;...P(Rmutex);Readcount:=Readcount-1;ifReadcount=0thenV(Wmutex);V(Rmutex);写者进程P(Wmutex);Performwriteoperation;V(Wmutex);Rmutex初值为1Wmutex初值为1Readcount初值为0阻塞写者进程读者申请使用文件读者释放文件让其他读者进入读者退出四、进程通信1、进程通信的类型①共享存储区系统(Shared-MemorySystem)进程间通过共享某些数据结构或者存储区,进行通信。②消息传送系统(MessagePassingSystem)直接通信发送进程通过收、发原语直接将消息发送到接受进程的消息缓冲区。间接通信发送进程将消息发送到电子邮箱,接受进程再从中取出消息。③管道通信所谓管道是一个连接读、写进程的共享文件,如UNIX系统中的Pipe文件。以字符流的形式传送。Pipe文件写端读端2.消息缓冲通信模型send(B,a)sender:Asize:5text:Hello进程Areceive(b)sender:Asize:5text:Hello进程Bmqmutexsmsender:Asize:5text:Hellonext:0PCB(B)第一消息缓冲区发送区a接收区b进程Asend(B,a)asender:Asize:5text:Hellosender:Asize:5text:Hellonext:0receive(b)sender:Asize:5text:Hello五、线程的基本概念为了减少进程并发执行的开销,提高系统性能。将资源分配与调度分开—引入线程。•一个进程可由一个或者多个线程构成。其中一定有一个主线程。•进程是分配资源的基本单位,线程是可调度的基本单位。•进程用PCB块描述,线程用TCB块(ThreadcontrolBlock)描述。•线程是进程内一个可调度的实体。具有独立的程序计数器。1、为什么引入线程(Thread)2、线程的特性•线程有三种基本状态:执行、就绪和阻塞。线程无挂起状态,即线程是只与内存和寄存器相关的概念,它的内容不会因为交换而进入外存。•线程状态转换的5种基本操作:⑴派生:线程由进程或主线程派生,用户一般用系统调用或相应的库函数派生自己的线程。⑵阻塞:线
本文标题:电子科技大学计算机操作系统―2008级OS复习
链接地址:https://www.777doc.com/doc-3541671 .html