当前位置:文档之家› 计算机操作系统作业汇总(清华大学出版社)

计算机操作系统作业汇总(清华大学出版社)

计算机操作系统作业汇总(清华大学出版社)
计算机操作系统作业汇总(清华大学出版社)

思考与练习题(第一章)

1.什么是操作系统?它的主要功能是什么?

答:操作系统是控制和管理计算机的软、硬件资源,合理地组织计算机的工作流程,以方便用户使用的程序集合。其主要功能包括进程管理功能、存储管理功能、设备管理功能和文件管理功能。

2.什么是多道程序设计技术?多道程序设计技术的主要特点是什么?

答:把多个独立的程序同时放入内存,使它们共享系统中的资源。

(1)多道,即计算机内存中同时放多道相互独立的程序。

(2)宏观上并行,是指同时进入系统的多道程序都处于运行过程中。

(3)微观上串行,是指在单道处理机环境下,内存中的多道程序轮流占用CPU,交替执行。

3.批处理操作系统是怎样的一种操作系统?它的特点是什么?

答:批处理操作系统是一种基本的操作系统类型。在该系统中,用户的作业(包括程序、数据及程序的处理步骤)被成批地输入到计算机中,然后在操作系统的控制下,用户的作业自动的执行。

特点:单道:(1)自动性。(2)顺序性。(3)单道性。

多道:(1)多道性。(2)无序性。(3)调度性。

4.什么是分时操作系统?什么是实时操作系统?试从交互性、及时性、独立性、多路性和

可靠性几个方面比较分时操作系统和实时操作系统。

答:分时操作系统:计算机能够同时为多个终端用户服务,而且能在很短的时间内响应用户的要求。实时操作系统:对外部输入的信息,实时系统能够在规定的时间内处理完毕并做出反应。

(1)多路性:分时系统是为多个终端用户提供服务,实时系统的多路性主要表现在经常对多路的现场信息进行采集以及多个对象或多个执行机构进行控制。

(2)独立性:每个终端向实时系统提出服务请求时,是彼此独立的工作、互不干扰。

(3)及时性:实时信息处理系统与分时系统对及时性的要求类似,都以人们能够接受的等待时间来确定。实时控制系统对一时性的要求更高,是以控制对象所要求的开始截止时间或完成截止时间来确定的。

5.实时操作系统分为哪两种类型?

答:(1)实时控制系统 (2)实时信息处理系统。 6. 操作系统的主要特征是什么?

答:(1)并发性 (2)共享性 (3)虚拟性 (4)不确定性。 7. 操作系统与用户的接口有几种?它们各自用在什么场合?

答:两种,命令接口和程序接口。

命令接口:分为联机命令接口、脱机命令接口和图形用户命令接口。方便用户直接控 制自己的作业而提供的接口。

程序接口:又称为系统调用,是为用户能在程序一级访问操作系统功能而设置的,是用户程序取得操作系统服务的唯一途径。

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

答:不正确,因为操作系统不仅控制硬件,同时它还控制计算机的软件。

9. 假设内存中有三道程序A 、B 、C ,它们按A →B →C 的先后次序执行,它们进行“计算”

和“I/O 操作”的时间如表1-2所示,假设三道程序使用相同的I/O 设备。

表1-2 三道程序的操作时间

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

20 40 60 80 100 120 140 160 180 200

I/O 计算

单道运行三道程序要花时间为200。

(2)

20 40 60 80 100 120 140

I/O

计算

多道运行三道程序要花时间为130。

10.

将下列左右两列词语连接起来形成意义最恰当的5对。

DOS

OS/2UNIX Linux 网络操作系统

自由软件

多任务

单任务Windows NT

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

11. 选择一个现代操作系统,查找和阅读相关的技术资料,写一篇关于该操作系统如何

进行内存管理、存储管理、设备管理和文件管理的文章。

Windows 7 是由微软公司开发的,具有革命性变化的操作系统。该系统旨在让人们的日常电脑操作更加简单和快捷,为人们提供高效易行的工作环境。Win7可供家庭及商业工作环境、笔记本电脑、平板电脑、多媒体中心等使用,下面我将介绍Win7系统是如何进行内存管理、存储管理、设备管理和文件管理的。

Win7的内存管理:Win7会尽可能的使用“可用”的内存空间来缓存用户的预存数据,通过“超级预读”来确定哪些操作是用户常做的,以及把这些需要的数据放到“可用”内存中,这样在用户执行操作时就可以直接从内存读取数据而不用先从硬盘读到内存了。这样,Win7就会把大内存剩余的空间利用上了,在你进行操作时候会有“飞速”的感觉,这就是说Win7越用越快的原因。当然了,这部分空间当有新的需要时候它会即时释放,这超级预读这功能是XP 所没有的,从vista 开始引入,但因为当时大家电脑内存普遍不大,所以没发挥出多少效果,到了Win7时代,经过完善后终于大放异彩。

Win7的存储管理:存储管理要管理的资源是内存储器(简称内存)。它的任务是方便用户使用内存,提高内存的利用率以及从逻辑上扩充内存。

Win7的设备管理:设备管理是操作系统中最复杂、最琐碎的部分。Win7的设备管理器是该操作系统的一个重要应用程序,通过它可以方便地对计算机硬件进行管理。

Win7的文件管理:win7的文件管理是通过资源管理器,通过它可以方便地显示和操作计算机中的文件资源。其中包括文件、文件夹和文件系统,win7支持FAT32、NTFS 和exFAT三种格式文件系统。

思考与练习题(第二章)

1.操作系统中为什么要引入进程的概念?为了实现并发进程之间的合作和协调以及保证系统的安全,操作系统在进程管理方面要做哪些工作?

答:(1)为了从变化的角度动态地分析研究可以并发执行的程序,真实地反应系统的独立性、并发性、动态性和相互制约,操作系统中就不得不引入“进程”的概念;(2)进程管理的职能就是对系统中的全部进程实行有效地管理,其主要表现是对一个进程进行创建、撤销以及在某些进程状态之间的转换控制。为了防止操作系统及其关键的数据结构(如PCB等)受到用户程序有意或无意的破坏,通常将处理机的执行状态分成核心态和用户态,通常用户的程序会在用户态下运行,不能访问操作系统的区域,从而防止了用户程序对操作系统的破坏。

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

答:(1)就绪状态→运行状态。处于就绪状态的进程具备了运行的条件,但未能获得处理机,故没有运行。

(2)运行状态→就绪状态。正在运行的进程,由于规定的时间片用完而被暂停执行,该进程就会从运行状态转变为就绪状态。

(3)运行状态→阻塞状态。处于运行状态的进程,除了因为时间片用完而暂停执行外还有可能由于系统中的其他因素的影响而不能继续执行。

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

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

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

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

答:(1)进程的阻塞与唤醒原语和进程的挂起与激活原语。

(2)系统必须建立进程控制块(Process Control Block,PCB)。

(3)会根据状态的变迁发生相应的变化。例如将进程PCB中进程的状态从阻塞状态改为就绪状态,并将进程从阻塞队列摘下,投入到就绪队列中。

4.什么是进程控制块?从进程管理、中断处理、进程通信、文件管理、设备管理及存储管理的角度设计进程控制块应该包含哪些内容。

答:(1)用来描述进程本身的特性、进程的状态、进程的调度信息及对资源的占有情况等的一个数据结构是进程控制块。

(2)应该包含进程描述信息、处理机状态信息、进程调度信息、进程控制和资源占用信息。

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

答:(10*10)/[(300+10)*10]=3.2%

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

答:(1)特点:线程是进程的一个实体,是被独立调度和分派的基本单位;线程之间的通信要比进程之间的通信方便的多;同一进程内的线程切换也因为线程的轻装而方便的多。

(2)线程与进程的关系:线程是进程的一部分,是进程内的一个实体;一个进程可以有多个线程,但至少必须有一个线程。

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

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

(2)系统中常常由于某一进程的状态变迁引起另一进程也产生状态变迁,这种变迁称为因果变迁。下述变迁3→2,4→5,7→2,3→6是否为因果变迁?试说明原因。(3)根据图2-18所示的进程状态转换图说明该系统CPU调度的策略和效果。

图2-18 进程状态转化图

答:(1)变迁1原因:创建进程后,将其按高优先级插入就绪队列;

变迁3原因:进程请求I/O或等待某事件而阻塞;

变迁4原因:时间片用完;

变迁6原因:进程I/O完成或时间完成;

变迁7原因:进程完成而退出。

(2)3→2是因果变迁,当一个进程从运行态变为阻塞态时,此时CPU空闲,系统首先到高优先级队列中选择一个进程。

4→5是因果变迁,当一个进程运行完毕时,此时CPU空闲,系统首先到高优先级队列中选择进程,但如果高优先级队列为空,则从低优先队列中选择一个进程。

