操作系统原理

操作系统原理
操作系统原理

操作系统原理-学习指南

一、 名词解释

脱机处理DMA FCFS Buffer Pool 死锁作业周转时间

信号量系统调用PCB 时间片位示图线程

脱机处理:外设不与CPU直接连接,不受CPU控制儿处理。

DMA:直接内存存取控制器。

FCFS:先来先服务。

Buffer Pool :缓冲池。

死锁: 指多个进程因竞争资源二造成的一种僵局,若无外力的作用,这些进程将永远不能再向前推进。

作业周转时间:作业从开始,到作业完成并退出系统所经历的时间。

信号量:信号量是表示资源的实体,是一个与队列有关的整型变量, 其值仅能由 P,V 操作来改变。

系统调用: 由操作系统实现的所有系统调用所构成的集合即程序接口或应用编程接口(Application Programming Interface,API)。是应用程序同系统之间的接口。

PCB:进程控制块。

时间片:CPU分配给各个程序的时间,每个进程被分配一个时间段,称作它的时间片,即该进程允许运行的时间,使各个程序从表面上看是同时进行的。

位示图:它是利用一个向量来描述自由块使用情况的一张表。表中的每个元素表示一个盘块的使用情况,0表示该块为空闲块,1表示已分配。

线程: 是"进程"中某个单一顺序的控制流。也被称为轻量进程(lightweight processes)。

二、 填空题

1.产生死锁的原因主要是竞争资源和进程间推进次序非法。

2.一台计算机有10台磁带机被m个进程竞争,每个进程最多需要三台磁带机,

那么m为 4 时,系统没有死锁的危险。

3.实现SPOOL系统时必须在磁盘上辟出称为输入井和输出井 的专门区

域,以存放作业信息和作业执行结果。

4.虚拟存储器具有的主要特征为多次性、对换性和虚拟性。

5.按用途可以把文件分为系统文件、用户文件和库文件三类。

6.为文件分配外存空间时,常用的分配方法有连续分配、链接分配和索引分配

三类。

7.如果以下四个条件同时具备,就会发生死锁:互斥、可剥夺、非抢占、循

环等待。

8.常用的文件访问方式有两种: 顺序访问和直接访问。

9.进程是一个正在执行的程序,为了完成任务,进程需要某些资源,如处

理机、内存、文件和外设等。

10.CPU调度的任务是从进程就绪队列中选择一个进程,把CPU分配给它。

FCFS是一种最简单的算法,短作业优先调度算法提供了最短的平均等待时间。轮转法调度算法更适合分时系统,多队列反馈调度算法允许对不同类型的进程采用不同的调度算法。

11.采用交换技术获得好处是以牺牲时间 和空间为代价的。

12.实现虚拟存储器的理论基础是局部性 原理。

13.在操作系统中引入线程的主要目的是提高系统效率,提高系统资源利

用率,减少进程并发执行时所付出的时空开销,使 OS 具有更好的并发性。

14.在分区分配算法中, 首次适应算法倾向于优先利用内存中低地址 部分的空

闲分区。

15.在进程中,访问临界资源的代码成为临界区。

16.每个索引文件都必须有一张索引结点表,其中的地址登记项用来指出文

件在外存上的位置信息。

17.在一请求分页系统中,假如一个作业的页面走向为:4、3、2、1、4、3、5、

4、3、2、1、5,当分配给该作业的物理块数为4时(开始时没有装入页面),

采用LRU页面淘汰算法将产生8次缺页中断。

18.信号量被广泛用于三个目的是同步、互斥和描述前趋关系。

19.程序并发执行时的特征是间断性、失去了封闭性、不可再现性和独立性。

三、 判断题

1.隐式链接结构可以提高文件存储空间的利用率,但不适合文件的随机存取。T

2.设备的独立性是指每类设备有自己的设备驱动程序。F

3.虚拟设备是指允许用户使用比系统中具有的物理设备更多的设备。T

4.在内存中就绪等待接受调度的进程组成了等待队列。F

5.磁盘文件的访问时间与磁头的位置无关。F

6.系统调用的执行不能被中断。F

7.系统处于不安全状态必然导致死锁。F

8.文件系统中分配存储空间的基本单位不是记录。T

9.具有多道功能的操作系统一定是多用户操作系统。F

10.虚拟存储器是由操作系统提供的一个假想的特大存储器,它并不是实际的内

存,其大小可比内存空间大得多。T

11.批处理系统的(主要优点)是系统的吞吐量大、资源利用率高、系统的开销

较小。T

12.文件的逻辑结构是将文件分为记录式文件和索引文件。F

13.位示图可用于文件目录的查找。F

14.操作系统为用户提供的程序级接口也称为系统调用。T

15.在进程基本调度状态转换时,不会出现的情况是从就绪到运行。F

16.进程调度方法有剥夺方式和非剥夺方式。T

17.输入输出设备分配调度通常采用先请求先服务与时间片轮转法两种算法。F

18.批处理系统的主要缺点是设备利用率高。F

19.顺序文件适合建立在顺序存储设备上,而不适合建立在磁盘上。F

20.SPOOLing系统实现设备管理的虚拟技术,即:将独占设备改造为共享设备。

它由专门负责I/O的常驻内存进程以及输入、输出井组成。T

21.系统调用是操作系统与外界程序之间的接口,它属于核心程序。在层次结构

设计中,它最靠近硬件。F

22.为了提高计算机和外部设备的利用率,把多个程序同时放入内存,使CPU

与外设能并行工作,这种方法称为多道程序设计。T

23.一个单CPU的操作系统共有n个进程,系统中就绪进程的个数始终是n-1

个(不考虑进程状态过渡时的情况,也不考虑空转进程)。F

24.操作系统的不确定性是说在OS 控制下多个进程的执行顺序和每个进程的

周转时间是不确定的。T

25.在Unix 文件系统中,文件名和它的i节点号是一一对应的。T

26.缓冲区的设置与管理使CPU 与I/O 设备之间速度不匹配的情况得到改善,

但并不减少中断CPU 的次数。F

27.如果信号量的值是-4,则说明有4个进程在该信号量的等待队列中等待。T

28.CPU 调度算法不能影响进程使用CPU 和I/O 设备的时间,它只能影响进程

的等待时间。T

四、 选择题

1.文件系统中用( D )管理文件。

A、堆栈结构

B、指针

C、页表

D、目录

2.为了允许不同用户的文件具有相同的文件名,通常在文件系统中采用

( B )。

A、重名翻译

B、多级目录

C、约定

D、文件名

3.在多进程的并发系统中,肯定不会因竞争( C )而产生死锁。

A、打印机

B、磁带机

C、CPU

D、 磁盘

4.一种既有利于短小作业又兼顾到长作业的作业调度算法是( C )。

A、先来先服务

B、轮转

C、最高响应比优先

D、均衡调度

5.两个进程合作完成一个任务。在并发执行中,一个进程要等待其合作伙伴发

来消息,或者建立某个条件后再向前执行,这种制约性合作关系被称为进程的( B )。

A、互斥

B、同步

C、调度

D、伙伴

6.当每类资源只有一个个体时,下列说法中不正确的是( C )。

A、有环必死锁

B、死锁必有环

C、有环不一定死锁

D、被锁者一定全在环中

7.数据文件存放在到存储介质上时,采用的逻辑组织形式是与( A )有关

的。

A、文件逻辑结构

B、存储介质特性

C、主存储器管理方式

D、分配外设方式

8.在单处理器的多进程系统中,进程什么时候占用处理器和能占用多长时间,

取决于( B )。

A、进程相应的程序段的长度

B、进程自身和进程调度策略

C、进程总共需要运行时间多少

D、进程完成什么功能

9.用户程序中的输入、输出操作实际上是由( B )完成。

A、程序设计语言

B、操作系统

C、编译系统

D、标准库程序

10.进程调度的对象和任务分别是( C )。

A、作业,从就绪队列中按一定的调度策略选择一个进程占用CPU

B、进程,从后备作业队列中按调度策略选择一个作业占用CPU

C、进程,从就绪队列中按一定的调度策略选择一个进程占用CPU

D、作业,从后备作业队列中调度策略选择一个作业占用CPU

11.支持程序浮动的地址转换机制是( A )

A、动态重定位

B、段式地址转换

C、页式地址转换

D、静态重定位

12.在可变分区存储管理中,最优适应分配算法要求对空闲区表项按( C )进

行排列。

A、地址从大到小

B、地址从小到大

C、尺寸从小到大

D、尺寸从大到小

13.设计批处理多道系统时,首先要考虑的是( B )。

A、灵活性和可适应性

B、系统效率和吞吐量

C、交互性和响应时间

D、实时性和可靠性

14.当进程因时间片用完而让出处理机时,该进程应转变为( B )状态。

A、等待

B、就绪

C、运行

D、完成

15.操作系统是一组(C )。

A. 文件管理程序

B.中断处理程序

C.资源管理程序

D.设备管理程序

16.为了描述进程的动态变化过程,采用了一个与进程相联系的( C )数据结

构,根据它而感知进程的存在。

A.进程状态字

B. 进程优先数

C.进程控制块

D. 进程起始地址

