文档视界 最新最全的文档下载
当前位置:文档视界 › 操作系统知识点

操作系统知识点

操作系统知识点
操作系统知识点

操作系统书本知识点

第一章操作系统引论

主要内容

操作系统的目标、作用和模型

操作系统的发展过程

操作系统的基本特征

OS(Operating Systems)的主要功能

OS的结构设计

本章要点

计算机系统结构:了解操作系统的地位

什么是操作系统:3种基本观点

现代操作系统的功能、特性、类型

基本概念:批处理、多道程序、作业、进程、任务、虚拟技术、并发性、异步性

操作系统的作用(1)

作为用户与计算机硬件系统之间的接口

作为计算机系统资源的管理者

处理机管理:分配和控制处理机

存储器管理:分配及回收内存

I/O(Input/Output)设备管理:I/O分配与操作

文件管理:文件存取、共享和保护

监视这些资源

实施某种资源分配策略

分配这种资源

回收这种资源

OS实现了对计算机资源的抽象

操作系统的发展过程

1.2.1无操作系统时的计算机系统

人工操作方式

?如纸带输入机。

?特点是用户独占全机及CPU等待人工操作。

脱机I/O方式(图1.3)

?引入I/O机的概念,解决前者的缺点。

?特点是减少了CPU的空闲时间且提高I/O速度。

单道批处理系统

处理过程(图1.4)

?概念:系统对作业的处理都是成批进行的、且内存中始终只保持一道作业,称为单道批处理系统(simple batch system)。

?批处理系统的引入是为了提高系统资源的利用率和吞吐量

?概念:运行控制权

特征

?自动性、顺序性、单道性

多道批处理系统(1)

优点

?资源利用率高

?系统吞吐量大

?平均周转时间长

?无交互能力

缺点

?平均周转时间长、无交互能力

分时系统

分时系统的产生

?概念:指一台主机上连接了多个带有显示器和键盘的终端,同时允许多个用户共享主机中的资源,各个用户都可通过自己的终端以交互方式使用计算

机。

分时系统在实现中的关键问题

?及时接收:多终端卡、输入缓冲区

?及时处理:交互作业应在内存、响应时间应短

分时系统的特征

?多路性

?独立性

?及时性

?交互性

?可靠性

类型

?实时控制

?实时信息处理

实时系统(2)

实时任务类型

?按任务执行是否呈现周期性来划分

?周期性的(联系周期);

?非周期性的(联系开始或完成截止时间)

?根据对截止时间的要求来划分

?硬实时任务

?软实时任务

实时、分时的比较

?多路性:相同

?独立性:相同

?及时性:实时系统要求更高

?交互性:分时系统交互性更强

?可靠性:实时系统要求更高

思考

试在交互性、及时性和可靠性方面,将分时系统和实时系统进行比较。

操作系统的基本特征(1)

并发性

?并行是指两或多个事件在同一时刻发生。

?并发是两或多个事件在同一时间间隔内发生。

?进程:系统中能独立运行并作为资源分配的基本单位。引入线程后,独立运行的单位变为线程。

共享性

?系统中资源可供内存中多个并发执行的进程共同使用

?互斥共享:一段时间只允许一个进程访问该资源

?同时访问:微观上仍是互斥的

虚拟性

?通过某种技术把一个物理实体变为若干个逻辑上的对应物。若n是某一物理设备所对应的虚拟的逻辑设备数,则虚拟设备的速度必然是物理设备速度的

1/n。

异步性

?运行进度不可预知。

操作系统的功能

处理器管理功能

(1)进程和作业调度

?进程:指在系统中能独立运行并作为系统资源分配的基本单位,它是由一组机器指

令、数据和堆栈等组成的,是一个活动实体。

?作业调度(又称高级调度或长程调度):用于把外存上处于后备队列中的哪些作业调

入内存,并为它们创建进程、分配必要的资源,然后再将新创建的进程排在就绪队列上,准备执行。

2)进程控制

为作业创建进程,撤消已结束的进程、阻塞进程和唤醒进程。

(3)进程同步

使并发执行的诸进程之间能有效的共享资源和相互合作,从而使程序的执行具有可再现性。

可能存在两种制约关系:间接相互制约关系、直接相互制约关系。

(4)进程通信

进程间信息的交换

存储器管理功能

主要指内存管理,即如何分配内存空间,如何提高存储器的利用率以及能从逻辑上扩充内存。

(1)内存的分配

?静态分配方式:每个作业的内存在作业装入时确定;在作业装入后的整个运行期间,

不允许该作业再申请新的内存空间,也不允许作业在内存中“移动”。

?动态分配方式:允许作业在内存中“移动”。

为此,需内存分配的数据结构及内存分配和回收功能

2)存储保护

指存储管理应确保每道用户程序都只在自己的内存空间内运行,彼此互不干扰。例:设置上、下界寄存器,每条指令进行越界检查(一般是硬件实现)

(3)地址映射

完成逻辑地址到物理地址的转换

(4)内存扩充

采用虚拟技术实现内存扩充,具有请求调入和页面置换功能。

设备管理功能

完成设备的分配和回收,设备的控制和信息传输,提高CPU和I/O设备的并行程度和利用率,方便、快捷地完成用户提出的I/O请求。

如:CPU快则应多创建缓冲区

(1)缓冲管理

有效地缓和CPU和I/O设备速度不匹配问题,提高

CPU利用率,提高系统吞吐量。

常见的缓冲区机制有:单缓冲机制、双缓冲机制

(2)设备分配

?包括:设备,设备控制器,I/O通信的分配和回收

(3)设备处理

?指控制设备进行实际的操作,包括读、写等以及向CPU发中断。

?设备处理/驱动程序应能根据用户的I/O请求,自动地构成通道程序。4)设备独立性

?独立性,即program与设备无关性,使program易于重定向,增加了可移植性。(5)虚拟设备管理

文件管理功能

对用户文件和系统文件进行管理,以方便用户使用,并保证文件的安全性。

(1)文件存储空间的管理

(2)目录管理

?使用户按名存取,提高速度。

(3)文件的读/写管理和保护

用户接口

?一、命令接口

?由一组“命令”集组成,分为联机和脱机用户接口

? 1.联机用户接口

–由一组键盘操作命令及命令解释程序所组成

? 2.脱机(批处理用户接口)

–用JCL写作业说明书

?二、程序接口

?系统调用

?高级语言的库函数

?三、图形接口

?如 win的copy文件,采用“拖”来完成,生动,不需记忆

OS的结构设计

无结构操作系统

模块化结构操作系统

分层式结构操作系统

微内核操作系统结构

1.无结构操作系统

一组过程集,各过程可相互调用,也叫整体系统结构。

缺点:逻辑复杂,维护困难.

2、模块化操作系统

通过分解来控制大型软件复杂度。

如:进程模块、内存模块…,各模块内进一步划分子模块。

优点:

提高了OS设计的可维护性

增强的OS的可适应性

加速了OS的开发过程:并行开发模块

缺点:

接口不易确定

模块依赖关系可能复杂(对于大型软件而言)

3、分层式操作系统

有序分层的基本概念

可简化设计的复杂度

下层为上层提供服务

层次的设置应考虑的因素

程序嵌套:各模块间嵌套关系复杂

运行频率:随层次的增高,相应软件的运行速度就随之下降

公用模块:低层

用户接口:高层

微内核操作系统结构(1)

提高了系统的灵活性和可扩充性

提高了软件的可靠性

适合于分布式系统

微内核操作系统结构(2)

面向对象的程序设计技术

?概念:

?优点:

? a.可扩展性

? b.继承性

微内核技术

?引入:提高系统的灵活性;

?采用C/S模式

?基本功能

?进程、内存、IPC等基本管理功能

第二章进程管理

程序顺序执行时的特征

(1) 顺序性

(2) 封闭性

程序是在封闭的环境下运行的。即程序在运行时,它独占全机资源。一旦运行,不受外界影响.

(3)可再现性

只要程序执行时的环境和初始条件相同,当程序多次重复执行时,不论它是从头到尾不停顿地执行,还是“停停走走”地执行,都将获得相同的结果。

进程的特征

(1)动态性

?进程是程序的一次执行过程,因此,属于动态概念,是进程

的最重要的特征。动态性还表现为:“它由创建而产生,由调度而

执行,因得不到资源而暂停执行,以及由撤消而消亡”。可见,进

程有一定的生命期。而程序只是一组有序指令的集合,并长期存

放在某种介质上,本身并无运动的含义,因此,程序是个静态实

体。

? 进程和程序不是一一对应的,如几个进程可同时执行一个程

序。

(2)并发性

? 这是指多个进程实体,同存于内存中,能在一段时间内同时运行。并发性是进程的