7→2 是因果变迁,当一个进程运行完毕时,CPU空闲,系统首先到高优先级队列中选择一个进程。

3→6不是因果变迁。一个进程阻塞时由于自身的原因而发生的,和另一个进程等待的时间到达没有因果关系。

(3)策略:当进程调度时,首先从高优先级就绪队列选择一个进程,赋予它的时间片为100ms。如果高优先级就绪队列为空,则从低优先级就绪队列选择进程,并且赋予该进程的时间片为500ms。

效果:在100ms运行完毕的短进程在运行完毕后就退出系统;I/O量大的进程在I/O 完成后就会进入高优先级就绪队列;在100ms运行不完的进程就会进入低优先级就绪队列,当高优先级就绪队列为空时,被再次执行,给予大时间片500ms。这种策略减少了进程切换次数,减少了系统开销,但大程序因进入低优先级,会运行时间较长。

8.回答以下问题。

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

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

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

为什么?

答:(1)是,因为一旦系统中没有运行程序,就会从就绪队列中调度进程,只有当就绪队列为空时,系统中才没有进程。

(2)不一定,当运行的程序都因为请求I/O或等待事件时而进入阻塞,系统中就没有就绪进程。

(3)不一定,若优先级高的进程进入阻塞状态时,而且优先级高的就绪队列里没有等待的进程,这时就会调度优先级低的就绪队列的进程。

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

S1: a=3-x;

S2: b=2*a;

S3: c=5+a;

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

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

(3)利用Bernstein 条件证明,S1、S2和S3哪两个可以并发执行,哪两个不能。

答:(1)S1和S2并发执行的条件是当且仅当R(S1)∩W(S2)∪R(S2)∩W(S1)∪W(S1)∩

W(S2)={}。

(2)

(3)因为W(S1)∩R(S2)={a}, 所以S1和S2不能并发执行;

W(S1)∩R(S2)={a}, 所以S1和S3也不能并发执行;

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

思考与练习题(第三章)

1.以下进程之间存在相互制约关系吗?若存在,是什么制约关系?为什么?

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

答:存在相互制约关系,是互斥关系;因为他们要借同一本书,存在竞争问题,

一本书只可能被一个人借到,所以是互斥关系。

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

答:存在相互制约关系,是互斥关系;因为两队同学争抢同一个篮板,只能被

一个人抢到,所以存在互斥关系。

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

答:存在相互制约关系,是同步关系;每道工序都有自己特定的任务,前一道

工序完成才能进行下一道工序。

(4)商品的入库和出库。

答:存在相互制约关系,是同步关系;因为商品出库可以为入库提供空间。

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

答:不存在相互制约关系。

2.在操作系统中引入管程的目的是什么?条件变量的作用是什么?

答:用信号量可以实现进程之间的同步和互斥,但要设置很多信号量,使用大量的P、V操作,还要仔细安排多个P操作的排列次序,否则将出现错误的结果或是死锁现象。

为了解决这些问题引进了管程;

条件变量的作用是使进程不仅能被挂起,而且当条件满足且管程再次可用时,可以恢复该进程并允许它在挂起点重新进入管程。

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

答: 因为P操作和V操作都是对信号量的操作,是为了实现进程同步和互斥的,互斥要解决的就是如何在一个进程修改共享内存区时不让操作系统切换给另一个同样访问这块共享内存区的进程的问题,所以在执行P、V操作时一定不能让进程切换,所以必须采用原语。

4.设有一个售票大厅可容纳200人购票。如果厅内不足200人则允许进入,超过则在厅外

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

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

答:互斥关系。

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

答:

semaphore mutex=1;

semaphore empty=200;

semaphore waiting=0;

void purchase()

{

P(waiting);

P(mutex);

buying tickets;

V(mutex);

V(empty);

}

void waiting()

{

P(empty);

waiting;

waiting++;

}

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

答:

semaphore a=b=c=d=e=f=g=0;

{S1,V(a),V(b)};

{P(a),S2,V(c)};

{P(b),S3,V(d),V(e)};

{P(d),S4,V(f)};

{P(e),S5,V(g)};

{P(c),P(f),P(g),S6};

6.有4个进程P1、P2、P3和P4共享一个缓冲区,进程P1向缓冲区中存入消息,进程P2、

P3和P4从缓冲区中取消息,要求发送者必须等三个进程都取过本条消息后才能发送下一条消息。缓冲区内每次只能容纳一个消息,用P、V操作描述四个进程存取消息的情况。

答:

semaphore p1=0;

semaphore p2,p3,p4=1;

semaphore cout=0;

semaphore mutex=1;

void main()

{

P(p2);P(p3);P(p4);

V(cout);

}

write p1()

{

P(p1);P(meux);P(cout);

存入消息;

V(p1);V(metux);

}

read p2()

{

P(mutex);P(p1);

取消息;

V(p1);V(p2);V(metux);

}

read p3()

{

P(mutex);P(p1);

取消息;

V(p1);V(p3);V(metux);

}

read p4()

{

P(mutex);P(p1);

取消息;

V(p1);V(p4); V(metux);

}

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

答:

semaphore mutex=1;

semaphore empty=n;

semaphore full=0;

int i,j;

ITEM buffer[n];

ITEM data_p,data_c;

void producer() /*生产者进程*/

{

while(true)

{

produce an item in data_p;

P(mutex);

P(empty);

buffer[i]=data_p;

i=(i+1)%n;

V(mutex);

V(full);

}

}

void consumer() /*消费者进程*/

{

while(true)

{

P(full);

P(mutex);

data_c=buffer[j];

j=(j+1)%n;

V(mutex);

V(empty);

consume the item in data_c;

}

}

若把生产者进程的P操作颠倒,消费者进程的P操作颠倒,则生产者进程执行到V(mutex)时,消费者就可以执行P(mutex)但由于full=0,消费者进程不可执行P(full);当生产者进程执行完V(full)后,full=1,但由于mutex=0,消费者进程无法执行,造成死锁。

8.读者—写者问题中写者优先算法的实现。

答:

semaphore Wmutex,Rmutex=1;

int Rcount=0;

semaphore mutex=1

void reader()/*读者进程*/

{

while(true)

{

P(mutex);

P(Rmutex);

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

Rcount=Rcount+1 ;

V(Rmutex);

V(mutex);

…;

read; /*执行读操作*/

…;

P(Rmutex);

Rcount=Rcount-1;

if (Rcount==0)V(Wmutex);

V(Rmutex);

}

}

void writer() /*写者进程*/

{

while(true)

{

P(mutex);

P(Wmutex);

…;

write;/*执行写操作*/

…;

V(Wmutex);

V(mutex);

}

}

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

答:

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

semaphore mutex=1;

void philosopher () /*哲学家进餐*/

{

while(true)

{

P(mutex);

P(chopstick[i]);

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

V(mutex);

…;

eat;/*进餐*/

…;

V(chopstick[i]);

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

…;

think; /*思考*/

…;

}

}

10.一个文件可由若干个不同的进程所共享,每个进程具有唯一的编号。假定文件可由满足

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

答:

monitor monitor_PC;

int identifier[n]={0};

void visit