17.一个进程被唤醒意味着(B )。

A. 该进程重新占有了CPU

B.进程状态变为就绪

C. 它的优先权变为最大

D.其PCB移至就绪队列的队首

18.进程间的同步与互斥,分别表示了各进程间的(B )。

A. 调度关系与同步算法

B.协调与竞争

C.不同状态

D. 动态性与独立性

19.系统出现死锁的原因是(B )。

A. 计算机系统发生了重大故障

B. 有多个封锁的进程同时存在

C. 若干进程因竞争资源而无休止地等待着,不释放已占有的资源

D. 资源数大大少于进程数,或进程同时申请的资源数大大超过资源总数

20.进程P1使用资源情况:申请资源S1,申请资源S2,释放资源S1;进程P2

使用资源情况:申请资源S2,申请资源S1,释放资源S2,系统并发执行进程P1,P2,系统将(B )。

A. 必定产生死锁

B.可能产生死锁

C.不会产生死锁

D.以上说法都不对

21.关于操作系统的叙述 D 是不正确的。

(A)管理资源的程序(B)管理用户程序执行的程序

(C)能使系统资源提高效率的程序(D)能方便用户编程的程序

22.设计多道批处理系统时,首先要考虑的是 C 。

(A)灵活性和可适应性(B)交互性和响应时间

(C)系统效率和吞吐量(D)实时性和可靠性

23.当进程调度采用最高优先级调度算法时,从保证系统效率的角度来看,应提

高 B 进程的优先级。

(A)以计算为主的(B)在就绪队列中等待时间长的

(C)以I/O为主的(D)连续占用处理器时间长的

24.进程从运行状态进入就绪状态的原因可能是 A 。

(A)时间片用完(B)被选中占有CPU

(C)等待某一事件(D)等待的事件已经发生

25.作业进入内存后,则所属该作业的进程初始时处于 A 状态。

(A)就绪(B)运行(C)挂起(D)阻塞

26.进程控制块是描述进程状态和特性的数据结构,一个进程 A 。

(A)只能有惟一的进程控制块(B)可以有多个进程控制块(C)可以和其他进程共用一个进程控制块(D)可以没有进程控制块27.实时系统中的进程调度,通常采用 B 算法。

(A)高响应比优先(B)抢占式的优先数高者优先(C)时间片轮转(D)短作业优先

28.计算机系统中同时存在五个进程,处于阻塞状态的进程最多可有 C 个。

(A)A (B)4 (C)5 (D)0

29.设某类资源有5个,由3个进程共享,每个进程最多可申请 B 个资源

而使系统不会死锁。

(A)1 (B)2 (C)3 (D)4

30.可重定位分区分配的目的为 C 。

(A)回收空白区方便(B)便于多作业共享内存

(C)解决碎片问题(D)便于用户干预

31.在以下的存储管理方案中,能扩充主存容量的是 C 。

(A)固定式分区分配(B)可变式分区分配

(C)分页虚拟存储管理(D)基本页式存储管理

32.为实现设备分配,应为每一类设备配置一张 C 。

(A)设备分配表(B)逻辑设备表(C)设备控制表(D)设备开关表33.如果允许不同用户的文件可以具有相同的文件名,通常采用 D 来保

证按名存取的安全。

(A)重名翻译机构(B)建立索引表

(C)建立指针(D)多级目录结构

34.位示图法可用于 C 。

(A)文件目录的查找(B)分页式存储管理中主存空闲块的分配和回收(C)磁盘空闲盘块的分配和回收(D)页式虚拟存储管理中的页面置换35.对记录式文件,操作系统为用户存取文件信息的最小单位是 C 。

(A)字符(B)数据项(C)记录(D)文件

五、 简答题

1.画出具有快表的分页系统的地址变换图。

答:

2.简述避免死锁的银行家算法中的安全检测算法的思想。

答:设置两个向量:

Free:是一个纵向量,表示系统空闲的各类资源数

Finish:是一个纵向量,表示进程能否得到全部资源使之运行完成执行安全算法开始时:Free = Available,Finish[i]:=false(i=1,2,…,n)

(1)从进程集中找一个能满足下述条件的进程Pi

①Finish[i] = false(未定) ② Need[i] <= Free (资源够分)

(2)当Pi获得资源后,认为它完成,回收资源:

Free = Free + Allocation[i] ;Finish[i] = true ;

Go to step(1);

若Finish[1…n]=true,则系统是安全的,可以实施分配,否则系统不安全,撤销分配。

3.简述引入虚存的原因。

答:基本存储管理方法都是基于一个基本要求:执行指令必须在物理内存中。满足这一要求的方法是将作业的所有程序和数据都装入内存后才能运行。这样就限制了作业的大小不能超出主存的可用空间,否则,这个作业是无法运行的。而且即使有些大作业比主存小,但由于多道程序设计环境下内存被多个进程同时使用,所以大作业还是很难得到足够的内存空间。引入虚存就可以解决小主存能够运行大作业。一个作业在运行之前,没有必要把全部作业装入内存,而仅将那些当前要运行的那部分页面或段,先装入内存便可启动运行,其余部分暂时留在磁盘上,程序在运行时如果用到时再装入。这样,便可使一个大的用户程序在较小的内存空间中运行,也可使内存中同时装入更多的进程并发执行。

4.画出批处理系统作业和进程的状态和变迁图,说明作业调度,进程调度在每种

状态变迁中的功能。

作业调度功能:作业调度程序负责作业从"后备状态"到"执行状态"以及从"执 行状态"到"完成状态"的转换。作业调度程序为作业分配的是一台虚拟的逻辑处理机。 通常作业调度程序具有以下功能:

①记录系统中各个作业的情况,系统为每个作业建立一个作业控制块。

②按照某种调度算法从后备作业队列中挑选作业。调度算法的好坏直接关系到

系统的性能。调度时可以选择对资源需求不同的作业进行合理搭配,使得

系统中各部分资源得到均衡利用。

③为选中的作业分配内存和外设等资源。作业调度程序在挑选作业进程中要调

用存储管理程序和设备管理程序中的某些功能。为选中的作业建立相应的进程。

④作业结束后进行善后处理工作。如输出必要的信息,收回该作业所占有的全

部资源,撤消该作业相关的全部进程和该作业的 JCB。 进程调度功能:进

程调度主要任务是实现进程从"就绪状态"到"运行状态"的转变。它按照确定的进程调度算法从就绪队列中选择一个进程,让它占有 CPU 运行。进程

调度程序为作业分配的是一台真实的物理处理机。

5.请用信号量实现下图所示的前趋关系。

答:Var a,b,c,d,e,f:semaphore:=0,0,0,0,0,0;

Begin

Parbegin

Begin S1;signal(a);sigan(b);signal(c);end; 2分

Begin wait(a);S2;signal(d);end; 2分

Begin wait(c);S3;signal(e);end; 2分

Begin wait(d);S4;signal(f);end; 2分

Begin wait(b);wait(e);wait(f);S5;end; 2分

parend

end

6.在单处理机环境下,进程间有哪几种通信方式,是如何实现的?

答:作业调度:从一批后备作业中选择一个或几个作业,给它们分配资源,建立进程,挂入就绪队列。执行完后,回收资源。

进程调度:从就绪进程队列中根据某个策略选取一个进程,使之占用CPU。

交换调度:按照给定的原则和策略,将外存交换区中的进程调入内存,把内存中的非执行进程交换到外存交换区中。

7.进程的基本状态有哪些?这些状态之间是如何转换的?

答:进程的基本状态有:就绪,阻塞,执行三种。

就绪到执行:进程调度

执行到就绪:时间片完

执行到阻塞:I/O请求或等待事件发生

阻塞到就绪:I/O完成或事件已发生

8.什么是快表?它在地址转换中起什么作用?

答:快表是一个高速、具有并行查询能力的联想存储器,用于存放正运行的进程的当前页号和块号,或者段号和段起始地址。

加入快表后,在地址转换时,首先在快表中查找,若找到就直接进行地址转换;未找到,则在主存页表继续查找,并把查到的页号和块号放入联想存储器中。快表的命中率很高,有效地提高了地址转换的速度。

六、 综合题

1.设系统中有三种类型的资源(A,B,C)和五个进程(P1,P2,P3,P4,P5),

A资源的数量17,B资源的数量为5,C资源的数量为20。在T0时刻系统状态如下表所示。系统采用银行家算法来避免死锁。请回答下列问题:

(1) T0时刻是否为安全状态?若是,请给出安全序列。

(2) 若进程P4请求资源(2,0,1),能否实现资源分配?为什么?

(3) 在(2)的基础上,若进程P1请求资源(0,2,0),能否实现资源分配?

为什么?

T0时刻系统状态

进程 最大资源需求量 已分配资源量 系统剩余资源数量

A B C A B C A B C

P1 5 5 9 2 1 2 2 3 3

P2 5 3 6 4 0 2

P3 4 0 11 4 0 5

P4 4 2 5 2 0 4

P5 4 2 4 3 1 4

答:

