操作系统打印.docx

上传人:b****3 文档编号:3942512 上传时间:2023-05-06 格式:DOCX 页数:18 大小:89.77KB
下载 相关 举报
操作系统打印.docx_第1页
第1页 / 共18页
操作系统打印.docx_第2页
第2页 / 共18页
操作系统打印.docx_第3页
第3页 / 共18页
操作系统打印.docx_第4页
第4页 / 共18页
操作系统打印.docx_第5页
第5页 / 共18页
操作系统打印.docx_第6页
第6页 / 共18页
操作系统打印.docx_第7页
第7页 / 共18页
操作系统打印.docx_第8页
第8页 / 共18页
操作系统打印.docx_第9页
第9页 / 共18页
操作系统打印.docx_第10页
第10页 / 共18页
操作系统打印.docx_第11页
第11页 / 共18页
操作系统打印.docx_第12页
第12页 / 共18页
操作系统打印.docx_第13页
第13页 / 共18页
操作系统打印.docx_第14页
第14页 / 共18页
操作系统打印.docx_第15页
第15页 / 共18页
操作系统打印.docx_第16页
第16页 / 共18页
操作系统打印.docx_第17页
第17页 / 共18页
操作系统打印.docx_第18页
第18页 / 共18页
亲,该文档总共18页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

操作系统打印.docx

《操作系统打印.docx》由会员分享,可在线阅读,更多相关《操作系统打印.docx(18页珍藏版)》请在冰点文库上搜索。

操作系统打印.docx

操作系统打印

1试从交互性、及时性以及可靠性方面,将分时系统与实时系统进行比较。

答:

(1)及时性:

实时信息处理系统对实时性的要求与分时系统类似,都是以人能接受的等待时间来确定的。

而实时控制系统的及时性,则是以控制对象所要求的开始截止时间或完成截止时间来确定,一般为秒级或毫秒级,甚至有的要低于100微秒。

(2)交互性:

实时信息处理系统虽然也具有交互性,但人与系统的交互仅限于访问系统中某些特定的专用服务程序。

不像分时系统那样能向终端用户提供数据和资源共享等服务。

(3)可靠性:

分时系统也要求系统可靠,但相比之下,实时系统则要求系统具有高度

的可靠性。

因为任何差错都可能带来巨大的经济损失,甚至是灾难性后果,所以在实时系统

中,往往都采取了多级容错措施保障系统的安全性及数据的安全性。

2.简述操作系统的定义及功能。

操作系统是配置在计算机硬件上的第一层软件,是对硬件系统的首次扩充,它在计算机中占据了特别重要的地位,而其它的例如汇编程序、编译程序、数据库管理系统等系统软件,以及大量的应用软件,都将依赖于计算机操作系统的支持,取得它的服务

功能主要有处理机管理,存储器管理,设备管理,文件管理和用户接口。

3.是什么原因使操作系统具有异步性特征?

答:

操作系统的异步性体现在三个方面:

一是进程的异步性,进程以人们不可预知的速度向

前推进,二是程序的不可再现性,即程序执行的结果有时是不确定的,三是程序执行时间的

不可预知性,即每个程序何时执行,执行顺序以及完成时间是不确定的。

4.试从动态性,并发性和独立性上比较进程和程序?

答:

(1)动态性是进程最基本的特性,表现为由创建而产生,由调度而执行,因得不到资源

而暂停执行,由撤销而消亡。

进程有一定的生命期,而程序只是一组有序的指令集合,是静

态实体。

(2)并发性是进程的重要特征,同时也是OS的重要特征。

引入进程的目的正是为了使其程序能和其它进程的程序并发执行,而程序是不能并发执行的。

(3)独立性是指进程实体是一个能独立运行的基本单位,也是系统中独立获得资源和独立调度的基本单位。

对于未建立任何进程的程序,不能作为独立单位参加运行。

5.试说明PCB的作用,为什么说PCB是进程存在的惟一标志?

答:

PCB是进程实体的一部分,是操作系统中最重要的记录型数据结构。

作用是使一个在

多道程序环境下不能独立运行的程序,成为一个能独立运行的基本单位,成为能与其它进程

并发执行的进程。

OS是根据PCB对并发执行的进程进行控制和管理的。

6.试说明进程在三个基本状态之间转换的典型原因。

答:

(1)就绪状态→执行状态:

进程分配到CPU资源

(2)执行状态→就绪状态:

时间片用完

(3)执行状态→阻塞状态:

I/O请求

(4)阻塞状态→就绪状态:

I/O完成

7.操作系统为什么具有异步性特征?