{

for(i=0;i

{

int m=0;

m=m+identifier[i];

if(m<=n) 访问文件;

else break;

}

}

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

答:

monitor monitor_PC;

int recount=0;

int i;

condition write,read=1;

void reader()

{

cwait(write);

while(true)

{

cwait(read);

i=0;

…;

read;

…;

csignal(read);

}

csignal(write);

}

void writer()

{

while(true)

{

cwait(write);

i=1;

…;

write;

…;

csignal(write);

}

}

void manage()

{

if(i=0) monitor_PC.writer();

if(i=1) monitor_PC.reader();

}

思考与练习题(第四章)

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

答:不能说明,因为如果现在就绪队列中没有进程,那么唤醒的进程会立刻投入运行。2.在哲学家进餐问题中,如果将先拿起左边筷子的哲学家称为左撇子,将先拿起右边筷子的哲学家称为右撇子。请说明在同时存在左、右撇子的情况下,任何的就坐安排都不能产生死锁。

答:任何的就坐安排都不会构成环路,这就符合避免死锁的条件,所以不会产生死锁。

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

答:不会产生死锁。由于资源数大于进程数,所以系统中总会有一个进程获得资源数大于等于2,该进程已经满足了它的最大需求,当它运行完毕后会把它占有的资源归还给系统,此时其余3个进程也能满足最大需求而顺利运行完毕。因此系统不会产生死锁。4.计算机系统有8台磁带机,由N个进程竞争使用,每个进程最多需要3台。问:当N 为多少时,系统没有死锁的危险?

答:当N<4时,系统没有死锁的危险。因为当n<3时,每个进程分配2台磁带机,还有磁带机剩余,那么当其中的一个进程得到剩余的磁带机则可运行,运行结束后会释放磁带机,供其他进程使用,系统不会有死锁的危险;当n为4时,每台分配2台时没有剩余,则会产生死锁,当n>5时同样会死锁。

5.假设系统有5个进程,它们的到达时间和服务时间如表4-8所示。新进程(没有运行过的进程)与老进程(运行过的进程)的条件相同时,假定系统选新进程运行。

表4-8 进程情况

若按先来先服务(FCFS)、时间片轮转法(时间片q=1)、短进程优先(SPN)、最短剩余时间优先(SRT,时间片q=1)、响应比高者优先(HRRN)及多级反馈队列(MFQ,第1个队列的时间片为1,第i(i>1)个队列的时间片q=2(i-1))算法进行CPU调度,请给出各个进程的完成时间、周转时间、带权周转时间及所有进程的平均周转时间和平均带权周转时间。

答:

进程名A B C D E平均

先来先服务

(FCFS)

时间片轮转法(时间片q=1)

到达时间02468

服务时间36452

完成时间39131820

周转时间37912128.6带权周转时间1 1.17 2.25 2.46 2.56完成时间418172015

周转时间4161314710.8带权周转时间 1.33 2.67 3.25 2.8 3.5 2.71完成时间39152011

周转时间37111437.6

短进程优先

(SPN)

最短剩余时间优先(SRT,时间片

q=1)

响应比高者优先

(HRRN)带权周转时间1 1.17 2.75 2.8 1.5 1.84完成时间31582010

周转时间31341427.2带权周转时间1 2.171 2.81 1.59完成时间39132015

周转时间3791478带权周转时间1 1.17 2.25 2.8 3.5 2.14完成时间317182014

周转时间3151414610.4

多级反馈队列

(MFQ)

带权周转时间1 2.5 3.5 2.83 2.56

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

表4-9 T0时刻系统状态

(1)计算每个进程还可能需要的资源,并填入表的“仍然需求资源数”栏目中。

(2)T0时刻系统是否处于安全状态?为什么?

答:处于安全状态;安全状态是指至少存在一个安全序列使每个进程都可以顺利完

成,而序列是一个安全序列,所以处于安全状态。

(3)如果T0时刻进程P2又有新的资源请求(0,3,4),是否实施资源分配?为什么?

答:不实施资源分配;因为实施资源分配后系统就不处于安全状态,会发生死锁。

(4)如果T0时刻,若进程P4又有新的资源请求(2,0,1),是否实施资源分配?为什

么?

答:实施资源分配;因为P4请求资源后,仍然存在安全序列

(5)在(4)的基础上,若进程P1又有新的资源请求(0,2,0),是否实施资源分配?为什

么?

答:不实施资源分配;因为实施资源分配后系统就不处于安全状态,会发生死锁。

思考与练习题(第五章)

1.存储管理的基本任务是为多道程序的并发执行提供良好的存储器环境,这包括哪些方面?

答:

(1)能让没到程序“各得其所”,并在不受干扰的环境中运行时,还可以使用户从存储空间的分配、保护等事物中解脱出来。

(2)向用户提供更大的存储空间,使更多的程序同时投入运行或是更大的程序能在小的内存中运行。

(3)为用户对信息的访问、保护、共享以及程序的动态链接、动态增长提供方便。

(4)能使存储器有较高的利用率。

2.页式存储管理系统是否产生碎片?如何应对此现象?

答:页式存储管理系统产生的碎片,称为内碎片,它是指一个进程的最后一页没有沾满一个存储块而被浪费的存储空间。减少内碎片的办法是减少页的大小。

3.在页式存储管理系统中页表的功能是什么?当系统的地址空间很大时会给页表的设计带来哪些新的问题?

答:功能:页式存储管理系统中,允许将进程的每一页离散地存储在内出的任何一个物理页面上,为保证进程的正常运行,系统建立了页表,记录了进程每一页被分配在内存的物理号。页表的功能是实现从页号到物理块的地址映射。

问题:当系统地址很大时,页表也会变得非常大,它将占有相当大的内存空间。

4.什么是动态链接?用哪种存储管理方案可以实现动态链接?

答:动态链接是指进程在运行时,只将进程对应的主程序段装入内存,并与主程序段链接上。通常一个大的程序是由一个主程序和若干个子程序以及一些数据段组成。而段式存储管理方案中的段就是按用户的逻辑段自然形成的,因此可实现动态链接。

5.某进程的大小为25F3H字节,被分配到内存的3A6BH字节开始的地址。但进程运行时,若使用上、下界寄存器,寄存器的值是多少?如何进行存储保护?若使用地址、限长寄存器,寄存器的值是多少?如何进行存储保护?

答:(1)若使用上下界寄存器,上界寄存器的值是3A6BH,下界寄存器的值是3A6BH+25F3H=605EH,当访问内存的地址大于605EH、小于3A6BH时产生越界中断。

(2)若使用地址、限长寄存器,地址寄存器的值是3A6BH,限长寄存器的值是25F3H,当访问内存的地址小于3A6BH,超过3A6BH+25F3H=605EH时产生越界中断。

6.在系统中采用可变分区存储管理,操作系统占用低地址部分的126KB,用户区的大小是386KB,采用空闲分区表管理空闲分区。若分配时从高地址开始,对于下述的作业申请序列:作业1申请80KB;作业2申请56KB;作业3申请120KB;作业1完成;作业3完成;作业4申请156KB;作业5申请80KB。使用首次适应法处理上述作业,并回答以下问题。

(1)画出作业1、2、3进入内存后,内存的分布情况。

(2)画出作业1、3完成后,内存的分布情况。

(3)画出作业4、5进入内存后,内存的分布情况

答:

作业

1、2、3进入内存作业1、3完成

作业4、5进入内存

7.某系统采用页式存储管理策略,某进程的逻辑地址空间为32页,页的大小为2KB,物理地址空间的大小是4MB。

(1)写出逻辑地址的格式。

页号页内位移

15 11 10 0

(2)该进程的页表有多少项?每项至少占多少位?

答:该进程的页表项有32项,每项至少占11位。

(3)如果物理地址空间减少一半,页表的结构有何变化?

答:页表中每项会由占11位变为占10位。

8.某页式存储管理系统,内存的大小为64KB,被分为16块,块号为0、1、2、 (15)

设某进程有4页,其页号为0、1、2、3,被分别装入内存的2、4、7、5,问:

计算机操作系统(第四版)课后答案第一,二,三章

第一章 1.设计现代OS的主要目标是什么? 答:(1)有效性(2)方便性(3)可扩充性(4)开放性 2.OS的作用可表现在哪几个方面? 答:(1)OS作为用户与计算机硬件系统之间的接口(2)OS作为计算机系统资源的管理者(3)OS实现了对计算机资源的抽象 3.为什么说OS实现了对计算机资源的抽象? 答:OS首先在裸机上覆盖一层I/O设备管理软件,实现了对计算机硬件操作的第一层次抽象;在第一层软件上再覆盖文件管理软件,实现了对硬件资源操作的第二层次抽象。OS 通过在计算机硬件上安装多层系统软件,增强了系统功能,隐藏了对硬件操作的细节,由它们共同实现了对计算机资源的抽象。 4.试说明推劢多道批处理系统形成和収展的主要劢力是什么? 答:主要动力来源于四个方面的社会需求与技术发展:(1)不断提高计算机资源的利用率;(2)方便用户;(3)器件的不断更新换代;(4)计算机体系结构的不断发展。5.何谓脱机I/O和联机I/O? 答:脱机I/O 是指事先将装有用户程序和数据的纸带或卡片装入纸带输入机或卡片机,在外围机的控制下,把纸带或卡片上的数据或程序输入到磁带上。该方式下的输入输出由外围机控制完成,是在脱离主机的情况下进行的。而联机I/O方式是指程序和数据的输入输出都是在主机的直接控制下进行的。 6.试说明推劢分时系统形成和収展的主要劢力是什么? 答:推动分时系统形成和发展的主要动力是更好地满足用户的需要。主要表现在:CPU 的分时使用缩短了作业的平均周转时间;人机交互能力使用户能直接控制自己的作业;主机的共享使多用户能同时使用同一台计算机,独立地处理自己的作业。 7.实现分时系统的关键问题是什么?应如何解决? 答:关键问题是当用户在自己的终端上键入命令时,系统应能及时接收并及时处理该命令,在用户能接受的时延内将结果返回给用户。解决方法:针对及时接收问题,可以在系统中设臵多路卡,使主机能同时接收用户从各个终端上输入的数据;为每个终端配臵缓冲区,暂存用户键入的命令或数据。针对及时处理问题,应使所有的用户作业都直接进入内存,并且为每个作业分配一个时间片,允许作业只在自己的时间片内运行,这样在不长的时间内,能使每个作业都运行一次。 8.为什么要引入实时OS? 答:实时操作系统是指系统能及时响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行。引入实时OS 是为了满足应用的需求,更好地满足实时控制领域和实时信息处理领域的需要。 9.什么是硬实时任务和软实时任务?试举例说明。 答:硬实时任务是指系统必须满足任务对截止时间的要求,否则可能出现难以预测的结果。举例来说,运载火箭的控制等。软实时任务是指它的截止时间并不严格,偶尔错过了任务的截止时间,对系统产生的影响不大。举例:网页内计算机操作系统第三版答案 2 / 47 容的更新、火车售票系统。 10.试从交互性、及时性以及可靠性方面,将分时系统不实时系统迚行比较。答:(1)及时性:实时信息处理系统对实时性的要求与分时系统类似,都是以人所能接受的等待时间来确定;而实时控制系统的及时性,是以控制对象所要求的开始截止时间或完成截止时间来确定的,一般为秒级到毫秒级,甚至有的要低于100微妙。(2)交互性:实时信息处理系统具有交互性,但人与系统的交互仅限于访问系统中某些特定的专用服务程序。不像分时系统那样能向终端用户提供数据和资源共享等服务。(3)可靠性:分时系统也要求系统可靠,但相比之下,实时系统则要求系统具有高度的可靠性。因为任何差错都可能带来巨大的经济损失,甚至是灾难性后果,所以在实时系统中,往往都采取了多级容错措施保障系统的安全性及数据的安全性。 11.OS有哪几大特征?其最基本的特征是什么? 答:并发性、共享性、虚拟性和异步性四个基本特征;最基本的特征是并发性。14.是什么原因使操作系统具有异步性特征? 答:操作系统的异步性体现在三个方面:一是进程的异步性,进程以人们不可预知的速度向前推进,二是程序的不可再现性,即程序执行的结果有时是不确定的,三是程序执行时间的不可预知性,即每个程序何时执行,执行顺序以及完成时间是不确定的。15.处理机管理有哪些主要功能?它们的主要任务是什么? 答:处理机管理的主要功能是:进程管理、进程同步、进程通信和处理机调度;进程管理:为作业创建进程,撤销已结束进程,控制进程在运行过程中的状态转换。进程同步:为多个进程(含线程)的运行进行协调。通信:用来实现在相互合作的进程之间的信息交换。处理机调度:(1)作业调度。从后备队里按照一定的算法,选出若干个作业,为他们分配运行所需的资源(首选是分配内存)。(2)进程调度:从进程的就绪队列中,按照一定算法选出一个进程,把处理机分配给它,并设臵运行现场,使进程投入执行。 16.内存管理有哪些主要功能?他们的主要任务是什么? 答:内存管理的主要功能有:内存分配、内存保护、地址映射和内存扩充。内存分配:为每道程序分配内存。内存保护:确保每道用户程序都只在自己的内存空间运行,彼此互不干扰。计算机操作系统第三版答案 3 / 47 地址映射:将地址空间的逻辑地址

计算机操作系统(第四版)

第三章处理机调度与死锁 1,高级调度与低级调度的主要任务是什么?为什么要引入中级调度? 【解】(1)高级调度主要任务是用于决定把外存上处于后备队列中的那些作业调入内存,并为它们创建进程,分配必要的资源,然后再将新创建的进程排在就绪队列上,准备执行。(2)低级调度主要任务是决定就绪队列中的哪个进程将获得处理机,然后由分派程序执行把处理机分配给该进程的操作。(3)引入中级调度的主要目的是为了提高内存的利用率和系统吞吐量。为此,应使那些暂时不能运行的进程不再占用宝贵的内存空间,而将它们调至外存上去等待,称此时的进程状态为就绪驻外存状态或挂起状态。当这些进程重又具备运行条件,且内存又稍有空闲时,由中级调度决定,将外存上的那些重又具备运行条件的就绪进程重新调入内存,并修改其状态为就绪状态,挂在就绪队列上,等待进程调度。 3、何谓作业、作业步和作业流? 【解】作业包含通常的程序和数据,还配有作业说明书。系统根据该说明书对程序的运行进行控制。批处理系统中是以作业为基本单位从外存调入内存。 作业步是指每个作业运行期间都必须经过若干个相对独立相互关联的顺序加工的步骤。 作业流是指若干个作业进入系统后依次存放在外存上形成的输入作业流;在操作系统的控制下,逐个作业进程处理,于是形成了处理作业流。 4、在什么情冴下需要使用作业控制块JCB?其中包含了哪些内容? 【解】每当作业进入系统时,系统便为每个作业建立一个作业控制块JCB,根据作业类型将它插入到相应的后备队列中。 JCB 包含的内容通常有:1) 作业标识2)用户名称3)用户账户4)作业类型(CPU繁忙型、I/O芳名型、批量型、终端型)5)作业状态6)调度信息(优先级、作业已运行)7)资源要求8)进入系统时间9) 开始处理时间10) 作业完成时间11) 作业退出时间12) 资源使用情况等 5.在作业调度中应如何确定接纳多少个作业和接纳哪些作业? 【解】作业调度每次接纳进入内存的作业数,取决于多道程序度。应将哪些作业从外存调入

