您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 操作系统习题(哈工大)
1第一章:1、操作系统的主要性能参数有(响应时间)、(可靠性)。2、Windows98是一个(单用户多任务)得操作系统。3、当前作为自由软件的操作系统是(c)a、Windowsb、UNIXc、Linuxd、OS/24.操作系统的地位:操作系统是裸机之上的第一层软件,是建立其他所有软件的基础。它是整个系统的控制管理中心,既管硬件,又管软件,它为其它软件提供运行环境。5.操作系统的发展历程1.最初是手工操作阶段,需要人工干预,有严重的缺点,此时尚未形成操作系统2.早期批处理分为联机和脱机两类,其主要区别在与I/O是否受主机控制3.多道批处理系统中允许多道程序并发执行,与单道批处理系统相比有质的飞跃6.操作系统的主要类型?多道批处理系统、分时系统、实时系统、个人机系统、网络系统和分布式系统1.多道批处理系统1)批处理系统的特点:多道、成批2)批处理系统的优点:资源利用率高、系统吞吐量大3)批处理系统的缺点:等待时间长、没有交互能力2.分时系统1)分时:指若干并发程序对CPU时间的共享。它是通过系统软件实现的。共享的时间单位称为时间片。2)分时系统的特征:同时性:若干用户可同时上机使用计算机系统交互性:用户能方便地与系统进行人--机对话独立性:系统中各用户可以彼此独立地操作,互不干扰或破坏及时性:用户能在很短时间内得到系统的响应3)优点主要是:响应快,界面友好多用户,便于普及便于资源共享3.实时系统1)实时系统:响应时间很快,可以在毫秒甚至微秒级立即处理2)典型应用形式:过程控制系统、信息查询系统、事务处理系统3)与分时系统的主要区别:分时系统实时系统交互能力强(通用系统)弱(专用系统)响应时间秒级及时,毫秒/微妙级可靠性一般要求要求更高4.个人机系统1)单用户操作系统单用户操作系统特征:个人使用:整个系统由一个人操纵,使用方便。界面友好:人机交互的方式,图形界面。管理方便:根据用户自己的使用要求,方便的对系统进行管理。适于普及:满足一般的工作需求,价格低廉。2)多用户操作系统多:代表是UNIX,具有更强大的功能和更多优点。①网络操作系统计算机网络=计算机技术+通信技术2计算机网络的特征:分布性、自治性、互连性、可见性网络操作系统功能本机+网络操作系统:本地OS之上覆盖了网络OS,可以是同构的也可以是异构的。功能:实现网络通信、资源共享和保护、提供网络服务和网络接口等②分布式操作系统定义:运行在不具有共享内存的多台计算机上,但用户眼里却像是一台计算机。(分布式系统无本地操作系统运行在各个机器上)分布式系统特征:分布式处理、模块化结构、利用信息通信、实施整体控制分布式操作系统特点:透明性、灵活性、可靠性、高性能、可扩充性第二章:1、判断题:进程是一个程序在某数据集上的一次执行,所以不同进程对应不同的程序。分析:进程是程序在某数据集上得一次执行,但是不同进程可以对应同一程序。2、程序顺序执行与并发执行有什么不同?哈简答题3、用户程序必须在进程中运行。(正确)1、进程由就绪态转为运行态是因为(c)引起的?A、中断事件b、进程状态转换c、进程调度的d、为程序创建进程2、分配到必要的资源并获得处理机的进程状态是(运行态)3、当(b),进程从执行状态转变为就绪状态。a、进程被调度程序选中b、时间片到c、等待某一事件d、等待的时间发生4、一个单cpu的系统中有n个进程,则在等待(阻塞)队列中的进程个数最多可能是(n)1、临界区是指(d)A、一个缓冲区b、一段数据区c、同步机制d、一段程序2、若P/V操作的信号量S初值是2,当前值是-1,则表示有(b)个等待进程。A.0b.1c.2d.33、原语操作是不可被中断的。正确原语指的是完成某种功能且不被分割不被中断执行的操作序列,有时也称原子操作。通常由硬件来实现4.应用举例[例1]设系统中只有一台打印机,有三个用户的程序在执行过程中都要使用打印机输出计算结果。设每个用户程序对应一个进程。问:这三个进程间有什么样的制约关系?使用P、V操作写出这些进程使用打印机的算法。解:由于打印机是一种临界资源,故三个进程只能互斥使用这台打印机。设三个进程分别为PA、PB和PC,互斥信号量mutex初值为1,执行过程如下:3[例2]判断下面的同步问题的算法是否正确?若有错,请指出错误原因并予以改正。1)设A、B两进程共用一个缓冲区Q,A向Q写入信息,B则从Q读出信息,算法框图如图所示。注:信号量S的初值为0[解]该算法不正确。因为A、B两个进程共用一个缓冲区Q,如果A先运行,且信息数量足够多,则缓冲区Q中的信息就会发生后面的冲掉前面的,造成信息丢失,B就不能从Q中读出完整的信息。改正如下:A、B两进程同步使用缓冲区Q,应设定两个信号量:empty表示缓冲区Q为空,初值为1;full表示缓冲区Q已满,初值为0算法框图如下:2)设A、B为两个并发进程,它们共享一临界资源。其运行临界区的算法框图如图所示。[解]该算法不正确。因为A、B两个进程并发执行,且共享一临界资源,故A、B应互斥地使用该临界资源,即在某一时刻只允许一个进程进入该临界资源,无时序关系。改正算法:A、B二进程应互斥进入临界区,设定一信号量mutex,初值为1。4[例2]设有一台计算机,有两个I/O通道,分别接一台卡片输入机和一台打印机。卡片机把一叠卡片逐一输入到缓冲区B1中,加工处理后再搬到缓冲区B2中,并在打印机上印出,问:1)系统要设几个进程来完成这个任务?各自的工作是什么?2)这些进程间有什么样的相互制约关系?3)用P、V操作写出这些进程的同步算法。[解]1)系统可设三个进程来完成该任务:Read进程负责从卡片输入机上读入卡片信息,输入到缓冲区B1中;Get进程负责从缓冲区B1中取出信息,进行加工处理,之后将结果送到缓冲区B2中;Print进程负责从缓冲区B2中取出信息,并在打印机上打印输出。2)操作过程:Read进程受Get进程的影响,B1缓冲区中放满信息后Read进程要等待get进程将其中信息全部取走后才能读入信息;Get进程受Read进程和Print进程的约束:B1缓冲区中信息放满后,Get进程才可从中取走信息,且B2缓冲区信息被取空后Get进程才能将加工结果送入其中;Print进程受Get进程的约束,B2缓冲区中信息放满后Print进程方可取出信息进行打印输出。3)信号量的含义及初值:B1full——缓冲区B1满,初值为0B1empty——缓冲区B1空,初值为0B2full——缓冲区B2满,初值为0B2empty——缓冲区B2空,初值为04)操作框图如下:5.三种信号量的比较:整型信号量:只有一个资源,只能互斥访问这个资源记录型信号量:只可申请一类资源,该资源有n个,一次只可申请一个。AND型信号量:可申请n类资源,每类资源有m个,每次可申请每类资源中的一个。信号量集:可申请n类资源,每类资源有m个,每次可申请每类资源中的多个。6.例1用信号量实现司机和售票员的同步。设S1为司机的私用信号量,0表不许开车,1允许开车,初值为0S2为售票员的私用信号量,0表不许开门,1允许开门,初值为0由于初始状态是汽车行车和售票员售票。所以初值都为0则司机和售票员的同步过程描述如下:57.2:桌子上有一只盘子,每次只能放入一只水果,爸爸专向盘子中放苹果,妈妈专向盘子中放桔子,一个儿子专等吃盘子中的桔子,一个女儿专等吃盘子里的苹果。只有盘子空则爸爸或妈妈就可向盘子中放一只水果,仅当盘子中有自己需要的水果时,儿子或女儿可从盘子中取出。把爸爸、妈妈、儿子、女儿看作四个进程,用PV操作进行管理,使这四个进程能正确的并发执行。•爸爸和妈妈存放水果时必须互斥。临界资源为盘子•儿子和女儿分别吃桔子和苹果。•爸爸放了苹果后,应把“盘中有苹果”的消息发送给女儿;•妈妈放了桔子后,应把“盘中有桔子”的消息发送给儿子;•取走果品后应该发送“盘子可放水果”的消息,但不特定发给爸爸或妈妈,应该通过竞争资源(盘子)的使用权来决定如何定义信号量?S是否允许向盘子中放入水果,初值为1,表示允许放入,且只允许放入一只。SP表示盘子中是否有苹果,初值为0,表示盘子为空,不许取,SP=1时可以取。SO表示盘子中是否有桔子,初值为0,表示盘子为空,不许取,SP=1时可以取。至于儿子或女儿取走水果后要发送“盘子中可存放水果”的消息,只要调用V(S)就可达到目的,不必在增加信号量了。BegainS,SP,SO:semaphoreS:=1;SP:=0;SO:=0;CobegainprocessfatherbegainL1:haveanapple;P(S);putanapple;V(SP);gotoL1end;processmotherbegainL2:haveanorange;P(S);putanorange;V(SO);6gotoL2end;processsonbegainL3:P(SO);getanorange;V(S);eatanorange;gotoL3end;processdaughtbegainL4:P(SP);getanapple;V(S);eatanapple;gotoL4end;coend;end;第三章:1.例题:假设系统有四类资源:磁带驱动器、绘图仪、打印机和卡片穿孔机。各类资源的总数用W=(6,3,4,2)表示,即有6台磁带驱动器,3台绘图仪,4台打印机,2台卡片穿孔机。现有五个进程A、B、C、D和E,已获得的资源的种类及数量如下所示:括号外面的数字代表:已获得的资源的种类及数量进程磁带驱动器绘图仪打印机穿孔机A3(1)0(1)1(0)1(0)B0(0)1(3)0(1)0(2)C1(5)1(1)1(0)0(0)D1(0)1(0)0(1)1(0)E0(2)0(1)0(1)0(0)括号里面的数字代表:尚需资源的种类及数量(1)请找出一个执行的安全队列。(2)如果B请求(0110),能否分配给它?如分配给它会否死锁?(3)如果C请求(1000),能否分配给它?如分配给它会否死锁?(4)如果E请求(1020),能否分配给它?如分配给它会否死锁?2.例题:银行家算法题:若出现下述的资源分配情况:7ProcessCurrent-AllocationStill-NeedAvailableP0003200122022P110001130P213011310P303010032P400121023(1)该状态是否安全?若安全,则列出一个安全序列。(2)如果进程P2提出请求Request(1、0、1、0)后,系统能否将资源分配给它,写出分析过程(文字描述)解:(1)该状态使安全的。P0p3p4p1p2是它的一个安全序列。(2)假设对进程p2提出请求Requrst(1、0、1、0.)予以满足,则系统资源剩余量为1、0、1、2。此时资源申请可以满足的进程只有p3和p4,假设先让p3完成,它完成后系统资源剩余量为1、3、4、5。此时资源申请可以满足的进程有p1p2p4,假设先让p4完成,它完成后系统资源剩余量为1、3、5、7。此时资源申请可以满足的进程有p1和p2,假设先让p1完成,它完成后系统资源剩余量为2、3、5、7。最后资源满足p2的要求。由此可见p2的请求可以给予满足。3.两级调度的区别:作业调度和进程调度的区别作业调度(宏观调度)进程调度(微观调度)为进程活动做准备,即有获得处理机的资格使进程活动起来,即分配得到了处理机调度次数少调度频率高有的系统不设作业调度进程调度必不可少4.几种简单的算法:先来先服务(FCFS)调度算法的实现思想:按作业(进程)到来的先后次序进行调度,即先来的先得到运行。用于作业调度:从作业对列(按时间先后为序)中选择队头的一个或几个作业运行。用于进程调度:从就绪队列中选择一个最先进入该队列的进程投入运行。例如设有三个作业,编号为1,2,3。各作业分别对应一个进程。各作业依次到达,相差一个时间单位。算出各作业的周转时间和带权周转时间作业到达时间运行时间开始时间完成时间周转时间带权周转时间10240242412132427268.673232730289.33平均
本文标题:操作系统习题(哈工大)
链接地址:https://www.777doc.com/doc-1366792 .html