进程是以人们不可预知的速度向前推进,多道程序环境下,允许多个进程并发执行.但由于资源等因素的限制,进程的执行通常并非一气呵成,而是以走走停停的方式运行.内存中的每个进程在何时执行,何时暂停,以怎样的速度向前推进,每道程序总共需要多少时间才能完成,都是不可预知的.故而作业完成的先后次序与进入内存的次序并不完全一致,亦即进程是以异步方式运行的.但在有关进程控制及同步机制等的支持下,只要运行环境相同,作业经多次运行,都会获得完全相同的结果,因而异步方式是容许的.因此,操作系统便具有了异步性特征.。

8.为什么进程在进入临界区之前应先执行“进入区”代码?

而在退出前又要执行“退出

区”代码?

答:

为了实现多个进程对临界资源的互斥访问,必须在临界区前面增加一段用于检查欲访问

的临界资源是否正被访问的代码,如果未被访问,该进程便可进入临界区对资源进行访问,

并设置正被访问标志,如果正被访问,则本进程不能进入临界区,实现这一功能的代码为"

进入区"代码;在退出临界区后,必须执行"退出区"代码,用于恢复未被访问标志,使其它进程能再访问此临界资源。

9.同步机构应遵循哪些基本准则?

为什么?

答:

基本准则是:

空闲让进、忙则等待、有限等待、让权等待

原因:

为实现进程互斥进入自己的临界区。

10.安全状态和非安全状态的定义是什么?

安全状态是指系统能按某种进程顺序(P1,P2,…,Pn)(称〈P1,P2,…,Pn>序列为安全状态)来为每个进程Pi分配其所需资源,直至满足每个进程对资源的最大需求,使每个进程都可顺利进程。

如果系统无法找到这样一个安全序列,则称系统处于不安全状态。

11.进程的三个基本状态三映像是什么?

答:

就绪状态、执行状态、阻塞状态。

由程序段,相关的数据段,和进程控制块(PCB)构成进程实体(又称进程映像)

12.试从调度性,并发性,拥有资源及系统开销方面对进程和线程进行比较。

(1)调度性。

线程在OS中作为调度和分派的基本单位,进程只作为资源拥有的基本单位。

(2)并发性。

进程可以并发执行,一个进程的多个线程也可并发执行。

(3)拥有资源。

进程始终是拥有资源的基本单位,线程只拥有运行时必不可少的资源,本

身基本不拥有系统资源,但可以访问隶属进程的资源。

(4)系统开销。

操作系统在创建、撤消和切换进程时付出的开销显著大于线程。

13.何谓死锁?

产生死锁的原因和必要条件是什么?

答:

死锁是指多个进程在运行过程中因争夺资源而造成的一种僵局,当进程处于这种僵持状

态时,若无外力作用,它们都将无法再向前推进。

产生死锁的原因为竞争资源和进程间推进顺序非法。

其必要条件是:

互斥条件、请求和

保持条件、不剥夺条件、环路等待条件。

14.分段和分页存储管理有何区别?

答:

(1)页是信息的物理单位,分页是为了实现离散分配方式,以消减内存的外部零头,提高内存利用率。

段则是信息的逻辑单位,它含有一组相对完整的信息。

(2)页的大小固定且由系统决定,由系统把逻辑地址划分为页号和页内地址两部分,是由

机械硬件实现的,因而在系统中只能有一种大小的的页面;而段的长度却不固定,决定于用户

所编写的程序,通常由编译程序在对原程序进行编译时,根据信息的性质来划分。

(3)分页的作业地址空间是一维的,而分段作业地址空间则是二维的。

15.什么是SPOOLing?

答:

在主机的直接控制下,实现脱机输入、输出功能。

此时的外围操作与CPU对数据的处理同时进行,我们把这种在联机情况下实现的同时外围操作称作SPOOLing。

16.试说明SPOOLing系统的组成

答:

SPOOLing系统由输入井和输出井、输入缓冲区和输出缓冲区、输入进程SPi和输出进程SPo三部分组成。

17.SPOOLing系统的特点?

(1)提高了I/O的速度

(2)将独占设备改造为共享设备(3)实现了虚拟设备功能

18.磁盘访问时间由哪几部分组成?

每部分时间应如何计算?

答:

磁盘访问时间由寻道时间Ts、旋转延迟时间Tr、传输时间Tt三部分组成。

(1)Ts是启动磁臂时间s与磁头移动n条磁道的时间和,即Ts=m×n+s。

(2)Tr是指定扇区移动到磁头下面所经历的时间。

硬盘15000r/min时Tr为2ms;软盘300或600r/min时Tr为50~100ms。

(3)Tt是指数据从磁盘读出或向磁盘写入经历的时间。