第二个最重要特征。引人进程的目的也正是为了使其程序能并发执行,而程序是不能并发执行的。

(3)独立性

? 这是指进程实体是一个能独立运行的基本单位,同时也是系统中独立获得资源和独

立调度的基本单位。凡未建立进程的程序,都不能作为一个独立的单位参加运行。

(4)异步性

? 这是指进程按各自独立的、不可预知的速度向前推进;或者说,进程按异步方式运

行。正是这一特征,将导致程序执行的不可再现性。因此,在OS 中必须采取某种措施来保证各程序之间能协调运行。 (5)结构特征

? 从结构上看,进程实体是由程序段、数据段及进程控制块三部分

组成。

注意:

*可逆 :仅就绪 执行

*主动 :仅执行阻塞

*微观上:执行状态时,程序在运行

*宏观上:进程建立后直至撤消,程序都在运行。

1) 就绪(Ready)状态

● 一个刚被创建的进程,它的初始状态是就绪。

● 进程所请求的一次打印输出结束后,将使进程状态从等待态变为就绪态。

2) 执行状态

● 单CPU 系统中,最多只有一个进程处于运行状态。

● 分配到必要的资源并获得处理机时的进程状态是执行状态。如:某进程已获

得运行所需的其它资源(CPU 除外),将处于就绪,当它获得CPU 时,就将处于运行(执行)状态。

等待的事了(如某事件 等待I/O )

●进程从运行状态进入就绪状态的原因可能是时间片用完。

3) 阻塞状态

进程管理中,在等待的事件发生情况下,进程将从阻塞状态变为就绪状态。

一个进程状态转换的发生是否一定会导致另一个状态的转换发生,列出所有可能:

进程同步基本概念(1)

进程同步的两种形式的制约关系:

1.间接相互制约关系。此时进程同步的主要任务是保证诸进程能互斥的访问临界资源。

因此,资源应由系统同一分配。

2.直接相互制约关系。此时此时进程同步的主要任务是保证相互合作的进程在执行次

序上的协调,避免出现与时间有关的错误。

临界资源

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

属于临界资源的物理设备,如输入机、打印机、磁带机等。

属于临界资源的软件资源,如多个进程共享的变量、数据、队列等。

两个交往的并发进程,其中一个进程对另一个进程的影响常常是不可预期的,甚至是无法再现,因为两个并发进程执行的相对速度无法控制,所以一个进程的速率通常无法为另一个进程所知。如:

两个进程P1,P2共享变量counter(初值5):

P1 P2

registerl=counter;register2=counter;

registerl=registerl+1;register2=register2–1;

Counter=register1 Counter=register2;

如果一个进程先执行,然后另一进程再执行,则counter的值仍为5。如改变执行次序,counter可能为4或6。

原因:两个进程共享了变量counter.

解决方法:把counter作为临界资源处理。

临界区

程序上如何实现互斥使用临界资源呢?只要把进程中访问临界资源的那段代码分离出来(它被称为临界区),诸进程互斥地进入自己的临界区即可。

信号量机制

1965年,荷兰学者dijkitra提出的信号量机制是一种卓有成效的进程同步工具。现在信号量机制已被广泛地应用于单处理机和多处理机系统,以及计算机网络中。

P、V操作

操作系统利用信号量实现对进程和资源的控制和管理。信号量的值仅由P、V操作来改。P、V操作是能够实现对临界区管理要求的两条原语,P操作起到了限制一次只有一个进程进入临界区的作用,而V操作将唤醒位于阻塞队列中的头一个进程,使其可以进入临界区,保证了进程在临界区内逗留有限时间。

P原语操作的主要动作是:

1.Semaphore减1;

2.若Semaphore 减1后仍>=0,则进程继续执行。

3.若Semaphore 减1后<0,则进程被阻塞在与该信号相对应的队列中,然后转进程调

度。

V 原语操作的主要动作是:

1. Semaphore 加1;

2. 若Semaphore 加1后仍>0,则进程继续执行。

3. 若Semaphore 加1后<=0,则从信号的等待队列中唤醒一等待进程,然后再返回原进程继续执行或转进程调度。

利用信号量实现前驱关系

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

Begin

parbegin

s1:v(a);v(b);

p(a);s2;v(c);v(d);

p(b);s3;v(e);

p(c);s4;v(f);

p(d);s5;v(g);

p(e); p(f); p(g);s6;end;

Parend

end

设有一个作业由4个进程组成,这4个进程必须按下图所示的次序运行,试用P 、V 操作表达4个进程的同步关系。

2.4 经典进程同步问题

在多道程序环境个,进程同步问题是十分重要的,也是相当有趣的问题,因而吸引了不少学者对它进行研究,由此而产了一系列经典的进程同步问题,其中“生产者—消资者问题”、“读者—写者问题”、“哲学家进餐问题”很具有代表性,是许多实际的进程同步问题的抽象,具有实用价值。

1、生产者-消费者问题

生产者-消费者问题是一个著名的同步问题。其描述的是:有一群生产者进程在生

产产品,并将这些产品提供给消费者进程去消费。为使生产者进程和消费者进程能并发执行,在两者之间设置了一个具有n 个缓冲区的缓冲池,生产者进程将它所生产的产品放入一个缓冲区中,消费者可从一个缓冲区中拿走产品去消费。

生产者与消费者是等效的,只要有空时,生产者可送入,只要有满buf ,消费者可取走。 这是多个进程相互合作的一种抽象,如输出时:计算进程是生产者,打印进程是消费者。 分析:

从资源的观点很容易解这个问题。

1.有空buf生产者才能送数据,可设

计数信号量empty,初值为n。

2.有装满数据的buf,消费者才能取数据,

故设数信号量full,初值为0。

3.对某个buf应互斥使用,

设互斥信号量mutex,初值为1。

如何用P.V操作同步:

此处可以看到:

1.P.V操作必须成对出现

2.两个P操作次序不可颠倒,为什么?

对于n个环行buf的生产者—消费者问题的进程同步算法描述:var mutex, empty, ful1: semaphore:=1,n,0;

buffer:array[0,…,n-1] of item;

in, out : integer:= 0,0;

begin

parbegin

producer: begin

repeat

producer an item in nextp;

wait(empty);

wait(mutex);

buffer(in):=nextp;

in := (in+1) mod n;

signal(mutex);

signal(full);

until false

end

consumer: begin

repeat

wait(full);

wait(mutex);

nextc := buffer(out);

out := (out+1) mod n;

signal(mutex);

signal(empty);

consumer the item in nextc;

until false

end

parend

end

2 哲学家进餐问题

哲学家进餐问题是典型的同步问题。它是由Dijkstra提出并解决的。该问题是描述有五个哲学家,它们的生活方式是交替地进行思考和进餐。哲学家们共用一张圆桌,分别坐在周围的

五张椅子上。在圆桌上有五个碗和五支筷子,平时一个哲学家

进行思考,饥饿时便试图取用其左、右最靠近他的筷子,只有

在他拿到两支筷子时才能进餐。进餐毕,放下筷子又继续思考。

利用记录型信号量解决哲学家进餐问题

经分析可知,筷子是临界资源,用如下信号量数组实现互斥:

var chopstick: array[0,…,4] of semaphore;

所有信号量被初始化为1,第i个哲学家的活动可描述为:

repeat

wait(chopstick[i]);先拿左边的筷子

wait(chopstick[(i + 1) mod 5]);再拿右边的筷子

eat;

signal(chopstick[i]);

signal(chopstick[(i+l) mod 5]);

think;

until false;

问题:哲学家如各自拿起左边的筷子时,就会产生死锁。

对于这样的死锁问题可采取以下几种解决方法:

(1)至多只允许四个哲学家同时进餐,以保证至少有一个哲学家能够进餐,最终总会释放出他所使用过的两支筷子,从而可使更多的哲学家进餐。

(2)仅当哲学家的左、右两支筷子均可用时,才允许他拿起筷子进餐。

(3)规定奇数号哲学家先拿他左边的筷子,然后再去拿他右边的筷子;而偶数号哲学家则相反。按此规定,将是1、2号哲学家竞争1号筷子;3、4号哲学家竞争3号筷子。即五个哲学家都先竞争奇数号筷子,获得后,再去竞争偶数号筷子,最后总会有一个哲学家能获得两支筷子而进餐。

3、读者一写者问题

一个数据文件和记录,可以被多个进程共享,我们把只要求读该文件的进程称为reader进程,把其他进程称为writer进程。允许多个进程同时读一个共享对象,因为读操作不会使数据文件混乱。但不允许一个writer进程和其他reader进程或writer进程同时访问共享对象。

一.利用信号量机制解法:

设置两个信号量,一个整型变量。

