操作系统110440113王力Word文件下载.docx

上传人:b****6 文档编号:17655169 上传时间:2022-12-07 格式:DOCX 页数:30 大小:207.71KB
下载 相关 举报
操作系统110440113王力Word文件下载.docx_第1页
第1页 / 共30页
操作系统110440113王力Word文件下载.docx_第2页
第2页 / 共30页
操作系统110440113王力Word文件下载.docx_第3页
第3页 / 共30页
操作系统110440113王力Word文件下载.docx_第4页
第4页 / 共30页
操作系统110440113王力Word文件下载.docx_第5页
第5页 / 共30页
点击查看更多>>
下载资源
资源描述

操作系统110440113王力Word文件下载.docx

《操作系统110440113王力Word文件下载.docx》由会员分享,可在线阅读,更多相关《操作系统110440113王力Word文件下载.docx(30页珍藏版)》请在冰豆网上搜索。

操作系统110440113王力Word文件下载.docx

4.什么是分时系统?

什么是实时系统?

试从交互性、及时性、独立性、多路性和可靠性几个方面比较分时系统和实时系统。

分时系统。

在分时系统中,一个计算机与多个终端设备连接,每个用户可以通过终端向计算机发出命令,请求完成某项工作,而操作系统要分析从终端发来的命令,完成用户提出的要求,重复上述交互会话过程,指导完成用户预计的全部工作为止。

分时操作系统吧处理机时间划分成很短的时间片轮流分配给各个联机用户程序使用,如果某个作业在分配给它的时间片用完之前程序还没执行完,该作业就暂时中断,等待下轮继续执行,此时将处理机让给另一个做作业使用。

这样每个用户的要求都能得到快速的响应,给每一个用户的感受是他独占这台计算机。

实时系统。

实时操作系统是操作系统的又一种类型.对外部输入的信息,实时能够在规定时间里处理完毕并作出反应。

“实时”的含义是指计算机对于外来信息能够及时处理,并在被控对象允许的范围内作出快速反应。

实时系统对响应时间要求比分时系统要求更高,一般要求秒级、毫秒级甚至微妙级的响应时间。

两系统的比较:

(1)多路性。

实时信息处理系统和分时系统一样具有多路性。

对于实时控制系统,其多路性主要表现在经常对多路的现场信息进行采集以及对多个对象或多个执行机构进行控制。

(2)独立性。

无论实时信息处理系统还是实时控制系统,与分时系统一样具有独立性。

每个终端用户在向是实时系统提出服务请求时,是彼此独立的工作,互不干涉。

(3)及时性。

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

而实时控制系统对及时性的要求更高。

一般为秒级,几百毫秒级,甚至有的要求低于几百微秒。

(4)交互性。

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

它不像分时系统那样想终端用户提供数据处理、资源共享等服务。

实时控制系统的交互性要求系统具有连续人机对话的功能,即在交互的过程中要对用户的输入有一定的记忆和进一步推断能力。

(5)可靠性。

分时系统虽然也要求具有可靠性,但实时系统则要求系统高度可靠。

因为任何的差错都可能造成巨大的经济损失,甚至产生无法预计的后果。

因此在实时系统中要采取多级容错措施,来保证系统的安全性及数据的安全性。

5.实时系统分为那俩种类型?

实时系统分为实时控制系统、实时信息处理系统。

6.操作系统主要特征是什么?

1、并发性。

并发是指两个或两个以上的事物在同一时间间隔发生。

其并发性主要体现在以下两方面,用户程序与用户程序之间的并发执行。

用户程序与操作系统程序之间的并发执行。

2、共享性。

共享是指计算机上的各种资源供在其上运行的程序共同享用。

这种共享是在操作系统的统一控制下进行的,共享分为互斥共享方式和共同访问方式。

3、虚拟性。

虚拟是指通过某种技术手段把一个物理实体变成多个逻辑上对应物。

物理实体是实际存在的,而逻辑实体是虚的。

是用户的一种感觉。

4、不确定性。

操作系统在一个不确定的环境中进行,即人们不能对目前正在运行的程序的行为作出判断。