计算机操作系统内存分配实验报告记录

计算机操作系统内存分配实验报告记录

————————————————————————————————作者:————————————————————————————————日期:

一、实验目的 熟悉主存的分配与回收。理解在不同的存储管理方式下,如何实现主存空间的分配与回收。掌握动态分区分配方式中的数据结构和分配算法及动态分区存储管理方式及其实现过程。 二、实验内容和要求 主存的分配和回收的实现是与主存储器的管理方式有关的。所谓分配,就是解决多道作业或多进程如何共享主存空间的问题。所谓回收,就是当作业运行完成时将作业或进程所占的主存空间归还给系统。 可变分区管理是指在处理作业过程中建立分区,使分区大小正好适合作业的需求,并且分区个数是可以调整的。当要装入一个作业时,根据作业需要的主存量查看是否有足够的空闲空间,若有,则按需要量分割一个分区分配给该作业;若无,则作业不能装入,作业等待。随着作业的装入、完成,主存空间被分成许多大大小小的分区,有的分区被作业占用,而有的分区是空闲的。 实验要求使用可变分区存储管理方式,分区分配中所用的数据结构采用空闲分区表和空闲分区链来进行,分区分配中所用的算法采用首次适应算法、最佳适应算法、最差适应算法三种算法来实现主存的分配与回收。同时,要求设计一个实用友好的用户界面,并显示分配与回收的过程。同时要求设计一个实用友好的用户界面,并显示分配与回收的过程。 三、实验主要仪器设备和材料 实验环境 硬件环境:PC或兼容机 软件环境:VC++ 6.0 四、实验原理及设计分析 某系统采用可变分区存储管理,在系统运行当然开始,假设初始状态下,可用的内存空间为640KB,存储器区被分为操作系统分区(40KB)和可给用户的空间区(600KB)。 (作业1 申请130KB、作业2 申请60KB、作业3 申请100KB 、作业2 释放 60KB 、作业4 申请 200KB、作业3释放100KB、作业1 释放130KB 、作业5申请140KB 、作业6申请60KB 、作业7申请50KB) 当作业1进入内存后,分给作业1(130KB),随着作业1、2、3的进入,分别分配60KB、100KB,经过一段时间的运行后,作业2运行完毕,释放所占内存。此时,作业4进入系统,要求分配200KB内存。作业3、1运行完毕,释放所占内存。此时又有作业5申请140KB,作业6申请60KB,作业7申请50KB。为它们进行主存分配和回收。 1、采用可变分区存储管理,使用空闲分区链实现主存分配和回收。 空闲分区链:使用链指针把所有的空闲分区链成一条链,为了实现对空闲分区的分配和链接,在每个分区的起始部分设置状态位、分区的大小和链接各个分区的前向指针,由状态位指示该分区是否分配出去了;同时,在分区尾部还设置有一后向指针,用来链接后面的分区;分区中间部分是用来存放作业的空闲内存空间,当该分区分配出去后,状态位就由“0”置为“1”。 设置一个内存空闲分区链,内存空间分区通过空闲分区链来管理,在进行内存分配时,系统优先使用空闲低端的空间。 设计一个空闲分区说明链,设计一个某时刻主存空间占用情况表,作为主存当前使用基础。初始化空间区和已分配区说明链的值,设计作业申请队列以及作业完成后释放顺序,实现主存的分配和回收。要求每次分配和回收后显示出空闲内存分区链的情况。把空闲区说明

计算机操作系统实验四