写互斥信号量wmutex:用于实现一个写者与其它读写者互斥访问共享对象,事实上,它被第一个进入的读者和最后一个离去的读者使用,中间读者不用。

读互斥信号量rmutex:使读者互斥访问readcount——当前读者进程数。

一个整型变量:readcount 初值为0。

读者—写者问题可描述如下:

semaphore rmutex=1,wmutex=1;

Int readcount=0;

While(true)

wait(rmutex);(rmutex代表的是读进程互斥访问readcount)

if readcount == 0 wait(wmutex);

readcount = readcount + 1;

signal(rmutex);

Perform read operation;

wait(rmutex);

readcount = readcount 一 1;

if readcount = 0 signal(wmutex);

signal(rmutex);

writer: repeat

wait(wmutex);

Perform write operation;

signal(wmutex);

until false;

end

进程通信

进程的互斥与同步就是一种进程间的通信方式。由于进程互斥与同步交换的信息量较少且效率较低,因此称这种通信方式为低级进程通信方式,相应的也将P、V 原语称为两条低级进程通信原语。

第3章处理机调度与死锁

高级调度

?作业控制块JCB过程

每当作业进入系统时,系统便为每个作业建立一个JCB,根据作业类型将它插入相应后备队列中。作业调度程序依据一定的调度算法来调度它们,被调度到的作业将会装入内存。在作业运行期间,系统就按照JCB中的信息对作业进行控制。当一个作业执行结束进入完成状态时,系统负责回收分配给它的资源,撤销它的作业控制块。

低级调度

进程调度可采用下述两种方式:

?1.非抢占方式(Non-Preemptive Mode)

?采用这种调度方式时,一旦把处理机分配给某进程后,便让该进程一直执行,直至该进程完成或发生某事件而被阻塞时,才再把处理机分配给其它进程,决不允许某进程抢占已经分配出去的处理机。

?优点是实现简单、系统开销小,适用于大多数的批处理系统环境。但它难于满足紧急任务的要求:立即执行,因而可能造成难以预料的后果。显然,在要求比较严格的实时系统中不宜采用这种调度方式。

?2.抢占方式(Preemptive Mode)

?这种调度方式,允许调度程序根据某种原则,去停止某个正在执行的进程,将已分配给该进程的处理机,重新分配给另一进程;抢占的原则有:

?(1)时间片原则。各进程按时间片运行,当一个时间片用完后,便停止该进程的执行而重新进行调度。这种原则适用于分时系统、大多数实时系统,以及要求较高的批处理系统。

?(2)优先权原则。通常是对一些重要的和紧急的作业赋予较高的优先权。当这种作业到达时,如果其优先权比正在执行进程的优先权高便停止正在执行的进程,将处理机分配给优先权高的进程,使之执行