(1)T0时刻为安全状态。其中的一个安全序列为(P4,P5,P3,P2,P1) (其他可能的安全序列有:(P4,P5,X,X,X),(P4,P2,X,X,X),(P4,P3,X,X,X),(P5,X,X,X,X))

(2)可以为P4分配资源,因为分配后的状态还是安全的,其安全序列的分析如下表:

WORK NEED ALLOCATION 新WORK FINISH

2,3,3 分配给P4:(2,0,1) 0,3,2

P4 0,3,2 0,2,0 4,0,5 4,3,7 True

P5 4,3,7 1,1,0 3,1,4 7,4,11 True

P1 7,4,11 3,4,7 2,1,2 9,5,13 True

P2 9,5,13 1,3,4 4,0,2 13,5,15 True

P3 13,5,15 0,0,6 4,0,5 17,5,20 True (3)进程P1再请求资源(0,2,0),则不能为之分配资源。因为分配资源后,

不存在安全序列,其分析如下表:

WORK NEED ALLOCATION 新WORK FINISH

0,3,2 分配给P1:(0,2,0) 0,1,2

P4 0,2,0 此时,WORK不能满足任何一

个进程的请求使之运行结束,

即进入了不安全状态。 False

P5 1,1,0 False

P1 3,2,7 False

P2 1,3,4 False

P3 0,0,6 False 2.有三个并发进程有三个并发进程、M、P,它们共享一个缓冲区。R负责从

输入设备读信息,每读一个记录后,把它存放在缓冲区,M在缓冲区加工读入的记录,P 把加工后的记录打印输出,读入的记录经加工输出后,缓冲区中又可存放下一个记录。请用信号量的P、V操作为同步机构写出他们并发执行时能正确工作的程序。

答:三个进程共用一个缓冲区,他们必须同步工作,可定义三个信号量:

S1:表示是否可把读人的记录放到缓冲区,初始值为1。

S2:表示是否可对缓冲区中的记录加工,初始值为0。

S3:表示记录是否加工好,可以输出,初始值也为0。

三个进程可如下设计:

cobegin

process R

begin

L1:读记录;

P(S1);

记录存入缓冲区;

V(S2);

goto L1;

end;

process M

begin

L2:P(S2);

加工记录;

V(S3);

goto L2;

end;

process P

begin

L3:P(S3);

输出加工后的记录;

V(S1);

goto L3;

end;

coend;

3.设正在处理器上执行的一个进程的页表如下表所示, 表中的虚页号和物理块

号是十进制数,起始页号(块号)均为0。所有的地址均是存储器字节地址。

页的大小为1024 字节。

(1)详述在设有快表的请求分页存储管理系统中,一个虚地址转换成物理内存地址的过程。

(2)下列十进制虚地址对应于什么物理地址:5579,2232 进程的页表

虚页号0 1 2 3 4 5 状态位 1 1 0 1 0 1 访问位 1 1 0 0 0 0 修改位0 1 0 0 0 1 物理块号4 7 2 0

注: 当某页被访问时,其访问位置1。

答:1、

①判断是否越界,若是,则中断,否则,继续。

②查找快表,若找着页表项,则修改访问位等,形成物理地址,结束。否则, 继

续。

③查找页表,若找着页表项,则修改访问位等,形成物理地址,将该页表项放入

快表中,结束。否则,产成缺页中断,继续。

④若内存不满,则将找着的页从外存调入内存。否则,置换一页出内存,然后将

找着 的页从外存调入内存

⑤修改页表

2、十进制虚地址 5579 对应(5,459) ,由于虚页号 5 对应 0 块,所以虚地

址 5579 的物理 地址是 459。 十进制虚地址 2232 对应(2,184) ,虚页号为 2,对应的页不在内存中,故发出缺页中断。

4.假定一个磁盘有200个柱面(编号0-199) ,磁盘请求队列由对如下柱面的请

求序列构成:50, 60, 30, 18, 90, 165, 150, 38, 12, 190。已知磁头当前位于95 号柱面,移动方向为向内。

(1) 如果系统采用SSTF 算法进行调度, 那么系统处理完上述所有的磁盘请

求所需的寻道距离是多少?

(2) 如果系统采用SCAN 算法进行调度,那么系统处理完上述所有的磁盘请

求所需的寻道距离是多少?

答:

5.设有三道作业,它们的提交时间及执行时间由下表给出:

作业号 提交时间 执行时间

1 8.5 2.0

2 9.2 1.6

3 9.

4 0.5

试计算在单道程序环境下,采用先来先服务调度算法和最短作业优先调度算法时的平均周转时间 (时间单位:小时,以十进制进行计算;要求写出计算过程) 答:

FIFO:

2 3 2 1 5 2 4 5 3 2 5 2

第1页 2 2 2 5 5 5 3 3 3

第2页 3 3 3 2 2 2 5 5

第3页 1 1 1 4 4 4 2

缺页中断次数= 6

LUR:

2 3 2 1 5 2 4 5 3 2 5 2

第1页 2 2 2 2 5 5 5 3

第2页 3 3 5 2 3 3 5

第3页 1 1 4 4 2 2

缺页中断次数= 5

6.在一个请求分页系统中,有一个长度为 5 页的进程,假如系统为它分配 3

个物理块 ,并且此进程的页面走向为 2,3,2,1,5,2,4,5,3,2,5,2。试用 FIFO 和 LRU 两种算法分别计算出程序访问过程中所发生的缺页次数。

答:

FCFS: 作业号提交时间执行时间开始时间完成时间周转时间

1 8.5 2.0 8.5 10.5 2.0

2 9.2 1.6 10.5 12.1 2.9

3 9.

4 0.

5 12.1 12.

6 3.2

平均周转时间=(2.0+2.9+3.2)/3=2.7(小时)

SJF: 作业号提交时间执行时间开始时间完成时间周转时间

1 8.5 2.0 8.5 10.5 2.0

2 9.2 1.6 11.0 12.6 3.4

3 9.

4 0.

5 10.5 11.0 1.6

平均周转时间=(2.0+3.4+1.6)/3=2.3(小时)

1.名词解释

脱机处理:外设不与CPU直接连接,不受CPU控制儿处理。

DMA:直接内存存取控制器。

FCFS:先来先服务。

Buffer Pool :缓冲池。

死锁: 指多个进程因竞争资源二造成的一种僵局,若无外力的作用,这些进程将永远不能再向前推进。

作业周转时间:作业从开始,到作业完成并退出系统所经历的时间。

信号量:信号量是表示资源的实体,是一个与队列有关的整型变量, 其值仅能由 P,V 操作来改变。

系统调用: 由操作系统实现的所有系统调用所构成的集合即程序接口或应用编程接口(Application Programming Interface,API)。是应用程序同系统之间的接口。

PCB:进程控制块。

时间片:CPU分配给各个程序的时间,每个进程被分配一个时间段,称作它的时间片,即该进程允许运行的时间,使各个程序从表面上看是同时进行的。

位示图:它是利用一个向量来描述自由块使用情况的一张表。表中的每个元素表示一个盘块的使用情况,0表示该块为空闲块,1表示已分配。

线程: 是"进程"中某个单一顺序的控制流。也被称为轻量进程(lightweight processes)。

2.填空题

1、竞争资源、进程间推进次序非法

2、 4

3、输入井、输出井

4、多次性、对换性

5、用户文件、库文件

6、连续分配、链接分配、索引分配

7、可剥夺、循环等待

8、顺序、直接

9、执行

10、进程就绪、短作业优先、轮转法、多队列反馈调度算法

11、时间 、 空间

12、局部性

13、提高系统效率,提高系统资源利用率,减少进程并发执行时所付

出的时空开销,使 OS 具有更好的并发性

14、低地址

15、临界资源

16、索引结点

17、8

18、同步互斥

19、间断性失去了封闭性不可再现性

3.判断题

29.T

30.F

31.T

32.F

33.F

34.F

35.F

36.T

37.F

38.T

39.T

40.F

41.F

42.T

43.F

44.T

45.F

46.F

47.F

48.T

49.F

50.T

51.F

52.T

53.T

54.F

55.T

56.T

4.选择题

36.D

37.B

38.C

39.C

40.B

41.C

42.A

43.B

44.B

45.C

46.A

47.C

48.B

49.B

50.C

51.C

52.B

53.B

54.B

55.B

56.D

57.C

58.B

59.A

60.A

61.A

62.B

63.C

64.B

65.C

66.C

67.C

68.D

69.C

70.C 5.简答题

9.画出具有快表的分页系统的地址变换图。

答:

10.简述避免死锁的银行家算法中的安全检测算法的思想。

答:设置两个向量:

Free:是一个纵向量,表示系统空闲的各类资源数

Finish:是一个纵向量,表示进程能否得到全部资源使之运行完成执行安全算法开始时:Free = Available,Finish[i]:=false(i=1,2,…,n)

(1)从进程集中找一个能满足下述条件的进程Pi

②Finish[i] = false(未定) ② Need[i] <= Free (资源够分)

(2)当Pi获得资源后,认为它完成,回收资源:

Free = Free + Allocation[i] ;Finish[i] = true ;

Go to step(1);

若Finish[1…n]=true,则系统是安全的,可以实施分配,否则系统不安全,撤销分配。