实验三进程与线程 问题: 进程是具有独立功能的程序关于某个数据集合上的一次运行活动,是系统进行资源分配和调度的独立单位,具有动态性、并发性、独立性、异步性和交互性。然而程序是静态的,并且进程与程序的组成不同,进程=程序+数据+PCB,进程的存在是暂时的,程序的存在是永久的;一个程序可以对应多个进程,一个进程可以包含多个程序。当操作系统引入线程的概念后,进程是操作系统独立分配资源的单位,线程成为系统调度的单位,与同一个进程中的其他线程共享程序空间。 本次实验主要的目的是: (1)理解进程的独立空间; (2)加深对进程概念的理解,明确进程和程序的区别; (3)进一步认识并发执行的实质; (4)了解红帽子(Linux)系统中进程通信的基本原理。 (5)理解线程的相关概念。 要求: 1、请查阅资料,掌握进程的概念,同时掌握进程创建和构造的相关知识和线程创建和 构造的相关知识,了解C语言程序编写的相关知识; (1)进程: 进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。程序是指令、数据及其组织形式的描述,进程是程序的实体。进程的概念主要有两点:第一,进程是一个实体。每一个进程都有它自己的地址空间,一般情况下,包括文本区域(text region)、数据区域(data region)和堆栈(stack region)。文本区域存储处理器执行的代码;数据区域存储变量和进程执行期间使用的动态分配的内

存;堆栈区域存储着活动过程调用的指令和本地变量。第二,进程是一个“执行中的程序”。程序是一个没有生命的实体,只有处理器赋予程序生命时(操作系统执行之),它才能成为一个活动的实体,我们称其为进程。 (2)进程的创建和构造: 进程简单来说就是在操作系统中运行的程序,它是操作系统资源管理的最小单位。但是进程是一个动态的实体,它是程序的一次执行过程。进程和程序的区别在于:进程是动态的,程序是静态的,进程是运行中的程序,而程序是一些保存在硬盘上的可执行代码。新的进程通过克隆旧的程序(当前进程)而建立。fork() 和clone()(对于线程)系统调用可用来建立新的进程。 (3)线程的创建和构造: 线程也称做轻量级进程。就像进程一样,线程在程序中是独立的、并发的执行路径,每个线程有它自己的堆栈、自己的程序计数器和自己的局部变量。但是,与独立的进程相比,进程中的线程之间的独立程度要小。它们共享内存、文件句柄和其他每个进程应有的状态。 线程的出现也并不是为了取代进程,而是对进程的功能作了扩展。进程可以支持多个线程,它们看似同时执行,但相互之间并不同步。一个进程中的多个线程共享相同的内存地址空间,这就意味着它们可以访问相同的变量和对象,而且它们从同一堆中分配对象。尽管这让线程之间共享信息变得更容易,但你必须小心,确保它们不会妨碍同一进程里的其他线程。 线程与进程相似,是一段完成某个特定功能的代码,是程序中单个顺序的流控制,但与进程不同的是,同类的多个线程是共享同一块内存空间和一组系统资源的,而线程本身的数据通常只有微处理器的寄存器数据,以及一个供程序执行时使用的堆栈。所以系统在产生一个线程,或者在各个线程之间切换时,负担要比进程小得多,正因如此,线程也被称为轻型进程(light-weight process)。一个进程中可以包含多个线程。 2、理解进程的独立空间的实验内容及步骤

浅谈我对计算机操作系统的认识

浅谈我对计算机操作系统的认识 朱雪松 L11214018 信息管理与信息系统 计算机的发展将趋向超高速、超小型、并行处理和智能化。自从1944年世界上第一台电子计算机诞生以来,计算机技术迅猛发展,传统计算机的性能受到挑战,开始从基本原理上寻找计算机发展的突破口,新型计算机的研发应运而生。未来量子、光子和分子计算机将具有感知、思考、判断、学习以及一定的自然语言能力,使计算机进人人工智能时代。这种新型计算机将推动新一轮计算技术革命,对人类社会的发展产生深远的影响。 一.什么是操作系统 操作系统(英语:Operating System,简称OS)是一管理电脑硬件与电脑软件资源的程序,同时也是计算机系统的核心与基石。操作系统身负诸如管理与配置内存、决定系统资源供需的优先次序、控制输入与输出设备、操作网上与管理文件系统等基本事务。操作系统也提供一个让用户与系统交互的操作接口。 操作系统的型态非常多样,不同机器安装的操作系统可从简单到复杂,可从手机的嵌入式系统到超级电脑的大型操作系统。许多操作系统制造者对它涵盖范畴的定义也不尽一致,例如有些操作系统集成了图形化用户界面,而有些仅使用文字接口,而将图形接口视为一种非必要的应用程序. 二.操作系统的历史 (一)无操作系统的计算机系统 1.人工操作方式 从第一台计算机诞生(1945年)到20世纪50年代中期的计算机,属于第一代计算机,这一时期的计算机操作采用人工操作的方式直接使用计算机硬件系统,这种方式的主要特征是用户独占主机,CPU等待人工操作。可见这种方式严重降低了计算机资源的利用率,造成了人机矛盾。 2.脱机输入/输出方式 为了解决人机矛盾及CPU和I/O设备之间速度不匹配的矛盾,20世纪50年代末出现了这种技术。该技术是事先将装有用户程序和数据的纸带装入纸带输入机,在一台外围机的控制下,把纸带上的数据输入磁带上。当CPU需要这些程序和数据时,再从磁带上将其高速的调入内存。 (二)单道批处理系统和多道批处理系统 1.单道批处理系统的处理过程及特征 上个世纪50年代中期发明了晶体管,为了充分利用晶体管,减少空闲时间,于是就出现了单道批处理,其自动处理过程是:首先,由监督程序将磁带上的第一个作业装入内存,并把运行控制权交给该作业。当该作业处理完时,把控制权还给监督程序,再由监督程序把磁盘上的第二个作业调入内存。其主要特征为自动,顺序,单道。其主要矛盾为主机和外设的矛盾。

计算机操作系统(第三版)-复习题答案

操作系统第一章复习题 一、选择题 1、下列选项中,( D )不是操作系统关心的主要问题。 A 管理计算机裸机 B 设计、提供用户程序与计算机硬件系统的界面。 C 管理计算机系统资源 D 高级程序设计语言的编译器 2、多道批处理系统的主要缺点是( C )。 A CPU利用率低 B 不能并发执行 C 缺少交互性 D 以上都不是。 3、在操作系统中,( D )部分属于微内核。 A 输入/输出井的管理程序,及作业调度软件。 B 用户命令解释程序 C 磁盘文件目录管理软件 D 进程通信服务例程 4、通常在分时系统中运行的作业称为( C )。 A 前台作业 B 后台作业 C 终端型作业 D 批量型作业 5、在下面的选项中,( A )不属于操作系统提供给用户的可用资源。 A 中断机制 B 处理机 C 存储器 D I/O 设备 6、操作系统在计算机系统中处于( B )的位置。 A 计算机硬件和软件之间 B 计算机硬件和用户之间 C 处理机和用户程序之间 D 外部设备和处理机之间 7、操作系统是对( C )进行管理的软件。 A 软件 B硬件 C计算机资源 D 应用程序 8、操作系统中采用多道程序设计技术提高了CPU和外部设备的( A )。 A 利用率 B 可靠性 C 稳定性 D 兼容性 9、操作系统提供给程序员的接口是( B )。 A 进程 B 系统调用 C 库函数 D B和C 10、所谓( B )是指将一个以上的作业放入内存,并且同时处于运行状态,这些作业共享处理机的时间和外围设备等其他资源。 A 多重处理 B 多道程序设计 C 实时处理 D 共行执行 11、实时系统必须在( C )内处理完来自外部的事件。 A 响应时间 B 周转时间 C 规定时间 D 调度时间 12、在操作系统中,并发性是指若干事件( C )发生。 A 在同一时刻 B 一定在不同时刻 C 在某一时间间隔 D 依次在不同时间间隔内 13、订购机票系统处理各个终端的服务请求,处理后通过终端回答用户,所以它是一个( D )。 A 分时系统 B 多道批处理系统 C 计算机网络 D实时信息处理系统 二、填空题 1、操作系统两个最基本的特征是(并发)和(共享),两者之间互为存在条件。 2、实时系统应具有的两个基本特征,它们是(及时性)和(高可靠性)。 3、允许多个用户以交互方式使用计算机的操作系统称为(分时操作系统);允许多个用户 将多个作业提交给计算机集中处理的操作系统称为(批处理操作系统);计算机系统能

认识Windows7系统教案