?(3)短作业(进程)优先原则,当新到达的作业(进程)比正在执行的作业(进程,明显地短时,将剥夺长作业(进程)的执行,将处理机分配给短作业(进程),使之优先执行。

中级调度

?中级调度又称为中程调度(Medium-Term Scheduling)。引入中级调度的主要目的,是为了提高内存的利用率和系统吞吐量。为此,应使那些暂时不能运行的进程不再占用宝贵的内存空间,而将它们调至外存上去等待,称此时的进程状态为就绪驻外存状态或挂起状态。当这些进程重又具备运行条件且内存又稍有空闲时,由中级调度决定,将外存上的那些重又具备运行条件的就绪进程重新调入内存,并修改其状态为就绪状态,挂在就绪队列上,等待进程调度。

?中级调度实际上就是存储器管理中的对换功能。

调度算法

?先来先服务调度算法(FCFS)

?作业调度和进程调度都可使用,最简单,本质上属于非剥夺方式。

?有利于长作业/进程。显然有利于CPU繁忙型的作业(如通常的科学计算),而不利于I/O繁忙阻的作业/进程(如大多数的事务处理)。

?短作业(进程)优先调度算法(SJF/SPF)

?有利于短作业/进程。平均周转时间短,系统吞吐量高。

?缺点:长作业可能发生“饥饿”现象,也不能保证紧迫性作业(进程)会得到及时处理,用户可能会有意或无意地缩短其作业的估计执行时间。

?优先权调度算法

一、优先权调度算法的类型

为了照顾到紧迫型作业在进入系统后便能获得优先处理引入

最高优先权调度算法,它常被用于批处理系统中作为作业调度算法,也是最常用的进程调度算法。

用于进程调度时,又可分成两种方式:非抢占式优先权算法和抢占式优先权算法,差别在于:一旦出现了另一个优先权更高的进程时,对抢占式,其可抢先运行。

?二、优先权的类型

1.静态优先权优先权是在创建进程时确定的,在进程的整个运行期间保持不变。确定进程优先权的依据有:

(1)进程类型,系统进程高于用户进程,I/O繁忙进程高于CPU

繁忙进程,前台(交互型用户进程)高于后台(批处理进程)。

(2)进程对资源的需求。估计执行时间及内存需要量少

(3)根据用户要求。

静态优先权法简单易行、系统开销小,但某些进程可能长期等待.

?2.动态优先权

?优先权是可以随进程的推进而改变,以便获得更好的调度性能。例如,我们可以规定,在就绪队列中的进程,随其等待时间的增长,其优先权以速率a增加。若所有的进程都具有相同的优先权初值,则显然是最先进入就绪队列的进程,将最先获得处理机。此即FCFS算法;若所有的就绪进程具有各不相同的优先权初值,对于优先权初值低的进程,在等待足够的时间后,其优先权便可能升为最高,从而可以获得处理机执行。当采用抢占式优先权调度算法时,如果再规定正在执行的进程,其优先权以速率b下降,于是便可防止一个长作业长期地垄断处理机。

高响应比优先调度算法

时间片轮转调度算法

?本质上属于剥夺方式,分时系统中无例外采用(为确保响应时间)

?系统使每个进程依次按时间片q轮流的方式执行,q的大小从几ms到几百ms。

当时间片用完时,计时器触发一个中断,重新调度,从而让就绪队列中的所有进程,在一给定的时间内,均能获得一时间片的处理机执行时间。

?时间片大小是关键问题太大,大到每个进程部能在一个时间片内执行完毕,则退化为FCFS算法,过小,进程切换时间比重过大影响CPU使用率。通常要考虑到以下几个因素:

? 1.对响应时间的要求与就绪队列中进程数目

?响应时间T直接与用户(进程)数目N和时间片q成比例,即T = Nq。q正比与响应时间,反比与就绪队列中进程数目。

? 2.计算机的处理能力。速度快,q可小些。

?通常q值是这样决定的:

?批处理系统:80%的CPU周期在一个时间片内完成。

?分时系统:q=T/Nmax T-响应时间上限 Nmax-最大进程数

多级反馈队列调度算法

实时调度

2. 最低松弛优先算法算法(LLF)

该算法是根据任务的紧急的程序,来确定任务的优先级;任务的紧急程序越高,为该任务所赋予的优先级就愈高,以使之优先执行

该算法主要用于可抢占调度方式中

某一进城的松弛度=必要完成时间-其本身运行时间-当前时间

死锁的基本概念

所谓死锁(Deadlock),是指一组进程因竞争资源而造成的一种僵局(Dead1yEmbrace),即每个进程都占有部分资源,同时又需得到已被该组进程中其他占用的资源,若无外力作用,这些进程都将永远处于等待状态。

产生死锁的原因

(1)竞争资源引起进程死锁。

可剥夺和非剥夺资源

竞争非剥夺性资源

竞争临时性资源

(2)进程推进顺序非法。

进程推进顺序合法

进程推进顺序非法

处理死锁的基本方法

1.预防死锁

通过设置限制条件,去破坏产生死锁的四个必要条件中的一个或几个条件,来防止发生死锁。易实现,应用广泛,但源利用率低。

2.避免死锁

产生死锁的四个必要条件有可能成立,但在资源的动态分配过程中,用某种方法去防止系统进入不安全状态,从而避免发生死锁。这种方法只需在事先加以较弱的限制条件,便可获得较高的资源利用率及系统吞吐量,但在实现上有一定的难度。在目前较完善的系统中,常用此方法来避免发生死锁。

3.检测和解除死锁

允许死锁发生,通过检测机构,及时地检测和解除。

有可能使系统获得较好的资源利用率和系统吞吐量,但在实现上难度也最大。

死锁的预防

一、摒弃“请求和保持”条件

缺点:

(1)资源利用率低,有些资源多数时间是空闲不用的;

(2)可能产生“饥饿”现象,如某个进程需要几种竞争激烈的资源,可能老是处于等待状态。

这种方法实际中用的较少。

二、摒弃“不剥夺”条件

三、摒弃“环路等待”条件

这种方法比前两种方法都要好,资源利用率明显提高,但资源类编号顺序要考虑到大多数作业实际使用时的顺序。

系统的安全状态

避免死锁:施加的限制条件较弱,可获得满意的系统性能。在该方法中把系统的状态分为安全状态和不安全状态,只要能使系统始终处于安全状态,便可避免发生死锁。

一、安全状态

此方法允许进程动态地申请资源,系统在进行资源分配之前,先计算资源分配的安全性。若此次分配不会导致系统进入不安全状态,便将资源分配给进程;否则,进程等待。

避免死锁的实质在于:如何使系统不进入不安全状态。

所谓死锁:

是指多个进程在运行过程中因争夺资源而造成的一种僵局,若无外力作用,这些进程都将无法再向前推进。

必要条件:

互斥条件、请求和保持、不剥夺条件、环路等待条件。

处理死锁的基本方法:

(1)预防死锁(2)避免死锁

(3)检测死锁(4)解除死锁

此时系统不会发生死锁的原因是死锁产生的必要条件之一——循环等待条件不可能成立。因为多个进程之间只可能存在占据较低序号资源的进程等待占据较高序号资源的进程释放资源的情况,但不可能存在反向的等待,因此,它们之间绝对不会形成循环等待链。

预防死锁的方法:摒弃“请求和保持”条件、摒弃“不剥夺”条件、摒弃“环路等待”条件。利用银行家算法避免死锁

第四章存储器管理

分区分配算法

(1)首次适应算法FF。 (2) 循环首次适应算法,该算法是由首次适应算法演变而成的。

(3) 最佳适应算法。(4)最坏适应算法(5)快速适应算法

计算机操作系统知识点总结

计算机操作系统知识点总结 导读:我根据大家的需要整理了一份关于《计算机操作系统知识点总结》的内容,具体内容:计算机操作系统考试是让很多同学都觉得头疼的事情,我们要怎么复习呢?下面由我为大家搜集整理了计算机操作系统的知识点总结,希望对大家有帮助!:第一章1、操作系统的定义、目标... 计算机操作系统考试是让很多同学都觉得头疼的事情,我们要怎么复习呢?下面由我为大家搜集整理了计算机操作系统的知识点总结,希望对大家有帮助! :第一章 1、操作系统的定义、目标、作用 操作系统是配置在计算机硬件上的第一层软件,是对硬件系统的首次扩充。设计现代OS的主要目标是:方便性,有效性,可扩充性和开放性. OS的作用可表现为: a. OS作为用户与计算机硬件系统之间的接口;(一般用户的观点) b. OS作为计算机系统资源的管理者;(资源管理的观点) c. OS实现了对计算机资源的抽象. 2、脱机输入输出方式和SPOOLing系统(假脱机或联机输入输出方式)的联系和区别 脱机输入输出技术(Off-Line I/O)是为了解决人机矛盾及CPU的高速性和I/O设备低速性间的矛盾而提出的.它减少了CPU的空闲等待时间,提高了I/O速度.

由于程序和数据的输入和输出都是在外围机的控制下完成的,或者说,它们是在脱离主机的情况下进行的,故称为脱机输入输出方式;反之,在主机的直接控制下进行输入输出的方式称为联机(SPOOLing)输入输出方式 假脱机输入输出技术也提高了I/O的速度,同时还将独占设备改造为共享设备,实现了虚拟设备功能。 3、多道批处理系统需要解决的问题 处理机管理问题、内存管理问题、I/O设备管理问题、文件管理问题、作业管理问题 4、OS具有哪几个基本特征?它的最基本特征是什么? a. 并发性(Concurrence),共享性(Sharing),虚拟性(Virtual),异步性(Asynchronism). b. 其中最基本特征是并发和共享. c. 并发特征是操作系统最重要的特征,其它三个特征都是以并发特征为前提的。 5、并行和并发 并行性和并发性是既相似又有区别的两个概念,并行性是指两个或多个事件在同一时刻发生;而并发性是指两个或多少个事件在同一时间间隔内发生。 6、操作系统的主要功能,各主要功能下的扩充功能 a. 处理机管理功能: 进程控制,进程同步,进程通信和调度. b. 存储管理功能:

现代操作系统(第三版)答案

MODERN OPERATING SYSTEMS SECOND EDITION PROBLEM SOLUTIONS ANDREW S.TANENBAUM Vrije Universiteit Amsterdam,The Netherlands PRENTICE HALL UPPER SADDLE RIVER,NJ 07458课后答案网 w w w .k h d a w .c o m

SOLUTIONS TO CHAPTER 1PROBLEMS 1.An operating system must provide the users with an extended (i.e.,virtual)machine,and it must manage the I/O devices and other system resources. 2.Multiprogramming is the rapid switching of the CPU between multiple processes in memory.It is commonly used to keep the CPU busy while one or more processes are doing I/O. 3.Input spooling is the technique of reading in jobs,for example,from cards,onto the disk,so that when the currently executing processes are ?nished,there will be work waiting for the CPU.Output spooling consists of ?rst copying printable ?les to disk before printing them,rather than printing directly as the output is generated.Input spooling on a personal computer is not very likely,but output spooling is. 4.The prime reason for multiprogramming is to give the CPU something to do while waiting for I/O to complete.If there is no DMA,the CPU is fully occu-pied doing I/O,so there is nothing to be gained (at least in terms of CPU utili-zation)by multiprogramming.No matter how much I/O a program does,the CPU will be 100percent busy.This of course assumes the major delay is the wait while data are copied.A CPU could do other work if the I/O were slow for other reasons (arriving on a serial line,for instance). 5.Second generation computers did not have the necessary hardware to protect the operating system from malicious user programs. 6.It is still alive.For example,Intel makes Pentium I,II,and III,and 4CPUs with a variety of different properties including speed and power consumption.All of these machines are architecturally compatible.They differ only in price and performance,which is the essence of the family idea. 7.A 25×80character monochrome text screen requires a 2000-byte buffer.The 1024×768pixel 24-bit color bitmap requires 2,359,296bytes.In 1980these two options would have cost $10and $11,520,respectively.For current prices,check on how much RAM currently costs,probably less than $1/MB. 8.Choices (a),(c),and (d)should be restricted to kernel mode. 9.Personal computer systems are always interactive,often with only a single user.Mainframe systems nearly always emphasize batch or timesharing with many users.Protection is much more of an issue on mainframe systems,as is ef?cient use of all resources. 10.Every nanosecond one instruction emerges from the pipeline.This means the machine is executing 1billion instructions per second.It does not matter at all how many stages the pipeline has.A 10-stage pipeline with 1nsec per 课后答案网 w w w .k h d a w .c o m

操作系统知识点整理

第一章操作系统引论 操作系统功能: 1. 资源管理:协调、管理计算机的软、硬件资源,提高其利用率。 2. 用户角度:为用户提供使用计算机的环境和服务。 操作系统特征:1.并发性:指两个或多个事件在同一时间间隔内发生。 2.共享性:资源可供内存中多个并发执行的进程(线程)共同使用 3.虚拟性:是指通过某种技术把一个物理实体变为若干个逻辑上的对应物 在操作系统中,虚拟的实现主要是通过分时使用的方法。 4.异步性:进程是以人们不可预知的速度向前推进,此即进程的异步性 客户/服务器模式的优点: 1.提高了系统的灵活性和可扩充性 2.提高了OS的可靠性 3.可运行于分布式系统中 微内核的基本功能: 进程管理、进程间通信、存储器管理、低级I/O功能。 第二章进程 程序和进程区别:程序是静止的,进程是动态的,进程包括程序和程序处理的对象 程序顺序执行:顺序性,封闭性,可再现性 程序并发执行:间断性,无封闭性,可再现性 进程:1.进程是可并发执行的程序的一次执行过程; 2.是系统进行资源分配和调度的一个独立的基本单位和实体; 3.是一个动态的概念。 进程的特征: 1.动态性: 进程是程序的一次执行过程具有生命期; 它可以由系统创建并独立地执行,直至完成而被撤消 2.并发性; 3.独立性; 4.异步性; 进程的基本状态: 1.执行状态; 2.就绪状态; 3.阻塞状态; 进程控制块PCB:记录和描述进程的动态特性,描述进程的执行情况和状态变化。 是进程存在的唯一标识。 进程运行状态: 1.系统态(核心态,管态)具有较高的访问权,可访问核心模块。 2.用户态(目态)限制访问权 进程间的约束关系: 1.互斥关系 进程之间由于竞争使用共享资源而产生的相互约束的关系。

《现代操作系统第四版》 第六章 答案

第四章文件系统习题 Q1: 给出文件/etc/passwd的五种不同的路径名。(提示:考虑目录项”.”和”…”。) A: /etc/passwd /./etc/passwd /././etc/passwd /./././etc/passwd /etc/…/etc/passwd /etc/…/etc/…/etc/passwd /etc/…/etc/…/etc/…/etc/passwd /etc/…/etc/…/etc/…/etc/…/etc/passwd Q2:在Windows中,当用户双击资源管理器中列出的一个文件时,就会运行一个程序,并以这个文件作为参数。操作系统要知道运行的是哪个程序,请给出两种不同的方法。 A:Windows使用文件扩展名。每种文件扩展名对应一种文件类型和某些能处理这种类型的程序。另一种方式时记住哪个程序创建了该文件,并运行那个程序。Macintosh以这种方式工作。

Q3:在早期的UNIX系统中,可执行文件(a.out)以一个非常特別的魔数开始,这个数不是随机选择的。这些文件都有文件头,后面是正文段和数据段。为什么要为可执行文件挑选一个非常特别的魔数,而其他类型文件的第一个字反而有一个或多或少是随机选择的魔数? A:这些系统直接把程序载入内存,并且从word0(魔数)开始执行。为了避免将header作为代码执行,魔数是一条branch指令,其目标地址正好在header之上。按这种方法,就可能把二进制文件直接读取到新的进程地址空间,并且从0 开始运行。 Q4: 在UNIX中open系统调用绝对需要吗?如果没有会产生什么结果? A: open调用的目的是:把文件属性和磁盘地址表装入内存,便与后续调用的快速访问。 首先,如果没有open系统调用,每次读取文件都需要指定要打开的文件的名称。系统将必须获取其i节点,虽然可以缓存它,但面临一个问题是何时将i节点写回磁盘。可以在超时后写回磁盘,虽然这有点笨拙,但它可能起作用。 Q5:在支持顺序文件的系统中总有一个文件回绕操作,支持随机存取

操作系统知识点总结

操作系统是一组控制和管理计算机硬件和软件资源,合理地对各类作业进行调度,以及方便用户使用的程序的集合。 虚拟机:在裸机的基础上,每增加一层新的操作系统的软件,就变成了功能更为强大的虚拟机或虚机器。 操作系统的目标:1. 方便性2. 有效性3. 可扩充性4. 开放性 操作系统的作用:OS作为用户与计算机硬件系统之间的接口;OS作为计算机系统资源的管理者;OS实现了对计算机资源的抽象(作扩充机器)。 操作系统的特征:并发性;共享性;虚拟性;异步性 推动操作系统发展的主要动力:不断提高计算机资源利用率;方便用户;器件的不断更新换代;计算机体系结构的不断发展。 人工操作方式的特点:用户独占全机;CPU等待人工操作;独占性;串行性。缺点:计算机的有效机时严重浪费;效率低 脱机I/O方式的主要优点:减少了CPU的空闲时间;提高I/O速度。 单道批处理系统的特征:自动性; 顺序性;单道性 多道批处理系统原理:用户所提交的作业都先存放在外存上并排成一个队列,称为“后备队列”;然后,由作业调度程序按一定的算法从后备队列中选择若干个作业调入存,使它们共享CPU和系统中的各种资源。 多道批处理系统的优缺点资源利用率高;系统吞吐量大;可提高存和I/O设备利用率;平均周转时间长;无交互能力 多道批处理系统需要解决的问题(1)处理机管理问题(2)存管理问题(3)I/O设备管理问题4)文件管理问题(5)作业管理问题 分时系统:在一台主机上连接了多个带有显示器和键盘的终端,同时允许多个用户通过自己的终端,以交互方式使用计算机,共享主机中的资源。 时间片:将CPU的时间划分成若干个片段,称为时间片,操作系统以时间片为单位,轮流为每个终端用户服务 实时系统与分时系统特征的比较:多路性;独立性;及时性;交互性;可靠性 操作系统的特征:并发性;共享性;虚拟性;异步性 操作系统的主要功能:处理机管理;存储器管理;设备管理;文件管理;作业管理 对处理机管理,可归结为对进程的管理:进程控制(创建,撤消,状态转换);进程同步(互斥,同步);进程通信;进程调度(作业调度,进程调度)。 存储器管理功能:存分配(最基本);存保护;地址映射;存扩充 设备管理功能:设备分配;设备处理(相当于启动);缓冲管理;虚拟设备 文件管理功能:文件存储空间管理;目录管理;文件读写管理;文件保护。 用户接口:命令接口;程序接口;图形接口 传统的操作系统结构:无结构OS;模块化OS结构;分层式OS结构 模块化操作系统结构:操作系统是由按其功能划分为若干个具有一定独立性和大小的模块。每个模块具有某个方面的管理功能,规定好模块之间的接口。 微核的基本功能:进程管理-存储器管理-进程通信管理-I/O设备管理 进程的特征:动态性(最基本);并发性;异步性;独立性;结构特征(程序段,数据段,进程控制块PCB) 进程的基本属性:可拥有资源的独立单位;可独立调度和分配的基本单位。 进程控制块的基本组成:进程标识符;处理机的状态;进程调度所需信息;进程控制信息。进程控制一般是由操作系统的核中的原语来实现 临界资源:如打印机、磁带机等一段时间只允许一个进程进行使用的资源。