11.简述引入虚存的原因。

答:基本存储管理方法都是基于一个基本要求:执行指令必须在物理内存

中。满足这一要求的方法是将作业的所有程序和数据都装入内存后才能运行。这样就限制了作业的大小不能超出主存的可用空间,否则,这个作业是无法运行的。而且即使有些大作业比主存小,但由于多道程序设计环境下内存被多个进程同时使用,所以大作业还是很难得到足够的内存空间。引入虚存就可以解决小主存能够运行大作业。一个作业在运行之前,没有必要把全部作业装入内存,而仅将那些当前要运行的那部分页面或段,先装入内存便可启动运行,其余部分暂时留在磁盘上,程序在运行时如果用到时再装入。这样,便可使一个大的用户程序在较小的内存空间中运行,也可使内存中同时装入更多的进程并发执行。

12.画出批处理系统作业和进程的状态和变迁图,说明作业调度,进程调度在每种

状态变迁中的功能。

作业调度功能:作业调度程序负责作业从"后备状态"到"执行状态"以及从"执 行状态"到"完成状态"的转换。作业调度程序为作业分配的是一台虚拟的逻辑处理机。 通常作业调度程序具有以下功能:

⑤记录系统中各个作业的情况,系统为每个作业建立一个作业控制块。

⑥按照某种调度算法从后备作业队列中挑选作业。调度算法的好坏直接关系到

系统的性能。调度时可以选择对资源需求不同的作业进行合理搭配,使得

系统中各部分资源得到均衡利用。

⑦为选中的作业分配内存和外设等资源。作业调度程序在挑选作业进程中要调

专科《操作系统原理及应用》_试卷_答案

专科《操作系统原理及应用》 一、 (共 题 共 ?分) 在手工操作阶段,存在的一个严重的问题是()。 ( 分) ??计算机的速度不快 ??计算机的内存容量不大 ?外部设备太少 ??用户使用不方便 标准答案: ? 下列选项()不是操作系统关心的。 ( 分) ??管理计算机硬件 ??提供用户操作的界面 ?管理计算机资源 ??高级程序设计语言的编译 标准答案: 批处理最主要的一个缺点是()。 ( 分) ??用户无法与程序交互 ??一次只能执行一个程序 ?没有实现并发处理 ?????的利用率较低 标准答案:? 当 ??执行用户程序的代码时,处理器处于()。 ( 分) ??自由态 ??用户态 ??核心态 ??就绪态 标准答案: ? 根据中断信号的来源,()引起的中断称为外中断。 ( 分) ?????完成 ??内存越界 ?用户态下执行特权指令 ??数据传输出错 标准答案:? ? 作业的处理一般分为多个作业步,连接成功后,下一步的工作是()。 ( 分) ??运行 ??编辑 ??检测 ??连接 标准答案:? 操作系统向用户提供了二种使用计算机的接口,其中一个是()。 ( 分) ??函数库 ??子程序调用 ??中断机制 ??系统调用 标准答案: 并发执行的一个特点是()。 ( 分) ??结果可再现 ??程序与计算不再一一对应 ?计算结果会出错 ??不会顺序执行 标准答案:

进程的基本状态有三种,其中一个是()。 ( 分) ??开始态 ??就绪态 ??唤醒态 ??结束态 标准答案: ? 对进程进行控制的原语,完成的功能包括()。 ( 分) ??执行就绪的进程 ??唤醒等待的进程 ?将运行程序就绪 ??淘汰出错的进程 标准答案: ? 资源描述器中应包含的内容有()。 ( 分) ??分配标志 ??等待队列的指针 ?唤醒程序的地址 ??资源分配程序入口地址 标准答案: ? 死锁四个必要条件中,不能破坏的是()。 ( 分) ??互斥条件 ??部分分配 ??不剥夺条件 ??等待条件 标准答案:? ? 批处理系统中,作业的状态可分为多种,其中一种为()。 ( 分)??提交 ??创建 ??就绪 ??等待 标准答案:? ? 评价作业调度的性能时,衡量用户满意度的准确指标应该是()。 ( 分) ??周转时间 ??带权周转时间 ?平均周转时间 ??平均带权周转时间 标准答案: ? 在进程访问内存时完成的地址变换,称为()。 ( 分) ??局部地址映射 ??全局地址映射 ?动态地址映射 ??静态地址映射 标准答案: ? 当分区采用首次适应算法时,自由主存队列必须按()排序。 ( 分) ??空闲区的首址递增 ??空闲区的首址递减 ?空闲区的大小递增 ??空闲区的大小递减 标准答案:? ? 根据对设备占用方式的不同,设备分配技术中的一种是()。 ( 分) ??动态分配 ??静态分配 ??永久分配 ??虚拟分配

计算机操作系统原理课程设计

上海电力学院 课程设计报告 课程名称:操作系统原理 题目名称:采用可变分区存储管理,模拟主存空间的分配和回收 姓名: xxx 学号: xxx 班级: 2013054 同组姓名: xxx 课程设计时间: 2015.7.6~2015.7.10 评语: 成绩:

课程设计题目 一、设计内容及要求 可变分区存储管理模拟 设计内容:编写程序模拟实现可变分区存储管理。 具体要求: 编写程序模拟实现可变分区存储管理,实现存储管理的基本功能,包括内存的分配、内存的回收、地址变换等。 输入:1、输入新进程名称及使用内存的大小(可创建多个进程); 2、撤销某个指定的进程; 3、某个进程的逻辑地址; 输出:显示每次创建进程或者撤销进程后内存使用的状况,包括每一个进程占据的内存的位置和大小; 计算并输出给定逻辑地址对应的物理地址。 必须分别使用以下分配算法完成模拟: 1、首次适应算法; 2、最佳适应算法; 3、最差适应算法; 小组分工: 程序设计讨论: 程序主体设计: 程序调试及修改: 实验报告设计: 总结: (要求注明小组分工情况) 二、详细设计 1)原理概述 对于可变分区存储管理的内存分配与回收,主要为设计以下几个部分: 1、设计动态输入空闲分区表的程序 2、设计内存分配的程序 3、设计内存回收的程序 首次适应算法: FF算法要求空闲分区表或空闲分区链以地址递增的次序链接。在分配内时,从链首开始查找,直至找到一个大小能满足要求分区为止;然后再按照作业大小,从该分区中划一块内存空间分配给请求者,余下的空闲分区仍留在空闲链中。如从链首直至链尾都不能找到一个能满足要求的分区,则此次分配失败,返回 最佳适应算法: BF算法是指每次为作业分配内存,总是把满足要求、又是最小的空闲分区分配给作业,避免“大材小用”。为了加速寻找,该算法要求所有的空闲分区按其容量以从小到大的顺序形成一空闲分区链。这样,第一次找到能满足要求的空闲区,

操作系统原理知识点总结

第一章绪论 1、操作系统是一组控制和管理计算机硬件和软 件资源、合理的对各类作业进行调度以方便用户的程序集合 探2、操作系统的目标:方便性、有效性、可扩 展性、开发性 探3、操作系统的作用:作为计算机硬件和用户 间的接口、作为计算机系统资源的管理者、作为 扩充机器 4、单批道处理系统:作业处理成批进行,内存中始终保持一道作业(自动性、顺序性、单道性) 5、多批道处理系统:系统中同时驻留多个作业,优点:提高CPU利用率、提高I/O设备和内存利用率、提高系统吞吐量(多道性、无序性、调度性) 6、分时技术特性:多路性、交互性、独立性、 及时性,目标:对用户响应的及时性 7、实时系统:及时响应外部请求,在规定时间 内完成事件处理,任务类型:周期性、非周期性或硬实时任务、软实时任务 ※&操作系统基本特性:并发、共享、虚拟、 异步性 并行是指两或多个事件在同一时刻发生。 并发是两或多个事件在同一时间间隔内发生。

互斥共享:一段时间只允许一个进程访问该资源 同时访问:微观上仍是互斥的 虚拟是指通过某种技术把一个物理实体变为若干个逻辑上的对应物。 异步是指运行进度不可预知。 共享性和并发性是操作系统两个最基本的特征探9、操作系统主要功能:处理机管理、存储器管理、设备管理、文件管理、用户管理 第二章进程的描述和控制 探1程序顺序执行特征:顺序性、封闭性、可再现性探2、程序并发执行特征:间断性、失去封闭性、不可再现性 3、前趋图:有向无循环图,用于描述进程之间执行的前后关系 表示方式: (1)p1--->p2 (2) --->={(p1,p2)| pl 必须在p2 开始前完成} 节点表示:一条语句,一个程序段,一进程。 (详见书P32)

操作系统课程设计报告

上海电力学院 计算机操作系统原理 课程设计报告 题目名称:编写程序模拟虚拟存储器管理 姓名:杜志豪.学号: 班级: 2012053班 . 同组姓名:孙嘉轶 课程设计时间:—— 评语: 成绩: 目录 一、设计内容及要求 (4) 1. 1 设计题目 (4) 1.2 使用算法分析: (4)