Tt的大小与每次读/写的字节数b和旋转速度有关:

Tt=b/rN

19.廉价磁盘冗余阵列是如何提高对磁盘的访问速度和可靠性的?

答:

廉价磁盘冗余阵列RAID是利用一台磁盘阵列控制器,统一管理和控制一组(几台到几

十台)磁盘驱动器,组成高度可靠快速大容量的磁盘系统。

操作系统将RAID中的一组物理磁盘驱动器看作一个单个的逻辑磁盘驱动器。

用户数据和系统数据可分布在阵列的所有磁盘中,并采取并行传输方式,大大减少数据传输时间和提高了可靠性。

其优点主要为

(1)可靠性高

(2)磁盘I/O速度快(3)性能/价格比高

20.试说明UNIX系统中所采用的混合索引分配方式。

答:

混合索引分配方式是指将多种索引分配方式结合而成的分配方式。

常见的是采用直接地址和一级索引联合的分配方式,或两级索引分配方式,甚至三级索引分配方式。

在UNIXSystemⅤ和BSDUNIX的索引结点中,都设置了13个地址项,即iaddr(0)~iaddr(12),把所有地址项分成直接地址和间接地址。

21.在具有快表的段页式存储管理方式中,如何实现地址变换?

答:

在CPU给出有效地址后,由地址变换机构自动将页号P送入高速缓冲寄存器,并将此

页号与高速缓存中的所有页号比较,若找到匹配页号,表示要访问的页表项在快表中。

可直

接从快表读出该页对应物理块号,送到物理地址寄存器中。

如快表中没有对应页表项,则再

访问内存页表,找到后,把从页表项中读出物理块号送地址寄存器;同时修改快表,将此页

表项存入快表。

但若寄存器已满,则OS必须找到合适的页表项换出。

22.周转时间指的是什么时间?

包含什么内容?

所谓周转时间,是指作业被提交给系统开始,到作业完成的这段时间间隔(称为作业周转时间)。

它包括四部分时间:

1)作业在外存后备队列上等待(作业)调度的时间,2)进程在就绪队列上等待进程调度的时间,3)进程在CPU上执行的时间,4)进程等待I/O操作完成的时间。

其中后三项在一个作业的整个处理过程中可能会发生多次,(也可能一次不发生)。

23.临界资源、临界区是什么意思?

临界资源,多道程序系统中存在许多进程,它们共享各种资源,然而有很多资源一次只能供一个进程使用。

一次仅允许一个进程使用的资源。

临界区每个进程中访问临界资源的那段程序

24.考虑一个有快表的请求分页系统,设内存的读写周期为1ns,内外存之间传送一个页面的平均时间为5000ns,快表的命中率为80%,页面失效率为10%,求内存的有效存取时间。

答:

内存的有效存取时间EAT(EfficentAccessTime)也叫平均存取时间

EAT=1ns×80%+2ns×10%+(5000ns+2ns)×10%=0.8ns+0.2ns+500.2ns=501.2ns

25如何利用管程来解决生产者与消费者问题?

答:

首先建立一个管程,命名为ProclucerConsumer,包括两个过程:

(1)Put(item)过程。

生产者利用该过程将自己生产的产品放到缓冲池,用整型变

量count表示在缓冲池中已有的产品数目,当count≥n时,表示缓冲池已满,生产者须等待。

(2)get(item)过程。

消费者利用该过程从缓冲池中取出一个产品,当count≤0

时,表示缓冲池中已无可取的产品,消费者应等待。

PC管程可描述如下:

typeproducer-consumer=monitor

Varin,out,count:

integer;

buffer:

array[0,…,n-1]ofitem;

notfull,notempty:

condition;

procedureentrydot(item)

begin

ifcount>=nthennotfull.wait;

buffer(in):

=nextp;

in:

=(in+1)modn;

count:

=count+1;

ifnotempty.queuethennotempty.signal;

end

procedureentryget(item)

begin

ifcount<=0thennotfull.wait;

nextc:

=buffer(out);

out:

=(out+1)modn;

count:

=count-1;

ifnotfull.quenethennotfull.signal;

end

beginin:

=out:

=0;

count:

=0

end

在利用管程解决生产者一消费者问题时,其中的生产者和消费者可描述为:

producer:

begin

pepeat

produceanineminnestp

PC.put(item);

untilfalse;

end

consumer:

begin

repeat

PC.get(item);

consumetheiteminenxtc;

untilfalse;

end

26.什么是AND信号量?

试利用AND信号量写出生产者一消费者问题的解法。

答:

为解决并行带来的死锁问题,在wait操作中引入AND条件,其基本思想是将进