现代操作系统试卷及其答案

1.一般用户更喜欢使用的系统是()。 A.手工操作 B.单道批处理 C.多道批处理 D.多用户分时系统 2. 与计算机硬件关系最密切的软件是()。 A.编译程序 B.数据库管理系统 C.游戏程序 D.OS 3. 现代OS具有并发性和共享性,是()的引入导致的。 A.单道程序 B. 磁盘 C. 对象 D.多道程序 4. 早期的OS主要追求的是()。 A.系统的效率 B.用户的方便性 C.可移植 D.可扩充性 5.()不是多道程序系统 A.单用户单任务 B.多道批处理系统 C.单用户多任务 D.多用户分时系统 6.()是多道操作系统不可缺少的硬件支持。 A.打印机 B.中断机构 C.软盘 D.鼠标 7. 特权指令可以在()执行。 A.目态 B.浏览器中 C.任意的时间 D.进程调度中 8. 没有了()计算机系统就启动不起来。 A.编译器 B.DBMS C.OS D.浏览器 9. 通道能够完成()之间的数据传输。 A.CPU与外设 B.内存与外设 C.CPU与主存 D.外设与外设 10. 操作系统的主要功能有()。 A.进程管理、存储器管理、设备管理、处理机管理 B.虚拟存储管理、处理机管理、进程调度、文件系统 C.处理机管理、存储器管理、设备管理、文件系统 D.进程管理、中断管理、设备管理、文件系统 11. 单处理机计算机系统中,()是并行操作的。 A.处理机的操作与通道的操作是并行的 B.程序与程序 C.主程序与子程序 D.用户程序与操作系统程序 12. 处理机的所有指令可以在()执行。 A.目态 B.浏览器中

C.任意的时间 D.系统态 13.()功能不是操作系统直接完成的功能。 A.管理计算机硬盘 B.对程序进行编译 C.实现虚拟存储器 D.删除文件 14. 要求在规定的时间内对外界的请求必须给予及时响应的OS是()。 A.多用户分时系统 B.实时系统 C.批处理系统时间 D.网络操作系统 15. 操作系统是对()进行管理的软件。 A.硬件 B.软件 C.计算机资源 D.应用程序 16.()对多用户分时系统最重要。 A.实时性 B.交互性 C.共享性 D.运行效率 17.()对多道批处理系统最重要。 A.实时性 B.交互性 C.共享性 D.运行效率 18. ( )对实时系统最重要。 A.及时性 B.交互性 C.共享性 D.运行效率 19. Windows98是()操作系统。 A.多用户分时 B.批处理系统 C.单用户多任务 D.单用单任务 20. 分布式系统与网络系统的主要区别是() A.并行性 B.透明性 C.共享性 D.复杂性 21. ( )操作系统允许在一台主机上同时连接多台终端,多个用户可以通过各自的终端同时交互地使用计算机。 A.网络 B.分布式 C.分时 D.实时 22. 如果分时操作系统的时间片一定,那么(),则响应时间越长。 A.用户数越少 B.用户数越多 C.内存越小 D.内存越大 23. 下面6个系统中,必须是实时操作系统的有()个。 ·航空订票系统 ·过程控制系统 ·机器口语翻译系统 ·计算机辅助系统

操作系统windows知识点