1. FIFO算法(先进先出淘汰算法) (4) 1. LRU算法(最久未使用淘汰算法) (5) 1. OPT算法(最佳淘汰算法) (5) 分工情况 (5) 二、详细设计 (6) 原理概述 (6) 主要数据结构(主要代码) (6) 算法流程图 (9) 主流程图 (9) Optimal算法流程图 (10) FIFO算法流程图 (10) LRU算法流程图 (11) .1源程序文件名 (11) . 2执行文件名 (11) 三、实验结果与分析 (11) Optimal页面置换算法结果与分析 (11) FIFO页面置换算法结果与分析 (16) LRU页面置换算法结果与分析 (20) 四、设计创新点 (24) 五、设计与总结 (27)

六、代码附录 (27) 课程设计题目 一、设计内容及要求 编写程序模拟虚拟存储器管理。假设以M页的进程分配了N

块内存(N

习题答案-Linux操作系统原理实践教程-崔继-清华大学出版社

第1章 1、在VMwane中安装CentOS 7的基本步骤有哪些? (1)新建虚拟机 (2)虚拟机设置 (3)启动虚拟机 (4)设置安装信息,包括软件选择,安装位置,分区等 (5)完成最后安装 2、安装Linux时可以设置哪些分区?有哪些分区是必须的? 能够设置的分区可以根据安装系统时提示,主要包括:/,/boot,swap,/home,/opt 等等;其中/(根)分区是必须的。 第2章 1、针对Linux 系统启动运行,有哪些运行目标?每个运行目标的含义是什么? CentOS 从7.0 开始使用systemd 代替init 作为系统启动和服务器守护进程的管理器,负责在系统启动或运行时,激活系统资源,管理服务器进程。systemd 用目标(target)替代了运行级别的概念,提供了更大的灵活性,比如可以继承一个已有的目标,并添加其他服务来创建自己的目标。CentOS 7.0 之前的运行级别和systemd 目标之间的对应关系如下表所示。 2、Linux 有几种关机方法,每种关机操作有何异同? 关闭系统的命令有: shutdown(最安全的方式),halt,init,telinit,poweroff,reboot,具体含义可以参考

帮助手册页。 第3章 more、less、cat、wc 命令有什么区别? 这几个命令可用于对文本文件的处理显示,主要区别在:more命令以分页(一次一屏)显示文本信息;less类似于more,但增加了回滚功能;cat本意是连接文件并在标准输出上输出,也就是将文件一次全部输出;wc用于统计输出文件中的行数、单词数、字节数等。 第4章 (1)发出命令显示行号。 底端命令方式下 :set nu (2)保存到文件AboutLinux,并不退出。 底端命令方式下 :w AboutLinux (3)删除一句“It is this kernel that forms the base around which a Linux operating system is developed.”。 在命令方式下,先把光标移到It处,再按d$。(从当前光标处到行末的所有字符删除)(4)查找单词“Finland”。 命令方式下输入/Finland,回车后会在第一个Finland处停下来。 (5)把第一段的“Finland”单词后的内容换行,使其变成三段内容。 插入方式下,将光标移到Finland后,按回车键即可。(vi的换行标志是回车符) (6)将第二段的内容复制到文档的最后。 命令方式下:先用yy命令,然后移到文档最后,再按p键。 (7)删除第三段的内容。 命令方式下,光标移到第三段,用dd命令。(注,这里的段实际上是第3行。) (8)恢复被删除的一段内容。 命令方式下,用u命令。 (9)查找所有的“Minix”单词,并全部改为“MINIX”。 底端命令方式下,:1,$s/Minix/MINIX/g (10)不保存修改,退出vi。 底端命令方式下,:q! (11)使用vi再次打开文件AboutLinux,在第二段后插入“He began his work in 1991 when he released version 0.02 and worked steadily until 1994 when version 1.0 of the Linux Kernel was released.”。 shell命令提示符下输入:vi AboutLinux(打开保存的文件)

《操作系统原理》课程教学大纲

附件1: 《操作系统原理》课程教学大纲 制定(修订)人: 李灿平、郭亚莎制定(修订)时间: 2006年 7 月所在单位: 信息工程学院 一、课程基本信息

三、教学内容及基本要求 第一章绪论 本章简要介绍操作系统的基本概念、功能、分类以及发展历史。同时讨论研究操作系统的几种观点。 §1.1 操作系统的概念 本节介绍操作系统的基本概念,什么是操作系统以及操作系统与硬件软件的关系。 本节重点:操作系统与硬件软件的关系。 本节要求学生理解什么是操作系统,掌握操作系统与硬件软件的关系。 §1.2 操作系统的历史 本节按器件工艺介绍操作系统的发展历史。 本节重点:多道程序系统的概念。 本节要求学生了解操作系统的发展历史,理解多道程序系统概念。 §1.3 操作系统的基本类型 本节介绍常见的操作系统的类型、特点及适用的对象。 本节重点:批处理操作系统、分时系统、实时系统。 本节要求学生掌握上述三大操作系统的特点及适用对象。 §1.4 操作系统功能 本节简单介绍操作系统的五个功能。处理机管理,存储管理,设备管理,信息管理(文件系统管理)和用户接口。 本节要求学生了解上述功能。 §1.5 计算机硬件简介 本节简单介绍计算机硬件系统。 本节要求学生自修。

§1.6 算法的描述 本节介绍操作系统管理计算机系统的有关过程所用的描述算法。 本节要求学生掌握本书所采用的描述算法。 §1.7 研究操作系统的几种观点 本节介绍研究操作系统的几种观点。系统管理的观点,用户界面观点和进程管理观点。 本节要求学生了解上述三种观点。 第二章操作系统用户界面 本章主要讨论操作系统的两个用户接口,并以UNIX系统为例,简单介绍用户接口的使用操作方法。 §2.1 作业的基本概念 本节介绍作业的基本概念,什么是作业及作业组织(结构)。 本节重点:作业的基本概念。 本节要求学生掌握作业的基本概念,了解作业的组织。 §2.2 作业的建立 本节介绍作业的几种输入方式和作业的建立过程。 本节重点:联机输入方式和Spooling系统,作业控制块PCB和作业的四个阶段。 本节要求学生了解作业的几种输入方式,理解Spooling系统,掌握作业建立的过程内容。理解作业的四个基本阶段。提交、后备、执行以及完成阶段。 §2.3 命令控制界面接口 本节介绍操作系统为用户提供的命令接口界面。介绍命令接口的两种使用方式。讨论联机方式下操作命令的分类。 本节重点:命令接口的使用方式。 本节要求学生理解命令接口的作用和使用方式。了解联机方式下操作命令的分类。 §2.4 系统调用 本节介绍操作系统提供给编程人员的唯一接口,系统调用。同时讨论系统调用的分类。 本节重点:编程人员通过系统调用使用操作系统内核所提供的各种功能和系统调用的处理过程。 本节要求学生了解系统调用的分类、理解系统调用的功能、掌握系统调用的处理过程。 §2.5 UNIX用户界面 本节简单介绍UNIX系统的发展历史和特点以及UNIX系统结构。同时讨论UNIX操作命令和系统调用的分类功能和使用方法。 本节重点:UNIX系统的特点。 本节要求学生了解UNIX系统的发展史,掌握UNIX系统的特点,理解UNIX系统操作命令和系统调用的功能。 第三章进程管理 本章详细介绍进程和线程管理的有关概念和技术。 §3.1 进程的概念 本节介绍进程的基本概念。通过程序的并发执行,引出进程具有并发性特征的概念。同时讨论进程的各式各样的定义以及作业和进程的关系。 本节重点:进程的特征。 本节要求学生了解程序的并发执行,掌握进程的特征。 §3.2 进程的描述 本节介绍进程的静态描述以及进程上下文结构。 本节重点,进程的上下文结构。 本节要求学生理解进程的静态描述内容,掌握进程控制块PCB的作用和进程上下文结构。

操作系统原理及应用试题附答案

操作系统原理及应用试题附答案 第一部分选择题一、单项选择题(本大题共4小题,每小题2分,共8分) 1、从静态角度来看,进程由__________、数据集合、进程控制块及相关表格三部分组成。()A、JCB B、PCB C、程序段 D、I/O缓冲区 2、请求页式管理方式中,首先淘汰在内存中驻留时间最长的帧,这种替换策略是_____.()A、先进先出法(FIFO) B、最近最少使用法(LRU) C、优先级调度 D、轮转法 3、文件安全管理中,___________安全管理规定用户对目录或文件的访问权限。()A、系统级 B、用户级 C、目录级 D、文件级 4、排队等待时间最长的作业被优先调度,这种算法是___________。A、优先级调度 B、响应比高优先 C、短作业优先D、先来先服务第二部分非选择题 二、填空题(本大题共16小题,每小题1分,共16分) 5、常规操作系统的主要功能有:_处理机管理_、存贮管理、设备管理、文件管理以及用户界面管理。 6、操作系统把硬件全部隐藏起来,提供友好的、易于操作的用户界面,好象是一个扩展了的机器,即一台操作系统虚拟机。 7、进程管理的功能之一是对系统中多个进程的状态转换进行控制。 8、逻辑_文件是一种呈现在用户面前的文件结构。 9、操作系统中实现进程互斥和同步的机制称为同步机构_。 10、内存中用于存放用户的程序和数据的部分称为用户区(域)。 11、存贮器段页式管理中,地址结构由段号、段内页号和页内相对地址三部分组成。 12、在操作系统中,通常用户不使用设备的物理名称(或物理地址),而代之以另外一种名称来操作,这就是逻辑设备名。 13、在操作系统中,时钟常有两种用途:报告日历和时间,对资源使用记时。 14、库文件允许用户对其进行读取、执行,但不允许修改.

操作系统原理期末试卷10套含答案7

操作系统原理期末试卷10套含答案7 一、单项选择题(每题2分,共20分) 1.以下著名的操作系统中,属于多用户、分时系统的是( B ). A.DOS系统B.UNIX系统 C.Windows NT系统D.OS/2系统 2.在操作系统中,进程的最基本的特征是( A ). A.动态性和并发性B.顺序性和可再现性 C.与程序的对应性D.执行过程的封闭性 3.操作系统中利用信号量和P、V操作,( C ). A.只能实现进程的互斥B.只能实现进程的同步 C.可实现进程的互斥和同步D.可完成进程调度 4.作业调度的关键在于( C ). A.选择恰当的进程管理程序B.用户作业准备充分 C.选择恰当的作业调度算法D.有一个较好的操作环境 5.系统抖动是指( D ). A.使用机器时,屏幕闪烁的现象 B.由于主存分配不当,偶然造成主存不够的现象 C.系统盘有问题,致使系统不稳定的现象 D.被调出的页面又立刻被调入所形成的频繁调入调出现象 6.在分页存储管理系统中,从页号到物理块号的地址映射是通过( B )实现的. A.段表B.页表 C. PCB D.JCB 7.在下述文件系统目录结构中,能够用多条路径访问同一文件(或目录)的目录结构是( D ) A.单级目录B.二级目录

C.纯树型目录D.非循环图目录 8.SPOOLing技术可以实现设备的( C )分配. A.独占B.共享 C.虚拟D.物理 9.避免死锁的一个著名的算法是( C ). A.先人先出算法B.优先级算法 C.银行家算法D.资源按序分配法 10.下列关于进程和线程的叙述中,正确的是( C ). A.一个进程只可拥有一个线程 B.一个线程只可拥有一个进程 C.一个进程可拥有若干个线程 D.一个线程可拥有若干个进程 二、判断题(选择你认为正确的叙述划√,认为错误的划×并说明原因.每题2分,共10分) 1.简单地说,进程是程序的执行过程.因而,进程和程序是一一对应的.( ) 2.V操作是对信号量执行加1操作,意味着释放一个单位资源,加l后如果信号量的值小于等于零,则从等待队列中唤醒一个进程,使该进程变为阻塞状态,而现进程继续进行.( ) 3.段页式存储管理汲取了页式管理和段式管理的长处,其实现原理结合了页式和段式管理的基本思想,即用分段方法来分配和管理用户地址空间,用分页方法来管理物理存储空间.( ) 4.在采用树型目录结构的文件系统中,各用户的文件名必须互不相同.( ) 5.用户程序应与实际使用的物理设备无关,这种特性就称作与设备无关性.( ) 答案:1.(×)改正为:进程和程序不是一一对应的. 2.(×)改正为:V操作是对信号量执行加1操作,意味着释放一个单位资源,加1后如果信号量的值小于等于零,则从等待队列中唤醒一个进程,现进程变为就绪状态,否则现进程继续进行. 3.(√) 4.(×)改正为:在采用树型目录结构的文件系统中,不同用户的文件名可以相同. 5.(√) 三、填空题(每空2分,共30分)

操作系统原理课程设计实践报告

操作系统原理课程设计 实践报告 题目: 仿真多进程并发环境中死锁的预防、避免、检测与解除 姓名: 学院: 信息科技学院 专业: 计算机科学技术系 班级: 学号: 指导教师: 职称: 20010年4月8日 仿真多进程并发环境中死锁的预防、避免、检测与解除 摘要:在多道程序系统中,多个程序并发执行时可能造成死锁。所谓死锁是指多

个进程在运行过程中因争夺资源而造成的一种僵局。当进程处于这种僵局状态时若无外力作用,它们都将无法再向前推进,造成资源的浪费。该程序将模拟多进程并发时死锁现象的产生、避免、检测与解除。死锁避免用最著名的银行家算法,用银行家安全性算法类似的死锁检测算法来检测进程状况,又用资源剥夺法来实现死锁的解除。该程序实现操作简易,表示清晰并且形象描述多进程并发环境中死锁的预防、避免、检测与解除。 关键字:死锁;避免死锁;安全状态;银行家算法 引言:在操作系统、数据库系统以及网络通信中,由于进程并发和资源共享,当系统中资源分配顺序或者进程推进顺序不当就会造成系统死锁[1]。处于死锁状态的系统中,进程之间互相等待资源而永远不能继续向前推进,严重地影响了系统的可靠性。因而有时需要合理的对资源进行分配必要的时候加以限制保证系统安全、高效、稳定的运行。 1理论分析 1.1 死锁的概念 如果一个进程集合中的每个进程都在等待只能由此集合中的其他进程才能引发的事件,而无限期陷入僵持的局面称为死锁[2]。 1.2 产生死锁的条件: 1、互斥使用(资源独占):一个资源每次只能给一个进程使用。 2、不可强占(不可剥夺):资源申请者不能强行的从资源占有者手中夺取资 源,资源只能由占有者自愿释放。 3、请求和保持(部分分配,占有申请):一个进程在申请新的资源的同时保 持对原有资源的占有(只有这样才是动态申请,动态分配)。 4、循环等待:存在一个进程等待队列{P1,P2,…,Pn},其中P1等待P2占 有的资源,P2等待P3占有的资源,…,Pn等待P1占有的资源,形成一个进程等待环路[3]。 1.3死锁的预防 在系统设计时确定资源分配算法,保证不发生死锁。具体的做法是破坏产生死锁的四个必要条件之一。 ①破坏“不可剥夺”条件 在允许进程动态申请资源前提下规定,一个进程在申请新的资源不能立即得到满足而变为等待状态之前,必须释放已占有的全部资源,若需要再重新申请。 ②破坏“请求和保持”条件 要求每个进程在运行前必须一次性申请它所要求的所有资源,且仅当该进程所要资源均可满足时才给予一次性分配。 ③破坏“循环等待”条件 采用资源有序分配法:把系统中所有资源编号,进程在申请资源时必须严格按资源编号的递增次序进行,否则操作系统不予分配。

操作系统原理与应用第2章文件管理

第2章文件管理习题解答 1.什么是文件和文件系统?文件系统有哪些功能? 【解答】文件是具有符号名而且在逻辑上具有完整意义的信息项的有序序列。 文件系统是指操作系统系统中实现对文件的组织、管理和存取的一组系统程序,它实现对文件的共享和保护,方便用户“按名存取”。 文件系统的功能“ (1)文件及目录的管理。如打开、关闭、读、写等。 (2)提供有关文件自身的服务。如文件共享机制、文件的安全性等。 (3)文件存储空间的管理。如分配和释放。主要针对可改写的外存如磁盘。(4)提供用户接口。为方便用户使用文件系统所提供的服务,称为接口。文件系统通常向用户提供两种类型的接口:命令接口和程序接口。不同的操作系统提供不同类型的接口,不同的应用程序往往使用不同的接口。 2.Linux文件可以根据什么分类?可以分为哪几类?各有什么特点? 【解答】在Linux操作系统中,文件可以根据内部结构和处理方式进行分类。 在Linux操作系统中,可以将文件分为普通文件、目录文件、特别文件三类。 各类文件的特点是: 普通文件:由表示程序、数据或正文的字符串构成的文件,内部没有固定的结构。这种文件既可以是系统文件,也可以是库文件或用户文件。 目录文件:由文件目录构成的一类文件。对它的处理(读、写、执行)在形式上与普通文件相同。 特别文件:特指各种外部设备,为了便于管理,把所有的输入/输出设备都按文件格式供用户使用。这类文件对于查找目录、存取权限验证等的处理与普通文件相似,而其他部分的处理要针对设备特性要求做相应的特殊处理。 应该指出,按不同的分类方式就有不同的文件系统。 3.什么是文件的逻辑结构?什么是文件的物理结构?Linux文件系统分别采用什么样的结构?有什么优点和缺点? 【解答】文件的逻辑结构:用户对文件的观察的使用是从自身处理文件中数据时采用的组织方式来看待文件组织形式。这种从用户观点出发所见到的文件组织方式称为文件的逻辑组织。 文件的物理结构:从系统的角度考察文件在实际存储设备上的存放形式,又称为文件的存储结构。 在Linux系统中,所有文件的逻辑结构都被看作是流式文件,系统不对文件进行格式处理。 在Linux系统中,文件的物理结构采用的是混合多重索引结构,即将文件所占用盘块的盘块号,直接或间接地存放在该文件索引结点的地址项中。 在Linux系统中,采用混合索引结构的优点是,对于小文件,访问速度快;对于大中

操作系统原理课程设计报告

操作系统原理课程设计报告

系(院):计算机科学学院 专业班级: 姓名: 学号: 指导教师: 设计时间:2020.5.25——2020.5.30 设计地点:

一、课程设计目的 (4) 二、课程设计的任务和要求 (4) 三、模拟程序的描述: (5) 四、运行环境 (7) 五、算法原理 (8) 1)多级反馈队列调度算法 (13) 2)优先权调度算法 (14) 六、需求分析 (16) 七、总体设计 (17) 八、详细设计与实现[含代码和实现界面] (19) 九、主要代码分析: (26) 十、总结 (44)