项目二使用Windows 7 操作系统为了使计算机系统的所有资源能协调一致地工作,必须要有一个软件来进行统一管理和调度,这种软件就是操作系统。Windows 7是美国Microsoft公司推出的新一代操作系统平台它继承了Windows XP的实用与Windows Vista的华丽,同时进行了一次大的升华。 本项目从基本概念、基本操作、文件管理、个性化设置和应用维护工具等几个方面介绍Windows 7系统的使用和操作方法。 任务一使用Windows 7操作系统 一、任务描述 对于刚刚购买电脑的初学者,首先需要学习操作系统的基本使用方法。本任务将展示在Windows 7操作系统,从启动操作系统、初步应用操作系统到最后退出系统的全过程。二、任务分析 要使用电脑并能初步应用,首先要学会操作系统的启动和关闭,并且有一定的顺序;要认识桌面图标和任务栏,了解Windows 7窗口的构成,学会窗口的多种操作方法;学会使用鼠标,了解不同鼠标样式代表的不同状态。 三、相关知识点 1.启动Windows 7 Windows 7的基本启动过程。 2.认识Windows 7的桌面 ⑴认识桌面图标 进入Windows 7系统后,整个屏幕显示如图2-1-1所示的桌面。与其它版本的Windows 类似,用户通常可以把一些常用的应用程序图标放置在桌面上,便于使用。 桌面图标是由一个形象的小图标和说明文字组成,图标作为它的标识,文字则表示它的名称或者功能。常用的图标有以下几个: ①“计算机”图标 “计算机”图标是计算机中所有资源的代表,双击图标就可以打开“计算机”窗口,可看到本计算机的所有硬件和软件资源信息。 ②“Administrator”图标 “Administrator”文件夹主要用来存放用户常规使用的文件信息。 ③“回收站”图标 这是Windows系统的“垃圾箱”。回收站是计算机硬盘中的一块特定区域,可以存放暂时被删除的文件或文件夹,若想恢复被删除的信息,可以再次把它们从“回收站”中捡回(还原)。但是,当文件或文件夹在回收站中被删除后,就不能再恢复了。 ④“网络”图标 通过它可以查看连入本地网络(邻近)的计算机,在条件允许的情况下,可以通过网上邻居连入本地网络中的其它计算机,从而达到资源互访的目的。 ⑤“Internet Explorer”图标 这是Windows系统中的浏览器,通过它用户可以方便地进入Internet浏览网页。

计算机操作系统(第四版)1-8章 课后答案(全)

第一章操作系统引论 1.设计现代OS的主要目标是什么?答:方便性,开放性,有效性,可扩充性 2.OS的作用可表现在哪几个方面?答:OS作为用户与计算机硬件系统之间的接口;OS作为计算机系统资的管理者;OS实现了对计算机资源的抽象。 3.为什么说操作系统实现了对计算机资源的抽象?答:OS首先在裸机上覆盖一层1/0设备管理软件,实现了对计算机硬件操作的第一层次抽象;在第一层软件上再覆盖文件管理软件,实现了对硬件资源操作的第二层次抽象。0s通过在计算机硬件上安装多层系统软件,增强了系统功能,隐藏了对硬件操作的细节,由它们共同实现了对计算机资源的抽象。 4·说明推动分时系统形成和发展的主要动力是什么?答:主要动力是提高资源利用率和系统吞吐里,为了满足用户对人一机交互的需求和共享主机。 5.何谓脱机I/O和联机I/O?答:脱机1/0是指事先将装有用户程序和数据的纸带或卡片装入纸带输入机或卡片机,在外围机的控制下,把纸带或一片上的数据或程序输入到殖带上。该方式下的输入输出由外围机控制完成,是在脱离主机的情况下进行的。而耽机1/0方式是指程序和数据的輸入输出都是在主机的直接控制下进行的。 6.试说明推动分时系统形成和发展的主要动力是什么?答:推动分时系统形成和发展的主要动力是更好地满足用户的需要。主要表现在:CPU的分时使用缩短了作业的平均周转时间;人机交互能力使用户能直接控制自己的作业;主机的共享使多用户能同时使用同一台计算机,独立地处理自己的作业。 7.实现分时系统的关键问题是什么?应如何解决?答:关键问题是当用户在自己的终端上键入命令时,系统应能及寸接收并及时处理该命令,在用户能接受的时采内将结果返回给用户。解决方法:针对及时接收问题,可以在系统中设路多路卡,健主机能同时接收用户从各个终端上轮入的数据;为每个终端配路缓冲区,暂存用户捷入的命令或教据。针对反时处理问题,应便所有的用户作业都直接进入内存,并且为每个作业分配一个时间片,允许作业只在自己的时间片内运行,这样在不长的时间内,能使每个作业都运行一次。 8.为什么要引入实时OS?答:实时操作系统是指系统能及时响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行。引入实时OS是为了满足应用的需求,熏好地满足实时控制领域和实时信息处涯领域的需要。 9.什么是硬实时任务和款实时任务?试举例说明。答:硬实时任务是指系统必须满足任务对截止时间的要求,否则可能出现难以预测的结是。举例来说,运载火箭的控制等。软实时任务是指它的截止时间并不严格,偶尔错过了任务的截止时间,对系统产生的影响不大。举例:网页内容的更新、火车售票系统。 10.试从交互性、及时性以及可靠性方面,将分时系统与实时系统进行比较。答:(1)及时性:实时信息处理系统对实时性的要求与分时系统类似,都是以人所能受的等待时间来确定;而实时控制系统的及时性,是以控制对象所要求的开始截止时间或完成截止时间来确定的,一般为秒级到毫秒级,甚至有的要低于100微妙。(2)交互性:实时信息处理系统具有交互性,但人与系统的交互仅限于访问系统中某些特定的专用服务程序。不像分时系统那样能向终端用户提供数据和资源共享等服务。(3)可靠性:分时系统也要求系统可靠,但相比之下,实时系统则要求系统具有高度的可靠性。因为任何差错都可能带未巨大的经济损失,甚至是灾难性后,,所以在实时系统中,往往都采取了

计算机操作系统(第三版-汤小丹等)课后习题答案(全)整理后

第一章操作系统引论 1.设计现代OS的主要目标是什么 答:(1)有效性(2)方便性(3)可扩充性(4)开放性 2.OS的作用可表现在哪几个方面 答:(1)OS作为用户与计算机硬件系统之间的接口;(2)OS作为计算机系统资源的管理者;(3)OS实现了对计算机资源的抽象。 3.为什么说OS实现了对计算机资源的抽象 答:OS首先在裸机上覆盖一层I/O设备管理软件,实现了对计算机硬件操作的第一层次抽象;在第一层软件上再覆盖文件管理软件,实现了对硬件资源操作的第二层次抽象。OS 通过在计算机硬件上安装多层系统软件,增强了系统功能,隐藏了对硬件操作的细节,由它们共同实现了对计算机资源的抽象。 4.试说明推动多道批处理系统形成和发展的主要动力是什么 答:主要动力来源于四个方面的社会需求与技术发展:(1)不断提高计算机资源的利用率;(2)方便用户;(3)器件的不断更新换代;(4)计算机体系结构的不断发展。 5.何谓脱机I/O和联机I/O 答:脱机I/O 是指事先将装有用户程序和数据的纸带或卡片装入纸带输入机或卡片机,在外围机的控制下,把纸带或卡片上的数据或程序输入到磁带上。该方式下的输入输出由外围机控制完成,是在脱离主机的情况下进行的。而联机I/O方式是指程序和数据的输入输出都是在主机的直接控制下进行的。 6.试说明推动分时系统形成和发展的主要动力是什么 答:推动分时系统形成和发展的主要动力是更好地满足用户的需要。主要表现在:CPU 的分时使用缩短了作业的平均周转时间;人机交互能力使用户能直接控制自己的作业;主机的共享使多用户能同时使用同一台计算机,独立地处理自己的作业。 7.实现分时系统的关键问题是什么应如何解决 答:关键问题是当用户在自己的终端上键入命令时,系统应能及时接收并及时处理该命令,在用户能接受的时延内将结果返回给用户。解决方法:针对及时接收问题,可以在系统中设置多路卡,使主机能同时接收用户从各个终端上输入的数据;为每个终端配置缓冲区,暂存用户键入的命令或数据。针对及时处理问题,应使所有的用户作业都直接进入内存,并且为每个作业分配一个时间片,允许作业只在自己的时间片内运行,这样在不长的时间内,能使每个作业都运行一次。

操作系统原理实验四

实验4 进程控制 1、实验目的 (1)通过对WindowsXP进行编程,来熟悉和了解系统。 (2)通过分析程序,来了解进程的创建、终止。 2、实验工具 (1)一台WindowsXP操作系统的计算机。 (2)计算机装有Microsoft Visual Studio C++6.0专业版或企业版。 3、预备知识 (3)·CreateProcess()调用:创建一个进程。 (4)·ExitProcess()调用:终止一个进程。 4、实验编程 (1)编程一利用CreateProcess()函数创建一个子进程并且装入画图程序(mspaint.exe)。阅读该程序,完成实验任务。源程序如下: # include < stdio.h > # include < windows.h > int main(VOID) ﹛STARTUPINFO si; PROCESS INFORMA TION pi; ZeroMemory(&si,sizeof(si)); Si.cb=sizeof(si); ZeroMemory(&pi,sizeof(pi)); if(!CreateProcess(NULL, “c: \ WINDOWS\system32\ mspaint.exe”, NULL, NULL, FALSE, 0, NULL, NULL, &si,&pi)) ﹛fprintf(stderr,”Creat Process Failed”); return—1; ﹜ WaitForSingleObject(pi.hProcess,INFINITE); Printf(“child Complete”); CloseHandle(pi.hProcess); CloseHandle(pi hThread); ﹜