1.知识要点 1.1.Windwos账号体系 分为用户与组,用户的权限通过加入不同的组来授权 用户: 组: 1.2.账号SID 安全标识符是用户帐户的内部名,用于识别用户身份,它在用户帐户创建时由系统自动产生。在Windows系统中默认用户中,其SID的最后一项标志位都是固定的,比如administrator的SID最后一段标志位是500,又比如最后一段是501的话则是代表GUEST的帐号。 1.3.账号安全设置 通过本地安全策略可设置账号的策略,包括密码复杂度、长度、有效期、锁定策略等: 设置方法:“开始”->“运行”输入secpol.msc,立即启用:gpupdate /force

1.4.账号数据库SAM文件 sam文件是windows的用户帐户数据库,所有用户的登录名及口令等相关信息都会保存在这个文件中。可通过工具提取数据,密码是加密存放,可通过工具进行破解。 1.5.文件系统 NTFS (New Technology File System),是WindowsNT 环境的文件系统。新技术文件系统是Windows NT家族(如,Windows 2000、Windows XP、Windows Vista、Windows 7和windows 8.1)等的限制级专用的文件系统(操作系统所在的盘符的文件系统必须格式化为NTFS的文件系统,4096簇环境下)。NTFS取代了老式的FAT文件系统。 在NTFS分区上,可以为共享资源、文件夹以及文件设置访问许可权限。许可的设置包括两方面的内容:一是允许哪些组或用户对文件夹、文件和共享资源进行访问;二是获得访问许可的组或用户可以进行什么级别的访问。访问许可权限的设置不但适用于本地计算机的用户,同样也应用于通过网络的共享文件夹对文件进行访问的网络用户。与FAT32文件系统下对文件夹或文件进行访问相比,安全性要高得多。另外,在采用NTFS格式的Win 2000中,

计算机操作系统知识点总结一

第一章 ★1.操作系统的概念:通常把操作系统定义为用以控制和管理计算机系统资源方便用户使用的程序和数据结构的集合。★2.操作系统的基本类型:批处理操作系统、分时操作系统、实时操作系统、个人计算机操作系统、网络操作系统、分布式操作系统。 ①批处理操作系统 特点: 用户脱机使用计算机 成批处理 多道程序运行 优点: 由于系统资源为多个作业所共享,其工作方式是作业之间自动调度执行。并在运行过程中用户不干预自己的作业,从而大大提高了系统资源的利用率和作业吞吐量。 缺点: 无交互性,用户一旦提交作业就失去了对其运行的控制能力;而且是批处理的,作业周转时间长,用户使用不方便。 批处理系统中作业处理及状态 ②分时操作系统(Time Sharing OS) 分时操作系统是一个联机的多用户交互式的操作系统,如UNIX是多用户分时操作系统。 分时计算机系统:由于中断技术的使用,使得一台计算机能连接多个用户终端,用户可通过各自的终端使用和控制计算机,我们把一台计算机连接多个终端的计算机系统称为分时计算机系统,或称分时系统。 分时技术:把处理机的响应时间分成若于个大小相等(或不相等)的时间单位,称为时间片(如100毫秒),每个终端用户获得CPU,就等于获得一个时间片,该用户程序开始运行,当时间片到(用完),用户程序暂停运行,等待下一次运行。 特点: 人机交互性好:在调试和运行程序时由用户自己操作。 共享主机:多个用户同时使用。 用户独立性:对每个用户而言好象独占主机。 ③实时操作系统(real-time OS) 实时操作系统是一种联机的操作系统,对外部的请求,实时操作系统能够在规定的时间内处理完毕。 特点: 有限等待时间 有限响应时间 用户控制 可靠性高 系统出错处理能力强 设计实时操作系统要考虑的一些因素: (1)实时时钟管理 (2)连续的人—机对话 (3)过载 (4) 高度可靠性和安全性需要采取冗余措施。 ④通用操作系统 同时兼有多道批处理、分时、实时处理的功能,或其中两种以上的功能。 ⑤个人计算机上的操作系统

操作系统复习题整理

第一章 1.说明分布式系统相对于集中式系统的优点和缺点。从长远的角度看,推动分布式系统发展的主要动力 是什么? 答:相对于集中式系统,分布式系统的优点:1)从经济上,微处理机提供了比大型主机更好的性能价格比;2)从速度上,分布式系统总的计算能力比单个大型主机更强;3)从分布上,具有固定的分布性,一些应用涉及到空间上分散的机器;4)从可靠性上,具有极强的可靠性,如果一个极强崩溃,整个系统还可以继续运行;5)从前景上,分布式操作系统的计算能力可以逐渐有所增加。 分布式系统的缺点:1)软件问题,目前分布式操作系统开发的软件太少;2)通信网络问题,一旦一个系统依赖网络,那么网络的信息丢失或饱和将会抵消我们通过建立分布式系统所获得的大部分优势;3)安全问题,数据的易于共享也容易造成对保密数据的访问。 推动分布式系统发展的主要动力:尽管分布式系统存在一些潜在的不足,但是从长远的角度看,推动分布式系统发展的主要动力是大量个人计算机的存在和人们共同工作于信息共享的需要,这种信息共享必须是以一种方便的形式进行。而不受地理或人员,数据以及机器的物理分布的影响 2.多处理机系统和多计算机系统有什么不同? 答:共享存储器的计算机系统叫多处理机系统,不共享存储器的计算机系统为多计算机系统。它们之间的本质区别是在多处理机系统中,所有CPU共享统一的虚拟地址空间,在多计算机系统中,每个计算机有它自己的存储器。 多处理机系统分为基于总线的和基于交换的。基于总线的多处理机系统包含多个连接到一条公共总线的CPU以及一个存储器模块。基于交换的多处理机系统是把存储器划分为若干个模块,通过纵横式交换器将这些存储器模块连接到CPU上。 多计算机系统分为基于总线的和基于交换的系统。在基于总线的多计算机系统中,每个CPU都与他自身的存储器直接相连,处理器通过快速以太网这样的共享多重访问网络彼此相连。在基于交换的多计算机系统中,处理器之间消息通过互联网进行路由,而不是想基于总线的系统中那样通过广播来发送。 3.真正的分布式操作系统的主要特点是什么? 必须有一个单一的、全局的进程间通信机制。进程管理必须处处相同。文件系统相同。使用相同的系统调用接口。 4.分布式系统的透明性包括哪几个方面,并解释透明性问题对系统和用户的重要性。 答:对于分布式系统而言,透明性是指它呈现给用户或应用程序时,就好像是一个单独是计算机系统。 具体说来,就是隐藏了多个计算机的处理过程,资源的物理分布。 具体类型:

操作系统重点知识总结

《操作系统》重点知识总结 请注意:考试范围是前6章所有讲授过内容,下面所谓重点只想起到复习引领作用。 第一章引论 1、操作系统定义操作系统是一组控制和管理计算机软件和硬件合理进行作业调度方便 用户管理的程序的集合 2、操作系统的目标有效性、方便性、可扩充性、开放性、 3、推动操作系统发展的主要动力不断提高计算机资源的利用率、方便用户、器件的不 断更新和换代、计算机体系结构的不断发展 4、多道批处理系统的特征及优缺点用户所提交的作业都先存放在外存上并排成一个队 列,称为后备队列。然后作业调度程序按一定的算法从后备队列中选择若干个作业调入内存,使他们共享cpu和系统内存。优点:资源利用率高、系统吞吐量打缺点:平均周转时间长、无交互能力 5、操作系统的基本特征并发性(最重要的特征)、共享性、虚拟性、异步性 6、操作系统的主要功能设别管理功能、文件管理功能、存储器管理功能、处理机管理 功能 7、O S的用户接口包括什么?用户接口、程序接口(由一组系统调用组成) 第二章进程管理 1、程序顺序执行时的特征顺序性、封闭性、可再现性 2、程序并发执行的特征间断性、失去封闭性、不可再现性 3、进程及其特征进程是资源调度和分配的基本单位,是能够独立运行的活动实体。 由一组机器指令、数据、堆栈等组成。特征:结构特征、动态性、并发性、独 立性、异步性 4、进程的基本状态及其转换p38 5、引入挂起状态的原因终端用户请求、父进程请求、负荷调节需要、操作系统 的需要 6、具有挂起状态的进程状态及其转换p39 7、进程控制块及其作用进程数据块是一种数据结构,是进程实体的一部分,是操 作系统中最重要的记录型数据结构。作用:使在一个多道程序环境下不能独立运 行的程序成为一个能够独立运行的基本单位,能够与其他进程并发执行 8、进程之间的两种制约关系直接相互制约关系、间接相互制约关系 9、临界资源是指每次只能被一个进程访问的资源 10、临界区是指每次进程中访问临界资源的那段代码 11、同步机构应遵循的规则空闲让进、忙则等待、有限等待、让权等待 12、利用信号量实现前驱关系p55/ppt 13、经典同步算法p58/ppt 14、进程通信的类型共享存储器系统、消息传递系统、管道通信系统 15、线程的定义是一种比进程更小,能够独立运行的基本单位用来提高系统内