一、课程设计目的 《操作系统原理》是计算机科学与技术专业的一门专业核心课程,也是研究生入学考试中计算机专业综合中所涉及的内容。该课程理论性强,纯粹的理论学习相对枯燥乏味,不易理解。通过课程设计,可加强学生对原理知识的理解。 二、课程设计的任务和要求 本次课程设计的题目是,时间片轮转调度算法的模拟实现。要求在充分理解时间片轮转调度算法原理的基础上,编写一个可视化的算法模拟程序。 具体任务如下: 1、根据需要,合理设计PCB结构,以适用于时间片轮转调度算法;

2、设计模拟指令格式,并以文件形式存储,程序能够读取文件并自动生成指令序列。 3、根据文件内容,建立模拟进程队列,并能采用时间片轮转调度算法对模拟进程进行调度。 三、模拟程序的描述: 模拟指令的格式:操作命令+操作时间 ● C :表示在CPU上计算 ●I :表示输入 ●O :表示输出 ●W :表示等待 ●H :表示进程结束 操作时间代表该操作命令要执行多长时间。这里假设I/O设备的数量没有限制,I和O设备都只有一类。 I,O,W三条指令实际上是不占有CPU的,执行这三条指令就应该将进程放入对应的等待队列(输入等待队列,输出等待队列,其他等待队列)。