因为在多道程序环境下,进程的执行是“走走停停”的,在内存的多个程序,何时运行,何时暂停、以怎样的速度向前推进,每个程序需要多长时间完成都是不可预知的。

7.操作系统与用户的接口有几种?

它们各自用在什么场合?

接口有两种:

命令接口和程序接口。

命令接口是为了方便用户控制自己的作业,其分为联机命令接口、脱机命令接口和图形用户界面接口。

程序接口又称系统调用,是为用户在程序一级访问操作系统功能而设置的。

是用户取得操作系统功能的唯一途径。

8.“操作系统是控制硬件的软件”这一说法确切吗?

为什么?

不确切。

操作系统是配置在硬件上的第一层软件,是对硬件的第一次扩充。

但并不是控制硬件的软件,操作系统的主要作用是管理计算机系统中的各种软、硬件资源,使其能被高效的利用来方便用户。

9.设内存中有三道程序,A、B、C,它们按A→B→C的先后次序执行,它们进行“计算”和“I/O操作”的时间如表1-2所示,假设三道程序使用相同的I/O设备。

操作

程序

计算I/O操作计算

A

B

C

203010

305020

102010

(1)试画出单道运行时三道程序的时间关系图,并计算完成三道程序需要花多少时间。

完成三道程序需要200秒。

(2)试画出多道运行时三道程序的时间关系图,并计算完成三道程序需要花多少时间。

完成三道程序需要120秒

10.将下列左右俩列词连接起来形成意义最恰当的五对。

DOS网络操作系统

OS/2自由软件

UNIX多任务

Linux单任务

WindowsNT为开发操作系统而设计c语言

11.选择一个现代操作系统,查找和阅读相关的技术资料,写一篇关于该操作系统如何进行内存管理、存储管理、设备管理和文件管理的文章。

批处理系统是怎样的

 

第二章思考与练习题

1.操作系统中为何要引入进程的概念?

为了实现并发进程之间的合作和协调,以及保证系统的安全,操作系统在进程管理方面要做哪些工作

答:

早期的计算机系统只允许以此执行一个程序,该程序对系统有完全的控制,能访问系统中的所有资源。

现代操作系统允许将多道程序同时调入内存并发执行,这就要求对各种程序提供更严格的控制和功能划分。

这样的要求就产生了进程的概念。

进程管理所要做的工作:

(1)、为防止操作系统及其关键数据结构,如PCB等,受到用户程序的有意或无意的破坏。

通常将处理机的执行状态分为核心态和用户态。

(2)、内核和原语。

内核是在计算机硬件上扩充的第一层软件。

操作系统要对这部分软件进行保护。

内核是利用原语来实现的。

原语是由原子操作构成。

即所有操作要么全做,要么全不做,不可分割。

内核包含时钟管理、中断处理、原语操作。

(3)、进程家族树。

进程控制的职责是对系统中的所有进程实行有效的管理,其主要表现为对一个进程的创建、撤销,以及进程状态的转换控制。

通常允许一个进程创建和控制另一个进程。

前者称为父进程,后者称为子进程。

创建父进程的进程称为祖父进程。

子进程又可以创建孙进程。

从而形成一个树结构的进程家族。

2.试描述当前正在进行的进程状态改变时,操作系统进行进程切换的步骤。

就绪状态-->

运行状态进程根据优先级插入到就绪队列的适当位置。

系统进程调度程序进行程序调度。

运行状态-->

阻塞状态系统收回其占有的资源并能够调度程序进行新程序调度运行。

3.现代操作系统一般都提供多任务的环境,试回答以下问题。

(1)为支持多进程的并发执行,系统必须建立哪些关于进程的数据结构?

建立进程控制块PCB,不同PCB用链表连接起来够就绪队列、阻塞队列。

(2)为支持进程状态的变迁,系统至少应提供哪些进程原语?

阻塞原语、唤醒原语、挂起原语、激活原语

(3)当进程的状态变迁时,相应的数据结构发生变化吗?

创建原语。

建立进程PCB,并将进程加入就绪队列。

撤销原语。

删除进程PCB,并将进程从其队列中删除。

阻塞原语。

将PCB中进程状态从运行状态变为阻塞状态,并将进程加入阻塞队列。