程在整个运行过程中所需要的所有临界资源,一次性地全部分配给进程,用完后一次性释放。

解决生产者-消费者问题可描述如下:

varmutex,empty,full:

semaphore:

=1,n,0;

buffer:

array[0,...,n-1]ofitem;

in,out:

integer:

=0,0;

begin

parbegin

producer:

begin

repeat

produceaniteminnextp;

wait(empty);

wait(s1,s2,s3,...,sn);//s1,s2,...,sn为执行生产者进程除empty外其余的条件

wait(mutex);

buffer(in):

=nextp;

in:

=(in+1)modn;

signal(mutex);

signal(full);

signal(s1,s2,s3,...,sn);

untilfalse;

end

consumer:

begin

repeat

wait(full);

wait(k1,k2,k3,...,kn);//k1,k2,...,kn为执行消费者进程除full外其余的条件

wait(mutex);

nextc:

=buffer(out);

out:

=(out+1)modn;

signal(mutex);

signal(empty);

signal(k1,k2,k3,...,kn);

consumetheiteminnextc;

untilfalse;

end

parend

end

27.什么是信号量集?

试利用信号量集写出读者一写者问题的解法。

答:

对AND信号量加以扩充,形成的信号量集合的读写机制。

解法:

VarRNinteger;

L,mx:

semaphore:

=RN,1;

begin

parbegin

reader:

begin

repeat

Swait(L,1,1);

Swait(mx,1,1);

performreadoperation;

Ssignal(L,1);

untilfalse

end

writer:

begin

repeat

Swait(mx,1,1;L,RN,0);

performwriteoperation;

Ssignal(mx,1);

untilfalse

end

parend

end

28.一个盘子,只能放一个水果,爸爸只放苹果,妈妈只放桔子,儿子只拿桔子,女儿只拿苹果。

Var:

Plant,apple,orange:

semphare:

=1,0,0

Dad:

P(plant);

放苹果

V(apple);

Mum:

P(plant);

放桔子

V(orange);

Sun:

p(orange);

V(plant);

daughter:

p(apple);V(plant);

29、银行业务模拟:

5个窗口,20个座位,总共有20个椅子

begincustomer:

parbeginbegin

var:

wait(chairnum);

cusnum,chairnum:

semaphore:

=0,20;wait(mutex);

clenum,mutex:

semaphore:

=5,1;quhao;

clerk:

singal(cusnum);

beginsingal(mutex);

repeatwait(clenum);

wait(cusnum);singal(chairnum);

干活;接受服务;

打铃铛;离开;

singal(clenum);end

until下班时间到;parend;

endend.

30.某车站售票厅,任何时刻最多可容纳20名购票者进入,当售票少于20名购票者时,则厅外的购票者可立即进入,否则需在外面等待。

若把一个购票者看作一个进程,请回答下列

(1)用P、V操作管理这些并发进程时,应怎样定义信号量?

写出信号量的初值以及信号量各种取值的含义。

答:

定义一信号量S,初始值为20。

S>0S的值表示可继续进入售票厅的人数;

S=0表示售票厅中已有20名购票者;

S<0|S|的值为等待进入售票厅中的人数。

(2)根据所定义的信号量,把应执行的P、V操作填入下述程序中,以保证进程能够正确地并发执行。

CobeginPROCESSPi(i=1,2,…)

Begin

 进入售票厅;

    购票;

    退出;

    End;Coend

答:

上框为P(S),下框为V(S)。

(3)若欲购票者最多为n个人,写出信号量可能的变化范围(最大值和最小值)。

答:

S的最大值为20,S的最小值为20-N,N为某一时刻需要进入售票厅的最多人数。

31、问题:

用P.V操作解决下面问题

司机进程:

售票员进程:

REPEATREPEAT

启动车辆关门

正常驾驶售票

到站停车开门

UNTIL…UNTIL…

同步要求:

先关门,后开车;先停车,后开门

答:

信号量:

S_Door,{初值为0}

S_Stop;{初值为0}

司机进程:

乘务员进程:

BeginBegin

RepeatRepeat

P(S_Door);关门;

启动;V(S_Door);

驾驶;售票;

停车;P(S_Stop);

V(S_Stop);开门;

Untilfalse;Untilfalse;

EndEnd

32、桌上有一空盘,允许存放一只水果.爸爸只可向盘中放苹果,妈妈只可向盘中放橘子,儿子专等吃盘中的橘子,女儿专等吃盘中的苹果.规定当盘空时一次只能放一只水果供吃者取用,请用P,V原语实现爸爸,妈妈,儿子,女儿三个并发进程的同步.爸爸,妈妈,儿子,女儿

