河南科技大学计算机操作系统考试复习重点_第1页
河南科技大学计算机操作系统考试复习重点_第2页
河南科技大学计算机操作系统考试复习重点_第3页
河南科技大学计算机操作系统考试复习重点_第4页
河南科技大学计算机操作系统考试复习重点_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

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

文档简介

河南科技大学计算机操作系统考试复习重点1、 进程的定义狭义定义:进程就是程序的执行过程进程是一个具有一定独立功能的程序关于某个数据集合的一次运行活动。它是操作系统动态执行的基本单元,在传统的操作系统中,进程既是基本的分配单元,也是基本的执行单元。2、 进程的特征:动态性:进程的实质是程序在多道程序系统中的一次执行过程,进程是动态产生,动态消亡的。并发性:任何进程都可以同其他进程一起并发执行独立性:进程是一个能独立运行的基本单位,同时也是系统分配资源和调度的独立单位;异步性:由于进程间的相互制约,使进程具有执行的间断性,即进程按各自独立的、不可预知的速度向前推进结构特征:进程由程序、数据和进程控制块三部分组成。多个不同的进程可以包含相同的程序:一个程序在不同的数据集里就构成不同的进程,能得到不同的结果;但是执行过程中,程序不能发生改变、3、 进程管理:操作系统的职能之一,主要是对处理机进行管理。为了提高 CPU的利用率而采用多道程序技术。通过进程管理来协调多道程序之间的关系,使 CPU得到充分的利用。4、 为什么要引入进程的概念?系统的特征是并发和共享在多道程序环境下,程序的并发执行代替了程序的顺序执行,并发执行破坏了程序的封闭性和可再现行,使得程序和计算不再一一对应。此外,并发执行又导致了资源共享和资源竞争,这造成了个并发执行的程序间可能存在相互制约的关系。因此,并发执行的程序已不再处于一个封闭的系统中,从而出现了许多新的特征,即独立性、并发性、动态性以及并发程序相互间的制约性。程序这个静态概念已经无法真实地发硬并发程序执行的特征,所以我们需要一个能够描述并发程序执行过程且用来共享资源的基本单位---进程,即“可以并发执行的程序在一个数据集合上的一次执行过程”;影响:多个程序能并发执行,提高了资源利用率和系统吞吐量。进程和程序的关系程序是指令的有序集合,其自身没有任何运行的含义,是一个静态的概念。而进程是程序在处理机上的一次执行过程,它是一个动态的概念。程序可以作为一种软件资料长期存在,而进程是有一定生命期的。程序是永久的,进程是暂时的。进程更能真实的描述并发,而程序不能,进程是有程序和数据两部分组成的。进程具有创建其他进程的功能,而程序没有。同一程序同时运行若干个数据集合上,它属于若干个不同的进程,也就是说同一程序可以对应多个进程。进程状态之间的转换进程在其生存期内可能处于如下三种基本状态之一:运行态(Run):进程占有处理机资源,正在运行。显然,在单处理机系统中任一时刻只能有一个进程处于此种状态;⑵就绪态(Ready):进程本身具备运行条件,但由于处理机的个数少于可运行进程的个数,暂未投入运行。即相当于等待处理机资源⑶等待态(Wait):也称挂起态(Suspended)、封锁态(Blocked)、睡眠态(Sleep)。进程本身不具备运行条件,即使分给它处理机也不能运行。进程正等待某一个事件的发生,如等待某一资源被释放,等待与该进程相关的I/O传输的完成信号进程的三个基本状态之间是可以相互转换的。具体地说,当一个就绪进程获得处理机时,其状态由就绪变为运行;当一个运行进程被剥夺处理机时,如用完系统分给它的时间片、出现更高优先级别的其它进程,其状态由运行变为就绪;当一个运行进程因某事件受阻时,如所申请资源被占用、启动I/O传输未完成,其状态由运行变为等待;当所等待事件发生时,如得到申请资源、I/O传输完成,其状态由等待变为就绪。进程状态变迁图一个进程在运行期间,不断地从一种状态转换到另一种状态,它可以多次处于就绪状态和执行状态,也可以多次处于阻塞状态。图3_4描述了进程的三种基本状态及其转换。就绪一执行处于就绪状态的进程,当进程调度程序为之分配了处理机后,该进程便由就绪状态转变成执行状态。执行一就绪处于执行状态的进程在其执行过程中,因分配给它的一个时间片已用完而不得不让出处理机,于是进程从执行状态转变成就绪状态。执行一阻塞正在执行的进程因等待某种事件发生而无法继续执行时,便从执行状态变成阻塞状态。阻塞一就绪处于阻塞状态的进程,若其等待的事件已经发生,于是进程由阻塞状态转变为就绪状态为什么要弓I入线程,线程属性为了提高计算机系统的效率.增强计算机系统内各种硬件的并行操作能力.操作系统要求程序结构必须适应并发处理的需要.为此引入了进程的概念。进程是操作系统的核心,所有基于多道程序设计的操作系统都建立在进程的概念之上。目前的计算机系统均提供了多任务并行环境.无论是应用程序还是系统程序.都需要针对每一个任务创建相应的进程。进程是设计和分析操作系统的有力工具。然而不同的进程之间.即使是具有家族联系的父子进程.都具有各自不同的进程映像。由于不同的进程运行在各自不同的内存空间中.一方对于变量的修改另一方是无法感知的.因此.进程之间的信息传递不可能通过变量或其它数据结构直接进行,只能通过进程间通信来完成。在多线程OS中,通常是在一个进程中包括多个线程,每个线程都是作为利用CPU的基本单位,是花费最小开销的实体。线程具有以下属性。轻型实体线程中的实体基本上不拥有系统资源,只是有一点必不可少的、能保证独立运行的资源,比如,在每个线程中都应具有一个用于控制线程运行的线程控制块TCB用于指示被执行指令序列的程序计数器、保留局部变量、少数状态参数和返回地址等的一组寄存器和堆栈。2) 独立调度和分派的基本单位。在多线程OS中,线程是能独立运行的基本单位,因而也是独立调度和分派的基本单位。由于线程很“轻”,故线程的切换非常迅速且开销小。3) 可并发执行。在一个进程中的多个线程之间,可以并发执行,甚至允许在一个进程中所有线程都能并发执行;同样,不同进程中的线程也能并发执行。4) 共享进程资源。在同一进程中的各个线程,都可以共享该进程所拥有的资源,这首先表现在:所有线程都具有相同的地址空间(进程的地址空间),这意味着,线程可以访问该地址空间的每一个虚地址;此外,还可以访问进程所拥有的已打开文件、定时器、信号量机构等。进程通信的三大类型:进程通信的类型有:共享储存器系统,消息传递系统,管道通信系统什么是死锁,产生的原因和必要条件死锁的规范定义:集合中的每一个进程都在等待只能由本集合中的其他进程才能引发的事件,那么该组进程是死锁的。死锁是指,在两个或多个并发进程中,如果每个进程持有某种资源而又都等待别的进程释放它们现在保持着的资源,否则就不能向前推进.此时,每个进程都占用了一定的资源但是又不能向前推进,称这一组进程产生了死锁.产生的原因:1).竞争资源引起进程死锁2)进程推进顺序不当引起死锁必要条件:虽然进程在运行过程中,可能发生死锁,但死锁的发生也必须具备一定的条件,死锁的发生必须具备以下四个必要条件。1) 互斥条件:指进程对所分配到的资源进行排它性使用,即在一段时间内某资源只由一个进程占用。如果此时还有其它进程请求资源,则请求者只能等待,直至占有资源的进程用毕释放。2) 请求和保持条件:指进程已经保持至少一个资源,但又提出了新的资源请求,而该资源已被其它进程占有,此时请求进程阻塞,但又对自己已获得的其它资源保持不放。3) 不剥夺条件:指进程已获得的资源,在未使用完之前,不能被剥夺,只能在使用完时由自己释放。4) 环路等待条件:指在发生死锁时,必然存在一个进程——资源的环形链,即进程集合{P0,P1,P2,.•.,Pn}中的P0正在等待一个P1占用的资源;P1正在等待P2占用的资源,,Pn正在等待已被P0占用的资源。处理机的三级调度(1) 高级调度:又称作业调度。其主要功能是根据一定的算法,从输人的一批作业中选出若干个作业,分配必要的资源,如内存、外设等,为它建立相应的用户作业进程和为其服务的系统进程(如输人、输出进程),最后把它们的程序和数据调人内存,等待进程调度程序对其执行调度,并在作业完成后作善后处理工作。(2) 中级调度:为了使内存中同时存放的进程数目不至于太多,有时就需要把某些进程从内存中移到外存上,以减少多道程序的数目,为此设立了中级调度。特别在采用虚拟存储技术的系统或分时系统中,往往增加中级调度这一级。所以中级调度的功能是在内存使用情况紧张时,将一些暂时不能运行的讲程从内存对换到外存上等待。当以后内存有足够的空闲空间时,再将合适的进程重新换人内存,等待进程调度。引人中级调度的主要目的是为了提高内存的利用率和系统吞吐量。 它实际上就是存储器管理中的对换功能。(3)低级调度:又称进程调度。其主要功能是根据一定的算法将CPU分派给就绪队列中的一个进程。执行低级调度功能的程序称做进程调度程序,由它实现CPU在进程间的切换。进程调度的运行频率很高,在分时系统中往往几十毫秒就要运行一次。进程调度是操作系统中最基本的一种调度。在一般类型的操作系统中都必须有进程调度,而且它的策略的优劣直接影响整个系统的计能分页和分段的区别页是信息的物理单位,用户透明,长度固定段是信息的逻辑单位,用户可见,长度可变分页是出于系统管理的需要,分段是出于用户应用的需要。因此,一条指令或一个操作数可能会跨越两个页的分界处,而不会跨越两个段的分界处页的大小固定且由系统确定,把逻辑地址划分为页号和页内地址两部分,是由机器硬件实现的,因而一个系统只能有一种大小的页面。段的长度却不固定,决定于用户所编写的程序,通常由编辑程序在对源程序进行编辑时根据信息的性质来划分。分页的作业地址空间是维一的,即单一的线性空间,程序员只须利用一个记忆符,即可表示一地址。分段的作业地址空间是二维的,程序员在标识一个地址时,既需给出段名,又需给出段内地址。段式:物理空间不连续,但段内连续页式:物理空间不连续12局部性原理CPU访问存储器时,无论是存取指令还是存取数据,所访问的存储单元都趋于聚集在一个较小的连续区域中。三种不同类型的局部性:时间局部性(TemporalLocality):如果一个信息项正在被访问,那么在近期它很可能还会被再次访问。程序循环、堆栈等是产生时间局部性的原因。空间局部性(SpatialLocality):在最近的将来将用到的信息很可能与现在正在使用的信息在空间地址上是临近的。顺序局部性(OrderLocality):在典型程序中,除转移类指令外,大部分指令是顺序进行的。顺序执行和非顺序执行的比例大致是5:1。此外,对大型数组访问也是顺序的。指令的顺序执行、数组的连续存放等是产生顺序局部性的原因13.设备独立性概念和它的优点现代计算机系统常常配置许多类型的外围设备,同类设备又有多台,尤其是多台磁盘机,磁带机的情况很普遍。作业在执行前,应对静态分配的外围设备提出申请要求,如果申请时指定某一台具体的物理设备,那么分配工作就很简单,但当指定的某台设备有故障时,就不能满足申请,该作业也就不能投稿运行。例如系统拥有A、B两台卡片输入机,现有作业J2申请一台卡片输入机,如果它指定使用A,那么作业J1已经占用A或者设备A坏了,虽然系统还有同类设备B是好的且未被占用,但也不能接受作业J2,显然这样做很不合理。为了解决这一问题,通常用户不指定特定的设备,而指定逻辑设备,使得用户作业和物理设备独立开来,再通过其它途径建立逻辑设备和物理设备之间的对应关系,我们称这种特性为“设备独立性”。设备独立性图片解释具有设备独立性的系统中,用户编写程序时使用的设备与实际使用的设备无关,亦即逻辑设备名是用户命名的,可以更改是系统规定的,是不可更改的。设备管理的功能之一就是把逻辑设备名转换成物理设备名。应用程序独立于具体使用的物理设备。为了实现设备独立性而引入了逻辑设备和物理设备这两格概念。在应用程序中,使用逻辑设备名称来请求使用某类设备;而系统在实际执行时,还必须使用物理设备名称。在现代操作系统中,为了提高系统的可适应性和可扩展性,都毫无例外地实现了设备独立性,也即设备无关性。其基本含义是,应用程序独立于具体使用的物理设备,即应用程序以逻辑设备名称来请求使用某类设备。设备独立性带来的好处是:用户和物理的外围设备无关,系统增减或变更外围设备时程序不必修改;易于对付输入输出设备的故障,例如,某台行式打印机发生故障时,可用另一台替换,甚至可用磁带机或磁盘机等不同类型的设备代替,从而提高了系统的可靠性,增加了外围设备分配的灵活性,能更有效地利用外围设备资源,实现多道程序设计技术。操作系统提供了设备独立特性后,程序员可利用逻辑设备进行行输入输出,而逻辑设备与物理设备之间的转换通常由操作系统的命令或语言来实现。由于操作系统大小和功能不同,具体实现逻辑设备到物理设备的转换就有差别,一般使用以下方法:利用作业控制语言实现批处理系统的设备转换,利用操作命令实现设备转,利用高级语言的语句实现设备转换。设备独立性是指操作系统把所有外部设备统一当作成文件来看待,只要安装它们的驱动程序,任何用户都可以象使用文件一样,操纵、使用这些设备,而不必知道它们的具体存在形式。在实现了设备独立性的功能后,可带来两方面的好处:(1)设备分配时的灵活性;(2)易于实现I/O重定向(指用于I/O操作的设备可以更换即重定向,而不必改变应用程序)。14.SPOOLing技术的原理和优点SPOOLing技术的特点:提高了I/O速度.从对低速I/O设备进行的I/O操作变为对输入井或输出井的操作,如同脱机操作一样,提

温馨提示

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

评论

0/150

提交评论