操作系统原理课程设计

操作系统原理课程设计 ——银行家算法模拟 指导老师:周敏唐洪英杨宏雨 杨承玉傅由甲黄贤英 院系:计算机学院计算机科学与技术班级:0237-6 学号:2002370609 姓名:刘洪彬 同组者:杨志 时间:2005/1/10---2005/1/14

银行家算法模拟 一、设计目的 本课程设计是学生学习完《计算机操作系统》课程后,进行的一次全面的综合训练,通过课程设计,让学生更好地掌握操作系统的原理及实现方法,加深对操作系统基础理论和重要算法的理解,加强学生的动手能力。 二、设计要求 银行家算法是避免死锁的一种重要方法,本实验要求用高级语言编写和调试一个简单的银行家算法程序。加深了解有关资源申请、避免死锁等概念,并体会和了解死锁和避免死锁的具体实施方法。 从课程设计的目的出发,通过设计工作的各个环节,达到以下教学要求:两人一组,每组从所给题目中任选一个(如自拟题目,需经教师同意),每个学生必须独立完成课程设计,不能相互抄袭,同组者文档不能相同; 设计完成后,将所完成的工作交由老师检查; 要求写出一份详细的设计报告。 三、设计内容 编制银行家算法通用程序,并检测所给状态的系统安全性。 1)银行家算法中的数据结构 假设有n个进程m类资源,则有如下数据结构: 可利用资源向量Available。这是一个含有m个元素的数组,其中的每一个元素代表一类可利用的资源数目,其初始值是系统中所配置的该类全部可用资源的数目,其数值随该类资源的分配和回收而动态地改变。Available[j]=K,则表示系统中现有Rj 类资源K个。 最大需求矩阵Max。这是一个n*m的矩阵,它定义了系统中n个进程中的每一个进程对m类资源的最大需求。如果Max[i,j]=K,则表示进程i需要Rj类资源的最大数目为K。 分配矩阵Allocation。这也是一个n*m的矩阵,它定义了系统中每一类资源当前已分配给没一进程的资源数。如果Allocation[i,j]=K,则表示进程i 当前已分得Rj类资源的数目为K。 需求矩阵Need。这也是一个n*m的矩阵,用以表示每一个进程尚需的各类资源数。如果Need[i,j]=K,则表示进程i还需要Rj类资源K个,方能完成其任务。

操作系统原理与实践教程(第二版)第2章习题答案

第2章操作系统的界面 (1) 请说明系统生成和系统引导的过程。 解: 系统的生成过程:当裸机启动后,会运行一个特殊的程序来自动进行系统的生成(安装),生成系统之前需要先对硬件平台状况进行检查,或者从指定文件处读取硬件系统的配置信息,以便根据硬件选择合适的操作系统模块组,比较重要的信息通常有:CPU类型、内存大小、当前关联设备的类型和数量以及操作系统的重要功能选项和参数。按照这些信息的指示,系统生成程序就可以正确地生成所需的操作系统。 系统引导的过程:系统引导指的是将操作系统内核装入内存并启动系统的过程。主要包括初始引导、内核初始化、全系统初始化。初始引导工作由BIOS完成,主要完成上电自检,初始化基本输入输出设备,载入操作系统内核代码等工作。内核被载入内存后,引导程序将CPU控制权交给内核,内核将首先完成初始化功能,包括对硬件、电路逻辑等的初始化,以及对内核数据结构的初始化,如页表(段表)等。全系统初始化阶段要做的就是启动用户接口程序,对系统进行必要的初始化,使系统处于等待命令输入状态。 (2) 操作系统具有哪些接口?这些接口的作用是什么? 解: 操作系统为用户提供的接口有图形接口、命令接口和程序接口几种形式。 操作系统包括三种类型的用户接口:命令接口(具体又可分为联机命令接口与脱机命令接口)、程序接口及图形化用户接口。其中,命令接口和图形化用户接口支持用户直接通过终端来使用计算机系统,而程序接口则提供给用户在编制程序时使用。 (3) 请说明操作系统具有的共性服务有哪些不同类别,这些类别分别用于完成什么功能? 解:所有的操作系统都通过一些基本服务来帮助用户简单便捷地使用计算机各类资源,它们包括以下几个类别: 1.控制程序运行:系统通过服务将用户程序装入内存并运行该程序,并且要控制程序 在规定时间内结束。 2.进行I/O操作:用户是不能直接控制设备的,只能通过操作系统与外部设备进行交 互,由系统调用将结果显示在屏幕上或交给用户。 3.操作文件系统:为了保证实现“按名存取”,文件系统应该为用户提供根据文件名 来创建、访问、修改、删除文件的方法,以确保文件数据的安全可靠以及正确存取。 4.实现通信:操作系统需要提供多个程序之间进行通讯的机制,来控制程序的执行顺 序。 5.错误处理:操作系统通过错误处理机制,以便及时发现错误并采取正确的处理步骤, 避免损害系统的正确性和统一性。 (4) 系统调用的用途是什么? 解: 通常,在操作系统内核设置有一组用于实现各种系统功能的子程序(过程),并将它们提供给用户程序调用。每当用户在程序中需要操作系统提供某种服务时,便可利用一条系统调用命令,去调用所需的系统过程。这即所谓的系统调用。系统调用的主要类型包括: 1.进程控制类,主要用于进程的创建和终止、对子进程结束的等待、进程映像的替换、 进程数据段大小的改变以及关于进程标识符或指定进程属性的获得等; 2.文件操纵类,主要用于文件的创建、打开、关闭、读/写及文件读写指针的移动和

专科《操作系统原理及应用》

[试题分类]:专科《操作系统原理及应用》_08004260 [题型]:单选 [分数]:2 1.批处理最主要的一个缺点是()。 A.用户无法与程序交互 B.没有实现并发处理 C.CPU的利用率较低 D.一次只能执行一个程序 答案:A 2.磁盘空闲块常用的组织形式有三种,其中一种为()。 A.空闲块连续 B.空闲块索引 C.空闲块压缩 D.空闲块链 答案:D 3.常用的文件物理结构有三种,其中的一种形式是()。 A.记录文件 B.压缩文件 C.索引文件 D.流式文件 答案:C 4.批处理系统中,作业的状态可分为多种,其中一种为()。 A.提交 B.就绪 C.创建 D.等待 答案:A 5.并发执行的一个特点是()。 A.计算结果会出错 B.不会顺序执行 C.程序与计算不再一一对应 D.结果可再现

6.下列选项()不是操作系统关心的。 A.管理计算机资源 B.提供用户操作的界面 C.高级程序设计语言的编译 D.管理计算机硬件 答案:C 7.当CPU执行用户程序的代码时,处理器处于()。 A.核心态 B.就绪态 C.自由态 D.用户态 答案:D 8.根据对设备占用方式的不同,设备分配技术中的一种是()。 A.动态分配 B.永久分配 C.静态分配 D.虚拟分配 答案:D 9.评价作业调度的性能时,衡量用户满意度的准确指标应该是()。 A.周转时间 B.平均周转时间 C.带权周转时间 D.平均带权周转时间 答案:C 10.在手工操作阶段,存在的一个严重的问题是()。 A.外部设备太少 B.用户使用不方便 C.计算机的速度不快 D.计算机的内存容量不大 答案:B 11.作业的处理一般分为多个作业步,连接成功后,下一步的工作是()。