唤醒原语。

将PCB中进程状态从阻塞状态变为就绪状态,并将进程加入就绪队列。

4.什么是控制进程块?

从进程管理、中断处理、进程通信、文件管理及存储管

理角度设计进程控制块应包含的内容。

进程控制块是进程实体的一部分,它是操作系统中最重要的数据结构。

进程控制块记录了,操作所需的用于描述进程情况及控制进程运行的全部信息。

进程控制块包含:

(1)进程描述信息。

包括进程名,进程标识符,进程所属用户名等。

(2)处理机状态信息。

处理机状态主要有通用寄存器,指令计数器,程序状态字寄存器,栈指针等内容信息构成。

(3)进程调度信息。

包括进程的状态、进程的优先级、运行的统计信息、进程阻塞的原因。

(4)进程控制和资源占有信息。

包括程序入口地址,程序外存地址,进程同步及通信机制,资源占有信息、连接指针。

5.假设系统就绪队列中有10个进程,这十个进程轮换执行每隔300ms轮换一次,CPU在进程切换时所花费的时间是10ms,试问系统化在进程切换上的开销占系统整个时间的比例是多少?

10%(10+300)=3.2%

6.试述线程的特点及其与进程之间的关系

线程是进程的一个实体,线程表示进程的一个控制点,执行一系列指令。

由于一个进程中有多个线程可同时访问进程的所有资源。

因此线程之间的通信要比进程之间的通信要方便的多。

同一进程中线程的切换也因现成的轻装而方便的多。

一个进程至少有一个线程。

7.根据图2-8回答以下问题。

(1)进程发生状态变迁1、3、4、6、7的原因。

1表示进程创建后,进程进入高优先级就绪队列

3表示进程因I/O操作等待某件事而阻塞。

4表示进程运行时间片用完。

6表示进程I/O操作完成或时间片到了。

7表示进程运行完成而退出。

(2)系统中常常由于某一进程的状态变迁引起另一进程也产生状态变迁,这种变迁成为因果变迁。

下属是否是因果变迁:

3-2、4-5、7-2、3-6,试说明原因。

3-->

2是因果关系,当一个程序从运行状态变到阻塞状态时,CPU空闲时,高优先级队列中的一个进程运行。

4-->

5是因果关系,一个程序运行完成,如果高优先级就绪队列为空,则从低优先级中调入一个程序运行

7-->

2是因果关系,一个程序运行完成,系统从高优先级就绪队列中调入一个进程运行。

6不是因果关系,一个程序阻塞是由于自身原因,和另一个程序的等待无关。

(3)根据此进程状态转化图,说明该系统CPU调度的策略与效果。

进程调度使一个进程因I/O操作进入阻塞状态时,造成CPU空闲时,进程调度程序调另一个程序进入CPU运行。

提高CPU的运行效率,加大系统的吞吐量。

8.回答以下问题。

(1)若系统中没有运行进程,是否一定没有就绪进程?

是,当CPU空闲时,系统从就绪队列中调一个就绪的进程进入CPU运行,只有当就绪队列为空时,CPU才空闲。

(2)若系统中既没有运行进程,也没有就绪进程,系统中是否就没有阻塞进程?

请解释。

不一定,没有就绪程序时,CPU空闲,也许有进程因I/O操作被阻塞而不能进入CPU执行。

(3)如果系统采用优先级调度策略,运行的进程是否一定是系统中优先级最高的进程?

不一定,高优先级队列中的进程也可能在进行其他操作,而无法进入就绪状态,此时系统只有从低优先级队列中调已进入就绪状态的进程进入CPU运行。

9.假设有以下程序段,回答下面问题。

S1:

a=3-x;

S2:

b=2*a;

S3:

c=5+a;

(1)并发程序执行的Bernstein条件是什么?

R(S1)∩W(S2)∪R(S2)∩W(S1)∪W(S1)∩W(S2)={}

(2)试画图表示他们执行的先后次序。

(3)利用Bernstein条件证明,s1,s2,s3那两个可以并发执行,那两个不能。

R(S1)={X}R(S2)={A}R(S3)={A}