计算机操作系统知识点总结重点题型答案

计算机操作系统复习资料 1.操作系统的定义 操作系统(Operating System,简称OS)是管理计算机系统的全部硬件资源包括软件资源及数据资源;控制程序运行;改善人机界面;为其它应用软件提供支持等,使计算机系统所有资源最大限度地发挥作用,为用户提供方便的、有效的、友善的服务界面。 操作系统通常是最靠近硬件的一层系统软件,它把硬件裸机改造成为功能完善的一台虚拟机,使得计算机系统的使用和管理更加方便,计算机资源的利用效率更高,上层的应用程序可以获得比硬件提供的功能更多的支持。 操作系统是一个庞大的管理控制程序,大致包括5个方面的管理功能:进程与处理机管理、作业管理、存储管理、设备管理、文件管理。 2.操作系统的作用 1)OS作为用户与计算机硬件系统之间的接口 2)OS作为计算机系统资源的管理者 3)OS实现了对计算机资源的抽象 3.操作系统的基本特征 1)并发 2)共享 3)虚拟 4)异步 4.分时系统的概念 把计算机的系统资源(尤其是CPU时间)进行时间上的分割,每个时间段称为一个时间片,每个用户依次轮流使用时间片,实现多个用户分享同一台主机的操作系统。 5.分时系统要解决的关键问题(2个) 1)及时接收 2)及时处理 6.并发性的概念 并发性是指两个或多个事件在同一事件间隔内发生。在多道程序环境下,并发性是指在一段时间内宏观上有多个程序在同时运行,但在单处理机系统中,每一时刻却仅能有一道程序执行,故微观上这些程序只能是分时的交替执行。 7.程序顺序执行的特征和并发执行的特征 顺序执行的特点: 顺序性封闭性可再现性 程序并发执行的特点:

1)、间断性(失去程序的封闭性) 2)、不可再现性 任何并发执行都是不可再现 3)、进程互斥(程序并发执行可以相互制约) 8.进程的定义 进程是指在系统中能独立运行并作为资源分配的基本单位。 为了使参与并发执行的每个程序(含数据)都能独立的运行,在操作系统中必须为之配置一个专门的数据结构,称为进程控制块(PCB)。系统利用PCB来描述进程的基本情况和活动过程,进而控制和管理进程。 9.进程的组成部分 进程是由一组机器指令,数据和堆栈组成的,是一个能独立运行的活动实体。 由程序段,相关的数据段和PCB三部分便构成了进程实体(又称进程映像)。 10.进程的状态(状态之间的变化) 就绪状态、执行状态、阻塞状态。 处于就绪状态的进程,在调度程序为之分配了处理机之后,该进程便可以执行,相应的,他就由就绪状态转变为执行状态。 正在执行的进程,如果因为分配给它的时间片已经用完而被暂停执行时,该进程便由执行状态又回到就绪状态;如果因为发生某事件而使进程的执行受阻(如进程请求访问临界资源,而该资源正在被其它进程访问),使之无法继续执行,该进程将有执行状态转变为阻塞状态。处于阻塞状态的进程,在获得了资源后,转变为就绪状态。 11.进程同步的概念 进程同步是是并发执行的诸进程之间能有效地相互合作,从而使程序的执行具有可再现性,简单的说来就是:多个相关进程在执行次序上的协调。 12.PV原语的作用

操作系统作业参考答案及其知识点

操作系统作业参考答案及其知识点 第一章 思考题: 10、试叙述系统调用与过程调用的主要区别? 答: (一)、调用形式不同 (二)、被调用代码的位置不同 (三)、提供方式不同 (四)、调用的实现不同 提示:每个都需要进一步解释,否则不是完全答案 13、为什么对作业进程批处理可以提高系统效率? 答:批处理时提交程序、数据和作业说明书,由系统操作员把作业按照调度策略,整理为一批,按照作业说明书来运行程序,没有用户与计算机系统的交互;采用多道程序设计,可以使CPU和外设并行工作,当一个运行完毕时系统自动装载下一个作业,减少操作员人工干预时间,提高了系统的效率。 18、什么是实时操作系统?叙述实时操作系统的分类。 答:实时操作系统(Real Time Operating System)指当外界事件或数据产生时,能接收并以足够快的速度予以处理,处理的结果又能在规定时间内来控制监控的生产过程或对处理系统做出快速响应,并控制所有实时任务协调一致运行的操作系统。 有三种典型的实时系统: 1、过程控制系统(生产过程控制) 2、信息查询系统(情报检索) 3、事务处理系统(银行业务) 19、分时系统中,什么是响应时间?它与哪些因素有关? 答:响应时间是用户提交的请求后得到系统响应的时间(系统运行或者运行完毕)。它与计算机CPU的处理速度、用户的多少、时间片的长短有关系。 应用题: 1、有一台计算机,具有1MB内存,操作系统占用200KB,每个用户进程占用200KB。如果用户进程等待I/0的时间为80%,若增加1MB内存,则CPU的利用率提高多少? 答:CPU的利用率=1-P n,其中P为程序等待I/O操作的时间占其运行时间的比例1MB内存时,系统中存放4道程序,CPU的利用率=1-(0.8)4=59% 2MB内存时,系统中存放9道程序,CPU的利用率=1-(0.8)9=87% 所以系统CPU的利用率提高了28% 2、一个计算机系统,有一台输入机和一台打印机,现有两道程序投入运行,且程序A先开始做,程序B后开始运行。程序A的运行轨迹为:计算50ms,打印100ms,再计算50ms,打印100ms,结束。程序B的运行轨迹为:计算50ms,输入80ms,再计算100ms,结束。

现代操作系统第四版 第二章 答案

现代操作系统第二章进程与线程习题 1. 图2-2中给出了三个进程状态,在理论上,三个状态可以有六种转换,每个状态两个。但是,图中只给出了四种转换。有没有可能发生其他两种转换中的一个或两个 A:从阻塞到运行的转换是可以想象的。假设某个进程在I/O上阻塞,而且I/O结束,如果此时CPU空闲,该进程就可以从阻塞态直接转到运行态。而另外一种转换(从阻塞态到就绪态)是不可能的。一个就绪进程是不可能做任何会产生阻塞的I/O或者别的什么事情。只有运行的进程才能被阻塞。 2.假设要设计一种先进的计算机体系结构,它使用硬件而不是中断来完成进程切换。CPU需要哪些信息请描述用硬件完成进程切换的工作过程。 A:应该有一个寄存器包含当前进程表项的指针。当I/O结束时,CPU将把当前的机器状态存入到当前进程表项中。然后,将转到中断设备的中断向量,读取另一个过程表项的指针(服务例程),然后,就可以启动这个进程了。 3.当代计算机中,为什么中断处理程序至少有一部分是用汇编语言编写的 A:通常,高级语言不允许访问CPU硬件,而这种访问是必需的。例如,中断处理程序可能需要禁用和启用某个特定设备的中断服务,或者处理进程堆栈区的数据。另外,中断服务例程需要尽快地执行。(补充)主要是出于效率方面的考量。中断处理程序需要在尽量短的时间内完成所需的必要处理,尽量减少对线程/程序流造成的影响,因此大部分情况下用汇编直接编写,跳过了通用编译过程中冗余的适配部分。 4.中断或系统调用把控制转给操作系统时,为什么通常会用到与被中断进程的栈分离的内核栈 A:内核使用单独的堆栈有若干的原因。其中两个原因如下:首先,不希望操作系统崩溃,由于某些用户程序不允许足够的堆栈空间。第二,如果内核将数据保留在用户空间,然后从系统调用返回,那么恶意的用户可能使用这些数据找出某些关于其它进程的信息。 5.一个计算机系统的内存有足够的空间容纳5个程序。这些程序有一半的时间处于等待I/O的空闲状态。请问CPU时间浪费的比例是多少 A:^5 =%

操作系统原理知识点总结