计算机操作系统第四版试题及答案

操作系统期末考试(一) 一、单项选择题(在每小题的四个备选答案中,只有一个是正确的,将其号码写在题干的括号中。每小题2分,共20分) 1、文件系统的主要组成部分是() A、文件控制块及文件 B、I/O文件及块设备文件 C、系统文件及用户文件 D、文件及管理文件的软件 2、实现进程互斥可采用的方法() A、中断 B、查询 C、开锁和关锁 D、按键处理 3、某页式管理系统中,地址寄存器的低9位表示页内地址,则页面大小为() A、1024字节 B、512字节 C、1024K D、512K 4、串联文件适合于()存取 … A、直接 B、顺序 C、索引 D、随机 5、进程的同步与互斥是由于程序的()引起的 A、顺序执行 B、长短不同 C、信号量 D、并发执行 6、信号量的值() A、总是为正 B、总是为负 C、总是为0 D、可以为负整数 7、多道程序的实质是() A、程序的顺序执行 B、程序的并发执行 C、多个处理机同时执行 D、用户程序和系统程序交叉执行 8、虚拟存储器最基本的特征是() A、从逻辑上扩充内存容量 B、提高内存利用率 C、驻留性 D、固定性 ; 9、飞机定票系统是一个() A、实时系统 B、批处理系统 C、通用系统 D、分时系统 10、操作系统中,被调度和分派资源的基本单位,并可独立执行的实体是() A、线程 B、程序 C、进程 D、指令 二、名词解释(每小题3分,共15分) 1.死锁: 2.原子操作: 3.临界区: 4.虚拟存储器: 5.文件系统: ' 三、判断改错题(判断正误,并改正错误,每小题2分,共20分) 1、通道是通过通道程序来对I/O设备进行控制的。 () 2、请求页式管理系统中,既可以减少外零头,又可以减少内零头。 () 3、操作系统中系统调用越多,系统功能就越强,用户使用越复杂。 () 4、一个进程可以挂起自已,也可以激活自已。 () 5、虚拟存储器的最大容量是由磁盘空间决定的。 () 6、单级文件目录可以解决文件的重名问题。 () 7、进程调度只有一种方式:剥夺方式。 ()

计算机操作系统第三版复习资料

1,OS:操作系统,是配置在计算机硬件上的第一层软件,是对硬件的首次扩展。 2:OS的作用可表现在哪几方面? (1):OS作为用户与计算机硬件系统之间的接口 (2):OS作为计算机系统资源的管理者 (3):OS实现了对计算机资源的抽象(扩展机) 3:OS有几大特征?其最基本的特征是? 四大特征:并发,共享,虚拟,异步最基本为并发性,是其他的基础。 临界资源:在同一时刻,只能有一个进程对其访问的资源。 临界区:在每个进程中,访问临界资源的一段代码。 进程:一个具有一定独立功能的程序在一个数据集合上的一次动态执行过程。 线程:减少程序在并发执行时所付出的时间和空间开销。 PCB :记录用于描述进程情况及控制进程运行的全部信息。 4.PCB的主要内容,PCB是如何组织的? 内容:(1):进程描述信息(2):处理机状态信息(3):进程调度信息(4):进程控制信息 链表:同一状态的进程其PCB成一链表,多个状态对应多个不同的链表。 索引:同一状态的进程归入一个index表(由index指向PCB),多个状态对应多个不同的index表 5.进程与程序的区别 1) 进程是动态的,程序是静态的:程序是有序代码的集合;进程是程序的执行。 2) 进程是暂时的,程序是永久的:进程是一个状态变化的过程,程序可长久保存。 3) 进程与程序的组成不同:进程的组成包括程序、数据和进程控制块(即进程状态信息)。 4) 进程与程序的对应关系:通过多次执行,一个程序可对应多个进程;通过调用关系,一个进程可包括多个程序。6。进程与线程的区别 (1) 地址空间和其他资源(如打开文件):进程间相互独立,同一进程的各线程间共享--某进程内的线程在其他进程 不可见 (2) 通信:进程间通信IPC,线程间可以直接读写进程数据段(如全局变量)来进行通信--需要进程同步和互斥手 段的辅助,以保证数据的一致性 (3) 调度和切换:线程上下文切换比进程上下文切换要快得多。 7.为什么引入进程概念? 在多道程序环境下,程序的执行属于并发性,此时他们将失去封闭性,并具有间断性和不可再现性的特性。这决定了通常的程序是不能并发执行的,则程序结果不可再现。为使程序能并发执行,且为了对其进行控制,则引入了进程。8:试说明进程在三个基本状态之间转换的典型原因? (1)处于就绪态的进程,在调度程序位置分配处理机后。其即从就绪态转为执行态。 (2)对执行的进程,如果系统分配给它的时间片用完,而被暂停执行时,其由执行态转为就绪态。 (3)如果因发生某事件而使进程的执行受阻,使其无法继续执行,该进程有执行太转变为阻塞态 典型原因有:I/O请求、申请缓冲空间 9:同步机构应遵循哪些基本准则?为什么? (1)空闲让进;当无进程处于临界区时,表明临界资源处于空闲阶段,应允许一个请求进入临界区。 (2)忙则等待;当已经有进程进入临界区时表明临界资源正在被访问,则应该让其他的请求等待。 (3)有限等待;对要求访问临界区的进程,应保证其在有限时间内进入临界区,以免死等。 (4)让权等待;当进程不能进入自己的临界区时,应释放处理机,以免忙等。 10:为什么要在OS中引入线程? 引入线程是为了减少程序在并发执行时所付出的时间和空间开销,使OS有更好的并发性。 高级调度:又称作业调度、宏观调度,从用户工作流程的角度,一次提交的若干个流程,其中每个程序按照进程调度。时间上通常是分钟、小时或天。 低级调度:进程换线程,微观调度,从CPU资源的角度,执行的单位。时间上通常是毫秒。因为执行频繁,要求在实现时达到高效率。 中级调度:内外存交换,从存储器资源的角度,将进程的部分或全部换出到外存上,将当前所需部分换入到内存。 为什么引入中级调度? 为了提高内存利用率和系统吞吐量,其实现的就是存储系统中的对换功能。 6:在抢占调度方式中,抢占的原则是?

四川大学计算机操作系统第四实验报告

实验报告 (学生打印后提交) 实验名称:作业调度系统 实验时间: 2015 年 6 月 4 日 实验人员:________(姓名)_____(学号)______(年级) 实验目的: ?理解操作系统中调度的概念和调度算法。 ?学习Linux下进程控制以及进程之间通信的知识。 ?理解在操作系统中作业是如何被调度的,如何协调和控制各个作业对CPU的使用 实验环境: linux 实验步骤: 1. 1、调用vi编辑器修改job.h文件,为命名管道FIFO设置正确的路径,修改语句:#define FIFO "/home/student/SVRFIFO" 2. 修改scheduler.c文件,添加作业的打印信息,即修改函数do_stat,要求再输出作业名称、当 前优先级、默认优先级。 3. 在printf( “JID\tPID\tOWNER\tRUNTIME\tWAITTIME\tCREATTIME\t\tSTATE\n”);语句 中添加JOBNAME、CURPRI、DEFPRI。 4. 接下来的两个输出语句根据表头修改,注意printf语句的输出格式,输出的信息内容参照 jobinfo结构体。 5、用gcc分别编译连接作业调度程序、三个命令程序。 6、在一个控制台窗口中运行作业调度程序作为服务端。 7、提交一个运行时间超过100毫秒的作业(要求提供源程序),并编译连接。 8.再打开一个窗口登录服务器作为客户端,在其中运行作业控制命令(提交作业、删除作业、查看信息), 在服务端观察调度情况,分析所提交作业的执行情况。 实验陈述: 1、基础知识: ?说明进程与程序的区别:程序是静态的指令集合,不占用系统的运行资源,可以长久保存在 磁盘。进程是进程实体(程序、数据和进程控制块构成)的运行过程,是系统进行资源分配和 调度的一个独立单位。进程执行程序,但进程与程序之间不是一一对应的。通过多次运行,同一 程序可以对应多个进程;通过调用关系,一个进程可以包含多个程序。 ?说明进程与作业的区别:作业是用户一个事务处理过程中要求计算机系统所做工作 的集合,作业可以包含几个进程。 ?说明作业调度与进程调度的区别:作业调度是按照一定的原则从外存的作业后备队 列中选择作业调入内存,并为其分配资源,创建相应的进程,然后进入就绪队列。进 程调度是按照某种策略或方法从就绪队列中选择进程,将处理机分配给它。 2、实验知识 ?本实验作业有几种状态READY:作业准备就绪可以运行。RUNNING:作业正在运行DONE: 作业已经运行结束,可以退出。有这三种状态,但只用到前两种。 ?