Parbeginmum;begin

Plant,apple,orange:

semphaer:

=1,0,0;repeat

Dad;beginWait(plant);

repeatPlaceanorange;

Wait(plant);Sngal(orange);

Placeanapple;Untilfalse;

Singal(apple);end

Untilfalse;son:

begin

endreapt

Daughter:

beginWait(orange);

reaptSingal(plant);

Wait(apple);Eatorange;

Singal(plant);Untilfalse

Eatapple;end

Untilfalseparend;

EndEnd

33.某个系统采用成组链接法来管理磁盘的空闲空间,目前磁盘的状态如图6.10所示。

(1)该磁盘中目前还有多少个空闲盘块?

(2)请简述磁盘块的分配过程。

(3)在为某个文件分配3个盘块后,系统要删除另一文件,并回收它所占的5个盘块,它们的盘块号依次为700、711、703、788、701,请画出回收后的盘块链接情况。

答:

(1)从图中可以看出,目前系统共有四组空闲盘块,第一组为2块,第二,三组分别为100块,第四组虽记为100快,但除去结束标记后实际只有99块,故空闲盘块总数为301块。

(2)磁盘块的分配过程如下:

首先检查超级块空闲盘块号栈是否已上锁,若已上锁则进程睡眠等待;否则将s_nfree减1,若s_nfree仍大于0,即第一组中不止一个空闲盘块,则将s_free[s_nfree]中登记的(即空闲盘块号栈顶的)空闲盘块分配出去。

若s_nfree为0,即当前空闲盘块号栈中只剩下最后一个空闲盘块,由于该盘块中登记有下一组空闲盘块的盘块号和盘块数,因此核心在给超级块的空闲盘块号栈上锁后,先将该盘块的内容读入超级块的空闲盘块号栈,再将该盘块分配出去。

另外,还需将空闲盘块号栈解锁,并唤醒所有等待其解锁的进程。

若s_nfree为0,而且栈底登记的盘块号为0,则表示系统已无空闲盘块可分配,此时也让进程睡眠等待其他进程释放盘块。

(3)根据题意,分配给某文件的3个盘块依次为299号,300号,301号这三个盘块。

在此基础上依次回收另一个文件的5个盘块:

700、711、703、788、701,回收完成后,空闲盘块的链接情况将如图6.11所示。

图6.10当前空闲块的情况

图6.11删除文件B后的空闲块链接情况

23.在两级索引分配方式下,如果每个盘快的大小为2KB,每个盘块号占4字节,则一个索引块中可以存放,允许的最大文件是多少?

解:

2KB/4=512B个盘块号

两级索引最多可以存放的盘块数为:

512B*512B=256KB个盘块号

因此允许的最大文件长度为:

256KB*2KB=512MB

24.假设盘快大小为4KB,每个盘快号占4个字节,在两级索引结构中,允许的最大文件长度是多少?

解:

一个盘快有4KB/4=1KB个登记项;

二级索引有1KB*1KB个登陆项;

则允许的最大文件长度:

1KB*1KB*4KB=4GB

25.假定磁盘块大小为1KB,若硬盘容量为1.2GB,FAT需占用多少空间?

解:

磁盘大小为1.2GB磁盘块的大小为1KB,所以该磁盘共有盘块:

1.2GB/1KB=1.2MB(个);

又1MB<1.2MB<2MB,故1.2MB个盘块号要用21位二进制表示,为了方便存取,每个盘块号用24位二进制描述,即文件分配表的每个表目为3个字节。

FAT需占用空间:

3*1.2MB=3.6MB

26.假定磁盘块的大小为1KB,540MB的硬盘,FAT表占多少存储空间?

解:

磁盘块个数:

540MB/1KB=540KB(个)

512KB<540KB<1024KB

FAT表中每个表目:

2.5字节

FAT表占多存储空间:

2.5*540KB=1350KB

22.在银行家算法中,若出现下述资源分配情:

Process

Allocation

Need

Available

P0

0032

0012

1622

P1

1000

1750

P2

1354

2356

P3

0332

0652

P4

0014

0656

试问:

⑴该状态是否安全?

⑵若进程P2提出请求Request(1,2,2,2)后,系统能否将资源分配给它?

⑴该状态是安全的,因为存在一个安全序列{P0、P3、P4、P1、P2}。

下表为该时刻的安全序列表。

资源

进程

Work

Need

Allocation

Work+Allocation

Finish

P0

P3

P4

P1

P2

1622

1654

1987

19911

29911

0012

0652

0656

1750

2356

0032

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 党团工作 > 思想汇报心得体会

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2