第一章绪论 1、操作系统是一组控制和管理计算机硬件和软件资源、合理的对各类作业进行调度以方便用户的程序集合 ※2、操作系统的目标:方便性、有效性、可扩展性、开发性 ※3、操作系统的作用:作为计算机硬件和用户间的接口、作为计算机系统资源的管理者、作为扩充机器 4、单批道处理系统:作业处理成批进行,内存中始终保持一道作业(自动性、顺序性、单道性) 5、多批道处理系统:系统中同时驻留多个作业,优点:提高CPU利用率、提高I/O设备和内存利用率、提高系统吞吐量(多道性、无序性、调度性) 6、分时技术特性:多路性、交互性、独立性、及时性,目标:对用户响应的及时性 7、实时系统:及时响应外部请求,在规定时间内完成事件处理,任务类型:周期性、非周期性或硬实时任务、软实时任务 ※8、操作系统基本特性:并发、共享、虚拟、异步性 并行是指两或多个事件在同一时刻发生。 并发是两或多个事件在同一时间间隔内发生。 互斥共享:一段时间只允许一个进程访问该资源 同时访问:微观上仍是互斥的 虚拟是指通过某种技术把一个物理实体变为若干个逻辑上的对应物。 异步是指运行进度不可预知。 共享性和并发性是操作系统两个最基本的特征 ※9、操作系统主要功能:处理机管理、存储器管理、设备管理、文件管理、用户管理 第二章进程的描述和控制 ※1、程序顺序执行特征:顺序性、封闭性、可再现性 ※2、程序并发执行特征:间断性、失去封闭性、不可再现性 3、前趋图:有向无循环图,用于描述进程之间执行的前后关系 表示方式: (1)p1--->p2 (2)--->={(p1,p2)| p1 必须在p2开始前完成} 节点表示:一条语句,一个程序段,一进程。(详见书P32) ※4、进程的定义: (1)是程序的一次执行过程,由程序段、数据段、程序控制块(PBC) 三部分构成,总称“进程映像” (2)是一个程序及其数据在处理机上顺序执行时所发生的活动 (3)是程序在一个数据集合上的运行过程 (4)进程是进程实体的运行过程,是系统进行资源分配和调度的 一个独立单位 进程特征:动态性、并发性、独立性、异步性 由“创建”而产生,由“调度”而执行;由得不到资源而“阻塞”,

操作系统知识点整理(完整版)

第一章操作系统概述 1)一个完整的计算机系统是由硬件系统和软件系统两大部分组成 2)计算机软件是指程序和与程序相关的文档的集合 3)按功能可把软件分为“系统软件”和“应用软件”两部分 系统软件:操作系统语言处理程序,数据库管理系统 应用软件:各种管理软件,用于工程计算的软件包,辅助设计软件4)通常把未配置任何软件的计算机称为“裸机” 5)操作系统可以被看作是计算机系统的核心,统管整个系统资源,制定各种资源的分配策略,调度系统中运行的用户程序,协调它们对资源的需求,从而使整个系统在高效、有序的环境里工作。 6)发展的动力: (1)提高计算机资源的利用率的需要 (2)方便用户使用计算机的需要 (3)硬件技术不断发展的需要 (4)计算机体系结构发展的需要 7)操作系统是在“裸机”上加载的第一层软件,是对计算机硬件系统功能的首次扩充8)操作系统的定义: 操作系统是控制和管理计算机硬件和软件资源,合理地组织计算机工作流程,以及方便用户使用计算机的一个大型程序 9)操作系统的功能: 处理机管理:进程控制,进程同步,进程通信、调度、实施CPU分配 存储器管理:内存分配,内存保护,地址映射,内存扩充 设备管理:缓冲管理,设备分配,设备管理 文件管理:存储空间管理,目录管理,读写管理和保护 与用户有关的接口:用户接口,程序接口,人机交互 10)操作系统另一种定义:操作系统是一组能有效地组织和管理计算机硬件和软件资源,合理地对各类作业进行调度,以及方便用户使用的程序的集合 操作系统的种类: 1)单道批处理系统

特点:单路性、独占性、自动性、封闭性、顺序性 缺点:系统的资源得不到充分的利用 2)多道批处理系统 特点:多路性、共享性、自动型、封闭性、无序性、调度性 好处: ?提高CPU的利用率 ?提高内存和I/O设备的利用率 ?增加系统吞吐量 缺点:平均周转时间长,无交互能力 3)分时系统 分时系统是指在一台主机上连接了多个配有显示器和键盘的终端,由此所组成的系统,该系统允许多个用户同时通过自己的终端,以交互方式使用计算 机,共享主机中的资源。 采用了“时间片轮转”的处理机调度策略 4)实时系统 实时系统是指系统能及时响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行 第二章处理机管理 1)进程是指在系统中能独立运行并作为资源分配的基本单位,它是由一组机器指 令,数据和堆栈等组成的,是一个能独立运行的活动实体,多个进程可以并发 执行和交换信息 2)程序是一个在时间上严格有序的指令集合 3)在单道程序设计下,系统具有的特点 a.资源的独占性 b.执行的顺序性 c.结果的再现性 在多道程序设计环境下,系统具有: a.执行的并发性 b.相互的制约性

计算机操作系统复习总结-汤子瀛知识讲解

计算机操作系统复习总结-汤子瀛

操作系统的定义:操作系统是以一组控制和管理计算机硬件和软件资源,合理地对各类作业进行调度,以及方便用户使用的程序的集合。 1.1.1操作系统的目标:1.方便性 2.有效性 3.可扩充性 4.开放性 2.1.2 操作系统的作用: 1.os作为用户与计算机硬件系统之间的接口 2.os作为计算机系统资源的管理者 3.os用作扩充机器 1.1.3 推动操作系统发展的主要动力: 1.不断提高计算机资源利用率 2.方便用户 3.器件的不断更新换代 4.计算机体系结构的不断发展 1.2操作系统的发展过程: 1.2.1无操作系统的计算机系统:1.人工操作方式 2.脱机输入输出(Off-Line I/O)方式 1.2.2单道批处理系统(特征:自动性;顺序性;单道性) 1.2.3多道批处理系统: 1.多道程序设计的基本概念: (1)提高CPU的利用率)(2)可提高内存和I/O设备利用率(3)增加系统吞吐量 2.多道批处理系统的特征:(1)多道性(2)无序性(3)调度性 3.多道批处理系统的优缺点: (1)资源利用率高(2)系统吞吐量大(3)平均周转时间长(4)无交互能力 4.多道批处理系统需要解决的问题: (1)处理机管理问题(2)内存管理问题(3)I/O设备管理问题(4)文件管理问题 (5)作业管理问题 1.2.4分时系统: 分时系统是指,在一台主机上连接了多个带有显示器和键盘的终端,同时允许多个用户通过自己的终端,以交互方式使用计算机,共享主机中的资源。 1.分时系统的产生:推动分时系统形成和发展的主要动力,是用户的需求(需要的具体表现:人-机 交互、共享主机、便于用户上机) 2.分时系统实现中的关键问题:(1)及时接收(2)及时处理 3.分时系统的特征:(1)多路性(2)独立性(3)及时性(4)交互性 1.2.5实时系统:

《现代操作系统》学习笔记.docx

《现代操作系统》看了两个多月才看了前面200页,很多都似懂非懂,权且将自己认为重要的概念抄下来,以备后续查看。 0. 概述 (1)操作系统的概念 对操作系统的定义,有两种说法,一种声称操作系统是计算机的扩展器,一种声称操作系统是计算机资源集的抽象。 所谓操作系统是计算机的扩展,是将操作系统当做计算机对外的接口。对外包括对应用程序,对程序员,对用户。操作系统对计算机进行“化妆”,将计算机“丑陋晦涩”的硬件对外隐藏,而向外呈现界面友好清晰,更易理解的操作系统。如下图所示:

所谓操作系统是计算机资源集的抽象,是指操作系统将计算机资源(处理器,存储器以及I/O设备等)进行抽象以及管理。将CPU处理抽象为进程,将内存抽象为地址空间,磁盘抽象成文件。而这一切抽象都是为了实现多道程序设计,即可以在一个计算机上同时运行多个互不干扰程序。 (2)操作系统的作用 操作系统的主要任务是在相互竞争的程序之间有序地控制对处理器、存储器以及其他I/O接口设备的分配。其主要任务包括管理资源分配,评估使用代价和调节资源分配的冲突,记录哪个程序在用什么资源,用多少,用多久。资源管理包括用以下两种不同方式实现多路复用:在时间上复用(进程调度:CPU 时间片轮转)和在空间上复用(内存管理:虚拟内存,页面置换;磁盘管理:文件系统)。在时间上分配CPU资源需要考虑该进程在上面运行多久,下一次切换到哪一个进程。在空间上分配存储空间需要考虑给每个进程分配多少内存,如果内存不足的时候,将哪个页面置换到磁盘以腾出空间。 操作系统的主要功能:为用户程序提供抽象和管理计算机资源。用户程序和操作系统之间的交互处理是前者。用户程序和操作系统之间的交互主要是处理抽象。对于管理计算机资源系统(进程调度,内存置换等)一般自动完成。所以主要是用户程序与操作系统的交互。用户程序通过操作系统提供的接口来访问底层的系统。操作系统提供一种特殊的过程调用——系统调用,该种过程调用可以由用户态陷入

相关文档