我对操作系统的认识

我对操作系统的认识 最早听到操作系统这个名词是在中学的时候,但那个时候并不明白操作系统是什么东西,可以用来干什么。上大学后,拥有了自己的第一台电脑,开始慢慢了解了很多包括操作系统在内的计算机知识,加之自己学的是信息管理与信息系统专业, 也会接触到一些专业的计算机知识。 专业课本对操作系统的定义是,操作系统是管理计算机硬件资源,控制其他程序运行并为用户提供交互操作界面的系统软件的集合。它是计算机系统的关键组成部分,负责管理与配置内存、决定系统资源供需的优先次序、控制输入与输出设备、操作网络与管理文件系统等基本任务。 还记得初中上机时,每次打开电脑,屏幕都会闪过一个Windows 2000,虽然那时不知道这是什么东西。后来上高中有了Windows XP,现在想想,记忆中用得最多的操作系统就是XP了,直到今天虽然有了Windows 7,Windows 8也出来了,但我的电脑还是XP的。 1946年2月14日,世界上第一台现代电子计算机“ENIAC”,诞生于美国宾夕法尼大学,但那个时候还没有操作系统,人们想要操作计算机只能通过各种不同的操作按钮来控制计算机。之后随着计算机技术的不断发展出现了汇编语言,并将它的编译器内置到电脑中,操作人员通过带有孔的纸带将程序输入电脑进行编译。这些将语言内置的电脑只能由操作人员自己编写程序来运行,不利于设备、程序的共用。为了解决这种问题,就出现了操作系统,这样就很好实现 2了解程序的共用,以及对计算机硬件资源的管理,使人们可以从更高层次对电脑进操作,而不用关心其底层的运作。有记录以来历史上最早的计算机操作系统是GM-NAA I/O,它是1956年鲍勃.帕特里克(Bob Patrick)在美国通用汽车的系统监督程序(system monitor)的基础上,为美国通用汽车和北美航空公司在IBM 704机器上设计的基本输入输出系统。之后操作系统飞速发展,出现了各种各样的系统比较有名的如UNIX、Linux等。直到Windows 的出现,彻底颠覆了人们对操作系统的认识,它是由微软公司研发的,一直不断推出新版本,到今天世界上绝大多数电脑都装的是Windows操作系统。 我觉得,操作系统的出现使得我们操作电脑变得方便起来,而计算机也不只属于科学家和专业人员了,它真正的走到了每家每户,走到了每一个人的身边。可以说,操作系统的出现打破了人们与计算机之间的隔阂,可以让计算机更好的为我们的工作学习服务。从专业一点的角度来看,操作系统位于底层硬件与用户之间,是两者沟通的桥梁。用户可以通过操作系统的用户界面,输入命令。操作系统则对命令进行解释,驱动硬件设备,实现用户要求。操作系统是一个大型的软件系统,负责计算机的全部软件、硬件资源的管理,控制和协调发现活动,实现信息的存储和保护,为用户使用计算机系统提供方便的用户界面,从而使计算机系统实现高效率和高自动化。它有6个主要的功能。(1)处理机管理。操作系统处理 机管理模块的主要任务是确定对处理机的分配策略,实施对进程或线程的调度和管理。(2)存储管理。存储管理涉及系统另一个紧俏资源—内存,它一方面要为系统进程及各用户进程提供其运行所需要的内存空间,另一方面还要保证各用户进程之间互不影响,此外,还要保证用户进程不能破坏系统进程,提供内存保护。(3)设备管理。包括缓冲区管理、设备分配、设备驱动和设备无关性。(4)文件管理。操作系统的文件管理子系统是最接近用户的部分,它给用户提供一个方便、快捷、可以共享、同时又提供保护的对文件的使用环境。(5)网络管理。随着计算机网络功能的不断加强,网络的应用不断深入社会的各个角落,操作系统必须提供计算机与网络进行数据传输和网络安全防护的功能。(6)提供良好的用户

计算机操作系统(第四版)课后习题答案第二章

第二章 1. 什么是前趋图?为什么要引入前趋图? 答:前趋图(Precedence Graph)是一个有向无循环图,记为DAG(Directed Acyclic Graph),用于描述进程之间执行的前后关系。 2. 画出下面四条诧句的前趋图: S1=a:=x+y; S2=b:=z+1; S3=c:=a-b; S4=w:=c+1; 答:其前趋图为: 3. 为什么程序并发执行会产生间断性特征? 程序在并发执行时,由于它们共享系统资源,以及为完成同一项任务而相互合作,致使在这些并发执行的进程之间,形成了相互制约的关系,从而也就使得进程在执行期间出现间断性。 4. 程序并发执行时为什么会失去封闭性和可再现性? 因为程序并发执行时,是多个程序共享系统中的各种资源,因而这些资源的状态是由多个程序来改变,致使程序的运行失去了封闭性。而程序一旦失去了封闭性也会导致其再失去可再现性。 5. 在操作系统中为什么要引入进程概念?它会产生什么样的影响? 为了使程序在多道程序环境下能并发执行,并能对并发执行的程序加以控制和描述,从而在操作系统中引入了进程概念。影响: 使程序的并发执行得以实行。 6. 试从动态性,并发性和独立性上比较进程和程序? a. 动态性是进程最基本的特性,可表现为由创建而产生,由调度而执行,因得不到资源而暂停执行,以及由撤销而消亡,因而进程由一定的生命期;而程序只是一组有序指令的集合,是静态实体。 b. 并发性是进程的重要特征,同时也是OS的重要特征。引入进程的目的正是为了使其程序能和其它建立了进程的程序并发执行,而程序本身是不能并发执行的。 c. 独立性是指进程实体是一个能独立运行的基本单位,同时也是系统中独立获得资源和独立调度的基本单位。而对于未建立任何进程的程序,都不能作为一个独立的单位来运行。 7. 试说明PCB的作用?为什么说PCB是进程存在的唯一标志? a. PCB是进程实体的一部分,是操作系统中最重要的记录型数据结构。PCB中记录了操作系统所需的用于描述进程情况及控制进程运行所需的全部信息。因而它的作用是使一个在多道程序环境下不能独立运行的程序(含数据),成为一个能独立运行的基本单位,一个能和其它进程并发执行的进程。 b. 在进程的整个生命周期中,系统总是通过其PCB对进程进行控制,系统是根据进程的PCB而不是任何别的什么而感知到该进程的存在的,所以说,PCB是进程存在的唯一标志。 11.试说明进程在三个基本状态之间转换的典型原因。 答:(1)就绪状态→执行状态:进程分配到CPU资源(2)执行状态→就绪状态:时间片用完(3)执行状态→阻塞状态:I/O请求(4)阻塞状态→就绪状态:I/O完成 12.为什么要引入挂起状态?该状态有哪些性质? 答:引入挂起状态处于五种不同的需要: 终端用户需要,父进程需要,操作系统需要,对换需要和负荷调节需要。处于挂起状态的进程不能接收处理机调度。10.在进行进程切换时,所要保存的处理机状态信息有哪些?答:进行进程切换时,所要保存的处理机状态信息有:(1)进程当前暂存信息(2)下一指令地址信息(3)进程状态信息(4)过程和系统调用参数及调用地址信息。13.在进行进程切换时,所要保存的处理机状态信息有哪些? 答:进行进程切换时,所要保存的处理机状态信息有: (1)进程当前暂存信息 (2)下一指令地址信息 (3)进程状态信息 (4)过程和系统调用参数及调用地址信息。 14.试说明引起进程创建的主要事件。答:引起进程创建的主要事件有:用户登录、作业调度、提供服务、应用请求。 15.试说明引起进程被撤销的主要事件。答:引起进程被撤销的主要事件有:正常结束、异常结束(越界错误、保护错、非法指令、特权指令错、运行超时、等待超时、算术运算错、I/O 故障)、外界干预(操作员或操作系统干预、父进程请求、父进程终止)。 16.在创建一个进程时所要完成的主要工作是什么? 答:(1)OS 发现请求创建新进程事件后,调用进程创建原语Creat();(2)申请空白PCB;(3)为新进程分配资源;(4)初始化进程控制块;(5)将新进程插入就绪队列. 17.在撤销一个进程时所要完成的主要工作是什么? 答:(1)根据被终止进程标识符,从PCB 集中检索出进程PCB,读出该进程状态。(2)若被终止进程处于执行状态,立即终止该进程的执行,臵调度标志真,指示该进程被终止后重新调度。(3)若该进程还有子进程,应将所

相关主题
文本预览
相关文档 最新文档