《操作系统原理》课程设计

《操作系统原理》课程设计 课题名称:进程调度算法 姓名: 班级: 学号: 课程设计起止时间:2005年1月2日——2005年1月7日指导教师:成绩:

课程设计任务书

进程调度算法 一、设计说明 该程序实现了进程的创建,且对该进程队列进行动态优先权抢占式和时间片轮转算法的调度。 二、详细设计 1. 流程图

2. 程序运行环境 Turbo C 2.0 3. 变量的名称、作用及含义说明 链表结构process,整型变量name表示进程名称,整型变量prior表示优先数,整型变量needtime表示需要执行时间,整型变量CPUtime表示CPU执行时间,整型变量runtime表示进程执行时间,整型变量state表示运行状态(1:ready, 2:execute, 3:finish)。 4. 各主要模块的功能表述 [ 子函数] ①Createp() 用来创建新进程,其中的整型变量n表示需要创建的进程个数; ②PrintP1(h) 用来打印输出时间片轮转算法的创建进程和运行进程的各变量值; ③Finish(h) 用来判断某个进程是否执行完; ④Find(h) 用来查找该进程队列中优先数最大的进程; ⑤PrintP2(h) 用来打印输出动态优先权抢占式算法的创建进程和运行进程的各变量值; ⑥ExecuteP_prio(h) 执行动态优先权抢占式进程调度算法; ⑦ExecuteP_time(h) 执行时间片轮转进程调度算法; [ 主函数] main()中使用字符变量select表示a和b中的一个字母,整型变量num表示1至3中的一个数,用双层switch语句实现各模块功能。 5.程序源代码 #include #include #include #include #define NULL 0 #define Max_Pri 100 struct Process { int name; int prio; int needtime; int piecetime; int CPUtime; int runtime; int state; struct Process *next;

河北师大地理信息系统原理与实践考研真题及答案

地理信息系统2010年考研试题 一名词解释(40分共8个小题每题5分) 1、对象模型:也称要素模型,将研究的整个地 理空间看成一个空域,地理现象和空间实体作为独立对象分布在该空域中。24页 2、关系模型:它是将数据的逻辑结构归结为满 足一定条件的二维表,这种表称为关系。 3、误差:表示数据与其真值之间的差。84页 4、层次分类编码法:是按照分类对象的从属和 层次关系为排列顺序的一种代码。它的优点是能明确表示出分类对象的类别,代码结构有严格的隶属关系。64页 5、网格GIS:网格被称为第三代互联网应用,它是把整个互联网整合成一台巨大的超级计算机,能实现各种资源的全面共享。 6、邻接关系:它是指空间图形中同类元素之间 的拓扑关系。 7、TIN:是专为产生DEM数据而设计的一种采样表示系统 8、ComGIS:是面向对象技术和组件式软件在GIS软件开发中的应用。(186页) 二简答题(70分,每题10分) 1、GIS是解决什么问题的? 答:“有用的空间信息和知识”可归纳为位置、条件、趋势、模型和模拟等五个基本问题,GIS的价值和作用就是通过地理对象的重建,利 用空间分析工具,实现对这五个基本问题的求解。 地理信息系统包括以下五项基本功能:(1)数据采集与输入(2)数据编辑与更新(3)数据存储与管理 (4)空间查询与分析(5)数据显示与输出2、什么是矢量数据结构?其特点是什么? 答:适量数据结构:通过记录空间对象的坐标 及空间关系表达空间对象的几何位置。 矢量结构的特点:定位明显,属性隐含。 3、空间数据的获取方式有哪些? 答:(1)数字化仪矢量化(2)扫描数字化(3)遥感数据获取(4)外业测量数据获取(5)全球定们系统数据获取(6)数字摄影测量数据获取(7)已有数据的获取与转换4、什么是空间数据压缩?空间数据压缩的方 法? 答:空间数据压缩是指从取得的数据集合中抽取一个子集,这个子集作为一个新的信息源,在规定的精度范围内最好地逼近原集合,而又取得尽可能大的压缩比。 (1)栅格数据压缩:栅格数据压缩是指栅格数据量的减少,这与栅格数据结构密切相关。其压缩方法有游程长度编码、链码、块状编码、四叉树编码等 (2)曲线矢量数据压缩:①间隔取点法:每隔一规定的距离取一点,舍去那些离已选点较近的点,但首末点必须保留。 ②垂距法,垂距法是按垂距的限差选取符合或超过限差的点。 ③偏角法,是按偏角的限差选取符合或超过限差的点。 ④特征点筛选法,是通过筛选抽取曲线特征点,并删除非特征点以实现数据压缩。 5、试述DEM的建立方法?以及包含的模型有哪些? 答:(1)DEM数据源(2)DEM数据采集方法(3)数据摄影测量获取DEM(4)DEM的空间插值方法 DEM的主要表示模型:规则格网模型、不规则三角网模型、等高线模型。 6、GIS工程的特点?GIS工程的建设过程?(202页) 答:GIS工程的主要特点有以下几个方面: ⑴空间数据的管理在工程中处于核心地 位 ⑵系统体系结构相对复杂 ⑶系统维护工作量大 ⑷系统更新速度快 ⑸应用领域广阔 GIS工程的建设过程: ⑴工程定义阶段 ⑵工程设计阶段 ⑶数据工程阶段 ⑷工程实施阶段 ⑸工程的评价与维护阶段 7、试述ArcCatalog主要功能249页 答:ArcCatalog数据管理功能

《操作系统原理》考题及答案

《操作系统原理》期末考试题 、单项选择题(每题 分,共分) 1. 操作系统是一种( )。 A. 系统软件 B. 系统硬件 C. 应用软件 D. 支援软件 2. 分布式操作系统与网络操作系统本质上的不同在于( )。 A. 实现各台计算机这间的通信 B. 共享网络中的资 源 C.满足较在规模的应用 D. 系统中多台计算机协作完成同一任务 3. 下面对进程的描述中,错误的是( A.进程是动态的概念 B. C.进程是指令的集合 D. 4?临界区是指并发进程中访问共享变量的( )段。 5. 要求进程一次性申请所需的全部资源,是破坏了死锁必要条件中的哪一条 。 A.互斥 B. 请求与保持 C. 不剥夺 D. 循环等待 6. 以下哪种存储管理不可用于多道程序系统中( )。 A.单一连续区存储管理 B.固定式区存储管理 C.可变分区存储管理 D.段式存储管理 7. 在可变式分区存储管理中,某作业完成后要收回其主存空间,该空间可能与 相邻空闲区合 并,修改空闲区表,使空闲区数不变且空闲区起始地址不变的 )。 进程执行需要处理机 进程是有生命期的 A.管理信息 B.信息存储 C. 数据 D. 程序

情况是()。 A.无上邻空闲区也无下邻空闲区 C.有下邻空闲区但无上邻空闲区 8. 系统“抖动”现象的发生不是由 A.置换算法选择不当 C.主存容量不足 9. 在进程获得所需全部资源,唯却 A.运行 B.阻塞 10. 要页式存储管理系统中,将主存等分成( A.块 B.页B. D. B. D. CPU 时,有上邻空闲区但无下邻空闲区 有上邻空闲区也有下邻空闲 区)引起的。 交换的信息量过大 请求页式管理方案 进程处于( C.就绪 )。 C. 段长 状态。 D.新建 D.段

操作系统原理课程设计

******************* 实践教学 ******************* 兰州理工大学 计算机与通信学院 2007年秋季学期 操作系统原理课程设计 题目:内存管理模拟系统 专业班级:05软件工程(2)班 姓名:尹盼盼 学号:05240204 指导教师:王旭阳 成绩:______________

目录 摘要.......................................................................... 错误!未定义书签。正文.......................................................................... 错误!未定义书签。 1、设计思路............................................................................ 错误!未定义书签。 2、各模块的伪码算法............................................................ 错误!未定义书签。 3、函数的调用关系图............................................................ 错误!未定义书签。 4、测试.................................................................................... 错误!未定义书签。设计总结 ................................................................. 错误!未定义书签。参考文献 ................................................................. 错误!未定义书签。致谢...................................................................... 错误!未定义书签。附录:部分源程序代码 ......................................... 错误!未定义书签。 摘要 操作系统的内存管理是指系统软件对其他应用程序使用内存时所作的管理,是一种统筹关系。本设计采用活动分区方案,但不采用紧凑算法。假设系统内存容量为100KB。能处理内存回收的时候上下邻合并的问题;对随机出现的进程i申请jKB内存,程序能判断是否能分配;释放随机的首地址为Handle的内存块;同时输出内存使用情况和空闲情况。 关键词:C语言、内存管理、操作系统、管理系统、内存的分配和回收 正文 1、设计思路 内存管理是计算机系统以一种优化性能的方式,在需要内存的不同进程(如操作系统或应用程序调用)之间将有限的内存进行分配的过程。执行这种任务的通用技术叫做虚拟内存技术,这项技术利用保留的磁盘空间存储不在物理内存中的对象,来模拟比实际可用的内存大得多的地址空间。此设计为了了解UNIX的

相关文档
最新文档