W(S1)={A}W(S2)={B}W(S3)={C}

因为R(S1)∩W(S2)∪R(S2)∩W(S1)∪W(S1)∩W(S2)={A}S1和S2不可以并发执行

R(S1)∩W(S3)∪R(S3)∩W(S1)∪W(S1)∩W(S3)={}S1和S3可以并发执行

R(S2)∩W(S3)∪R(S3)∩W(S2)∪W(S2)∩W(S3)={}S2和S3可以并发执行

第三章思考与练习题

1.一下进程之间存在相互制约关系吗?

若存在,是什么制约关系?

(1)几个同学去图书馆借同一本书。

互斥制约,几个同学不能同时借一本书。

(2)篮球比赛中两队同学争抢篮板球。

答:

互斥制约,两个队不能同时抢到篮板球。

(3)果汁流水线生产中捣碎、消毒、灌装、装箱等各道工序。

同步制约,各道工序必须按一定的时序

(4)商品的入库出库。

通信制约,出库和入库必须互换信息,出库必须要库中有货物,入库必须要库中有空位。

(5)工人做工与农民种粮。

无制约关系。

2.在操作系统中引入管程的目的是什么?

条件变量的作用是什么?

把所有的进程对某一临界资源的同步操作集中起来,构成一个所谓的“秘书”进程,凡是要访问临界资源的进程,都必须先向秘书报告,并由“秘书”实现诸进程的同步,既管程式:

一个共享资源的数据结构以及一组能为并发进程在其上执行的针对该资源的一组操作,这组操作能同步进程和改变管程中数据。

3.说明P、V操作为什么要设计成原语

所谓原语操作就是操作不能被分割,要么不做,要么全做,P、V操作作为对资源的申请和释放,不能被分割,故要设计成原语操作。

有一个售票大厅,可容纳200人购票。

如果厅内不足200人则允许进入,超过则在厅外等候;

售票员某时只能给一个购票者服务,购票者买完票后就离开。

试问:

(1)购票者之间是同步关系还是互斥关系?

购票者之间是互斥关系,他们不能同时使用售票员这一资源。

(2)用P、V操作描述购票者的工作过程。

{p(售票员),s(购票者),v(售票员)}

4.程之间的关系如图3-16所示,试用P、V操作描述它们之间的同步。

进程s1:

):

{s1,v

(1),v

(2)}

进程s2:

{p

(1),s2,p(3)}

进程s3:

{p

(2)},s3,v(4),v5)}

进程s4:

{p(4),s4,v(6)}

进程s5:

{p(5),s5,v(7)}

进程s6:

{p(3),p(6),p(7),s6}

5.有4个进程P1、P2、P3、P4共享一个缓冲区,进程P1向缓冲区存入消息,进程P2、P3、P4从缓冲区中读消息,要求发送者必须等三个进程都读过本消息后才能发送下条消息。

缓冲区内每次只能容纳一个消息,用P、V操作描述四个进程存取消息的情况。

semaphoremutex=1

voidp1-writer:

voidp2_reader:

voidp3_reader:

voidp4_reader:

While(true)while(true)while(true)while(true)

{{{{

p(mutex)p(mutex)p(mutex)p(mutex)

If(reader>

=3)reading;

reading;

Writing;

reader++;

reader=0;

v(mutex)v(mutex)v(mutex)

V(mutex)}}}

}

6.分析生产者——消费者问题中多个P操作颠倒引起的后果。

如果把p(empty)和p(mutex)顺序颠倒,先检查p(mutex)再检查p(empty),有可能检查p(mutex)是通过了,但检查p(empty)时没有用过。

这时候进程将占用临界资源mutex,但empty没有通过进程被挂起。

进程不能执行,临界资源不能被其他进程所用而产生死锁。

7.读者——写者问题中写者优先的实现。

semaphoreWmutex,Rmutex=1;

IntRcount=0;

semaphoremutex=1;

voidreader()//读者进程

{

While(true)

P(mutex);

P(Rmutex);

If(Rcount==0)P(Wmutex);

Rcount=Rcount+1;

V(Rmutex);

V(mutex);

…;

Read;

Rcount=Rcount-1;

If(Rmutex==0)V(Wmutex);

}

voidwriter()//写者进程

P(Wmutex);

writer;

V(Wmutex);

8.写一个用信号量解决哲学家进餐问题不产生锁死的算法。

Semaphoremutex=1,chopstick[5]={1,1,1,1,1};

Voidphilosopher()

While(true)

//先让一个进程占住临界资源mutex;

再申请其他资源

P(chopstick[i]);

P(chopstick[(i+1)%5]);

…….;

Eat;

Think;

9.一个文件可有若干个不同的进程所共享,每个进程具有唯一的编号。

假定文件可有满足下列限制的若干个不同的进程同时访问,并发访问该文件的哪些进程的编号的总和不得大于n,设计一个协调对该文件访问的管程。

10.用管程解决读者——写者问题,并采用公平原则。

Monitormonitor_pc;

SemaphoreR,w;

inti,j;

conditionRmutex,Wmutex=1;

voidreading()

If(W.queue>

0)Cwait(Wmutex)

……..;

reading;

Csignal(Rmutex);

Voidwriting()

If(R.queue>

Writing;

Voidreader()

{

Monitor_pc.reading();

Voidwriter()

Monitor_pc.writing();

第四章思考与练习题

1.某进程被唤醒后立刻投入运行,能说明该系统采用的是可剥夺调度算法吗?

不能,可能该进程在被唤醒时等待序列为空,CPU正处于空闲状态,就可直接运行该进程。

2.在哲学家进餐问题中,如果将先拿起左边筷子的哲学家称为左撇子,先拿起右边筷子的哲学家称为右撇子。

请说明在同时存在左、右撇子的情况下,任何的就坐安排都不能产生锁死。

如果同时存在左、右撇子,则必有左、右撇子相邻的情况。

则左右相邻的两个进程必有一个因拿不到第一只筷子而被阻塞。

此时五只筷子被四个进程使用,必有哦一个进程拿到两只筷子而运行。

然后释放资源,其他的进程再继续执行。

故不会发生死锁。

3.系统中有5个资源被4个进程所共享,如果每个进程最多需要2个这种资源,试问系统是否会产生锁死?

如果每个进程最多需要2个这种资源,如果把5个资源全分给4个进程,则必有一个进程获得2个资源。

则这个进程就可执行完成。

然后释放资源。

后面的进程就可依次执行完成而不会产生死锁。

4.计算机系统有8台磁带机,由N个进程竞争使用,每个进程最多需要3台。

问:

N为多少时,系统没有死锁的危险?

当N<

=3时,没有死锁的危险。

因为每个进程最多需要3台,则当有1个或2个进程是,每个进程都能获得3台,当N=3时,可以其中有两个进程可获得3台,而一个进程获得2台,当其他进程执行完成后自愿释放后它在执行,故不会发生死锁。

当N=4时,有可能每个进程只获得2台磁带机,而不能被执行。

但又没有其他资源可供使用,都被阻塞挂起,从而引起死锁。

当N>

4时是同样的道理。

5.系统有5个进程,它们的到达时间和服务时间如表4-8所示。

新进程(没有运行过)与老进程(运行过的进程)的条件相同时,假定系统选新进程运

进程名

到达时间

服务时间

A

3

2

6

4

D

5

E

8

若按先来先服务(FCFS)、时间片轮法(时间片q=1)、短进程优先(SPN)、最短剩余时间优先(SRT,时间片q=1)、响应比高者优先(HRRN)及多级反馈队列(MFQ,第一个队列的时间片为1,第i(i>

1)个队列的时间片q=2(i-1))算法进行CPU调度,请给出各个进程的完成时间、周转时间、带权周转时间,及所有的进程的平均周转时间,平均带权周转时间

(见下图)。

6、设系统中有5个进程P1、P2、P3、P4、P5,有3种类型的资源A、B、C,其中A资源的数量是17,B资源的数量是5,C资源的数量是20,T0时刻系统状态如表4-9所示。

表4-9T0时刻系统状态

进程

已分配资源数量

最大资源需求量

仍然需求资源数

P1

1

9

7

P2

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

当前位置:首页 > 高中教育 > 其它课程

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1