软件设计师考试重点难点_第1页
软件设计师考试重点难点_第2页
软件设计师考试重点难点_第3页
软件设计师考试重点难点_第4页
软件设计师考试重点难点_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、软件设计帅考试重点难点:死锁、流水线、关键路径、系统可靠性计算、多媒体、操作系统、数据库软件设计帅重点难点死锁死锁(Deadlock)是指多个进程在运行的过程中因争夺 资源而造成的一种僵局。当进程处于这种僵持 状态时,若无外力作用,它们都将无法再向前推进。在 软件设计师的考试当中,这个知识点的考查是 以选择题的形式出现的,考点主要有:死锁的必要条件、解决死锁的方法,最难高难度会考到“银行 家算法”。本文将介绍死锁的相关知识,但不会具体讲解“银行家算法”,该算法将在本系列的下一 篇文章中详细说明。1、死锁发生的必要条件死锁的发生必须具备四个必要条件,这四个条件相互联系、缺一不可。F TT-,环路

2、1L等待j保持和,等待互斥1不剥夺(1) 互斥条件:指进程对所分配到的资源进行排他性使用,即在一段时间内某资源只由一个进程占用。如果此时还有其他进程请求该资源,则请求者只能等待,直至占有该资源的进程用完并释放。(2) 请求和保持条件:指进程已经保持了至少一个资源,但又提出了新的资源请求,而该资源 又已被其他进程占有,此时请求进程阻塞,但又对自己已获得的其他资源保持不放。(3) 不剥夺条件:指进程已获得的资源,在未使用完之前,不能被剥夺,只能在使用完时由自己释放。|(4) 环路等待条件:指在发生死锁时,必然存在一个进程-资源的环形链,即进程集合P0 , P1,P2 Pn中的P0正在等待一个P1占

3、用的资源,P1正在等待P2占用的资源,,Pn正在等待已被P0 占用的资源。2、解决死锁的策略解决死锁的策略通常有三种:死锁预防、死锁避免以及死锁解除。前两种方法是“事前措施”, 而死锁解除是“事后解决方案”。(1) 死锁预防:“解铃还需系铃人”,随便破坏导致死锁这任意一个必要条件就可以预防死锁。例如,要求用户申请资源时一起申请所需要的全部资源,这就 破坏了保持和等待条件;将资源分层,得到上一层资源后,才能够申请下一层资源,它 破坏了环路等待条件。预防通常会降低系统的效率。(2) 死锁避免:避免是指进程在每次申请资源时判断这些操作是否安全,典型算法是“银行家 算法”(本系列文章的下一篇将详细讲解

4、该问题)。但这种算法会增加系统的开销。(3) 死锁解除:该方法的思路很简单,通过死锁检测判断系统是否处于死锁状态,若死锁,则 由系统强制剥夺部分进程的资源,将资源强行分配给别的进程。3、判断系统是否可能进入死锁状态从上面的死锁解决方案来看,无论哪一种方式都不可避免的要增加系统的负担。而同时一个系统是否有可进入死锁状态受系统资源数量,=需要使用该资源的进程数量等因素影响。=若系统本不可能引 起死锁,而我们采用了死锁解决方案,是很不合理的。所以,考试中常考到这样的题型:给出系统的 资源数,以及需要使用该资源的进程数量等参数,让考生判断系统有无可能产生死锁。下面我们以例 题的方式来说明如何解决这类问

5、题。例题1:系统有3个进程:A、B、G这3个进程都需要5个系统资源。如果系统有多少个资源,则不可 能发生死锁。解答:在分析这个问题时,我们可以取一些简单的数据代入试题进行验证、分析,以得到相应的规律。如:(1) 当系统资源数量为9时,若给A与B分别分配了 4个资源,C分配了 1个资源,则系统中 的每个进程都存在资源不足的情况,而都不放手自己拥有的资源。不能正常运行完毕,发生死锁。(2) 当系统资源数量为12时,若给A、B、C各分配4个资源,则死锁。(3) 当系统资源数量为13时,无论如何分配,总有至少1个进程能得到5个资源,得到5个资 源的进程可以正常运行完毕, 而后将自己占用的资源分配给其它

6、进程,所以这样能使所有进程运行完 毕。从上面的尝试,我们可以总结出一个规律:先给所有进程分配他们所需要的资源数减1个资源,然后系统如果能再剩余1个资源,则系统不会发生死锁。这样解答本题变得非常容易。(5-1)*3+1=13。例题2:一台计算机有10台磁带机被m个进程竞争,每个进程最多需要三台磁带机,那么m至多为 时, 系统没有死锁的危险。A . 3 B . 4 C . 5 D . 6解答首先从m=6开始考察,首先每个进程分配 1台,剩下的4台只能分配给4个进程,还有2个进 程没有分配,如果已经分配了 2台的4个进程需要3台的话,则系统就会死锁。同样,如果 m=5,也 会发生这种情况。当 m=4

7、时,每个进程可以分得 2台,还有2个进程可分得3台,则可正常运行, 运行完毕后可释放资源,从而不会死锁。在解这道题时有些学员提出“如果按照答案m= 4,则这4个进程都是需要3台磁带机的话,共需要12台磁带机,这样还不会死锁? ” 。这种想法是错误的,因为 并不是同时把所有进程都分配给足够的资源才能完成这些进程,可以是一个进程先执行完,释放完资源再执行另一个进程。例如:4个进程中,每个进程分配 2台磁带机,用去了 8台。剩下2台,仍然可以满足两个进程, 直到他们完成,释放他们暂用的磁带机。软件设计帅重点难点一一流水线流水线这个知识点在软件设计师考试中是个重点也是个难点,考查的频率比较高。之所以说

8、流水线是 个难点,有两方面的原因:一方面是需要理解流水线的理论,了解其工作原理,计算方式;另一方面 是在软考当中,对于流水线的相关计算,标准并不是完全统一的,这一点在后面我们将详细介绍。流水线是指在程序执行时多条指令重叠进行操作的一种准并行处理实现技术。各种部件同时处理是针对不同指令而言的,它们可同时为多条指令的不同部分进行工作, 以提高各部件的利用率和指令 的平均执行速度。指令流水线是将指令执行分成几个子过程,每一个子过程对应一个工位, 我们称为流水级或流水节拍,这个工位在计算机里就是可以重叠工作的功能部件,称为流水部件。如图1所示,IF , ID , EX W龄别是流水线的流水部件。SI

9、S2 S3 S4图1几个部件组成的流水统流水线要求所有的流水级部件必须在相同的时间内完成各自的子过程。在流水线中,指令流动一步便是一个机器周期,机器周期的长度必须由最慢的流水级部件处理子过程所需的时间来决定O那么我们为什么要提出流水线这个概念, 以及流水线是如何提高系统吞吐量的呢?下面我们来看 几个图,概念自然就清楚了。图2是一个非流水线结构系统执行指令时空图。图2非流水税结构系统执行指令时空囹我们从图2中可以看到,任意一个系统时间都有大量的设备处于空闲状态,如第一个时间段有 ID, EX, Wg闲,则第二个时间段有IF , EX, WE闲。我们再来看采用了流水线结构的时空图3。囹3流水姓结构

10、指令时空图显然,采用流水线可以大大提升系统资源的利用率,以及整个系统的吞吐量。流水线的操作周期取决于基本操作中最慢的那个。例如:一个3段流水线,各段的执行时间分别为t , 2t , t。则最慢的一段为2t,所以流水线操作周期为 2to流水线的执行时间公式为:第1条指令的执行时间+ (指令条数-1 ) *流水线操作周期例题1若每一条指令都可以分解为取指、分析和执行三步。己知取指时间t取指=4At,分析时间t分析=3At,执行时间t执行=5At o如果按串行方式执行完100条指令需要 (1) At o如果按照流水 方式执行,执行完100条指令需要 (2) to供选择的答案(1) A. 1190B.

11、1195 C. 1200D.1205(2) A. 504B.507 C. 508D.510试题分析本题考查的是计算机系统指令流水线方面的基础知识。根据题意可以看到,在此流水线中按串行方式执行完100条指令要用1200At o采用流水方式执行,执行的总时间的关键取决于最长的执行时 间,所以执行完 100 条的时间为:4A t + 3A t + 5A t + (100 1) *5 t = 507 t。试题答案C B例题2现采用4级流水线结构分别完成一条指令的取指、指令译码和取数、运算,以及送回运算结果4个基本操作,每步操作时间依次为60 ns, 100 ns, 50 ns和70 ns。该流水线的操

12、作周期应为A ns。若有一小段程序需要用20条基本指令完成(这些指令完全适合于流水线上执行),则得到第一条指令 结果需 B ns,完成该段程序需_C ns。在流水线结构的计算机中,频繁执行 _D_指令时会严重影响机器的效率。当有中断请求发生时, 采用不精确断点法,则将_E。供选择的答案A:5070100280B: 100200280400C: 1400200023002600D:条件转移无条件转移算术运算访问存储器E:仅影响中断反应时间,不影响程序的正确执行 不仅影响中断反应时间,还影响程序的正确执行 不影响中断反应时间,但影响程序的正确执行 不影响中断反应时间,也不影响程序的正确执行试题分析

13、本题主要考查对流水线技术的掌握。对于CPU来说,流水线技术实际上是一种以增加硬件换取性能的方式:把一条指令分解成多条 更小的指令,由不同的处理单元来处理,在理想的满负荷运行状态下,执行一条指令的时间虽然没有 减少,但是由于多个处理单元同时工作,在同一时间上可以执行不同指令的不同部分,从而使得总体 的执行时间大大减少。流水线的操作周期取决于基本操作中最慢的那个。这里最慢的是100 ns,所以操作周期是100 ns。在流水线中,其实每一条指令的执行时间并没有减少,而第一条指令的执行并没 有体现流水线的优势,它在4个操作周期后才能执行完成,这以后每个操作周期都能完成一条指令的 执行。影响流水线效率的

14、重要因素有条件转移指令和中断,因为它们打断了流水线,使得流水线不得不重新装载。不精确断点法实现简单,但是要等到流水线内的指令完成之后再响应中断。试题答案A. B. C. D. E.希赛IT教育专家提示:上面的两个例题,都是 软考当中出现过的真题。我们可以看出,两个题在计算流水线时间方面, 标准并不是统一的。在例题1中:4A t + 3A t + 5A t + (100 1) *5 t = 507 t。而在例题2中:100ns+100ns+100ns+100ns+ (201) *100ns=2300ns这两种计算方法,都是在套用公式:“第1条指令的执行时间+(指令条数-1 ) *流水线操作周期”

15、, 而对于“第1条指令的执行时间”的理解并不相同。在例题 1中,第1条指令的执行时间是将指令执 行时的几个阶段所需时间相加得到,而在例题2中,认为每一个阶段所需时间都是流水线的周期时间。 其中前者是流水线的理论计算方法,而后者是我们在设计硬件流水线时,常用的方式。两种计算方法,从理论上来讲,都是正确的,但考试时,只有一个是正确答案。那么我们应该怎么做呢?由于每次考 试中,无论认可的是哪种计算方式,都只会把这种计算方式的正确答案放入选项中,而不会将两个正 确答案都放入,所以我们在用一种方式不能得到正确选项时,应采用另一种方式进行计算,来得到正 确答案。软件设计帅重点难点关键路径关键路径这个知识点

16、在软件设计师考试中,是一个难点。说到关键路径这个概念,大家应该多少有些印象,可能都知道它是“最长路径”而不是“最短路 径”,但说到它为什么是最长路径,提出这个概念的用意何在,它有什么应用,在计算机中关键路径 是如何求的等问题却没有几个人能真正搞清楚,甚至书上给出了完整的例子,都有很多人看不懂。下 面我先会简单的说明基本概念,然后以一个例子,结合平时希赛教育学员的疑问,对这个知识点进行 详细的分析。在AO用络中,如果边上的权表示完成该活动所需的时间,则称这样的 AO时AO部络。例如, 图1表示一个具有10个活动的某个工程的 AO部络。图中有7个顶点,分别表示事件17,其中1 表示工程开始状态,7

17、表示工程结束状态,边上的权表示完成该活动所需的时间。图1 AOE网绪(1)下面我们来理解一下关键路径的思想,图1虽节点不多,但是为了让问题变得更为简单、直观,我们画另一个AOE网络,如图2所示。图2 AOE网络。从图2中我们可以看出,关键路路径实际上是从源点到目的地的最长路径。为什么是最长路径呢?因为图中的某些事件是可以并发执行的。如图2所示,当到达V1后,可以同时往V2, V3, V4三个方向走,而V2, V3, V4都有到Vk的路径,且长度都为1,并且Vk是终点,则关键路径是 V1->V2->Vk。 因为这条路径最长,只要这条路径到目的地Vk时其他的都已经到达 Vk。而在这条关

18、键路径上的活动a2, a5称为关键活动。为了找出给定的AO部络的关键活动,从而找出关键路径,先定义几个重要的量:Ve(j)、Vl(j):顶点j事件最早、最退发生时间。e(i)、l(i):活动i最早、最迟开始时间。从源点V到某顶点Vj的最长路径长度称为事件 Vj的最早发生时间,记为 Ve(j)。Ve(j)也是以 V为起点的出边<V , M>所表示的活动ai的最早开始时间e( i)。在不推退整个工程完成的前提下,一个事件V允许的最退发生时间记为 V(j)。显然,l(i)=Vl( j)- (ai所需时间),其中j为ai活动的终点。满足条件l(i) = e(i)的活动为关键活动。求顶点Vj

19、的Ve(j)和Vl(j)可按以下两步来做。(1)由源点开始向汇点递推。(块=#在冗州育 毒:ITE 蓬IT在5日y&G) = MAXK(i) + d(t7)t <Vj >E2jn其中,Ei是网络中以Vj为终点的入边集合。(2)由汇点开始向源点递推。%(") =虹伽)(7) - MIN (k) - d(J, k), <VJf Vk ae国町一1其中,巳是网络中以Vj为起点的出边集合。对于前面的两个概念很多人不能理解:从源点开始到汇点递推以后,我们已经得到了关键路径的长度, 按理把这些点记录下来,就得到了关键路径,为什么在此时,还要从汇点到源点进行递推,来求关键

20、 路径,这样岂不多此一举?其实不是这样的,一个AOEJ络中可能有多条关键路径,若我们只正推过去,只能求得一条关键路径,而不能找出所有的关键路径。要求一个AOE的关键路径,一般需要根据以上变量列出一张表格,逐个检查。例如,求图 1所示 的求AO跋键路径的过程如表1所示。表1求关键路径的过程TT-:Try-%*vwV100A】° J00va33A 乂句°00Vj23皿011V4 "6'6A®330V577皿341. 戏J0JJV?1010岫3160770甘础1561因此,图1的关键活动为ai, a2, a4, as和a%其对应的关键路径有两条,分别为

21、( Vi, V2, M, V0 和(V, V4, U, V),长度都是 10。其实从学员的疑问可以看出,最关键的问题就在于此表如何填写。首先值得我们注意的一点是,对于 顶点的V1 , V2等事件,有最早,最迟发生时间;对于边 al, a2, a3,等活动,有最早,最迟开始时 间。Ve(j)表示的是顶点j的最早发生时间,Vl(j)表示的是顶点j的最迟发生时间,e(i)表示的是活动i 的最早开始时间,l(i)表示的是活动i的最迟开始时间。总的来说填这个表有以下四个步骤。由源点开始递推计算出表1-1中的Ve(j)列;由 Ve(7) =10,回算 Vl(j)列;Vl(j)列算出后用公式l(i) =Vl

22、(j) - (ai所需要的时间);由l(i) =e(i)找出关键活动,求出关键路径。下面来填写表格,首先我们来填最早发生时间和最早开始时间。因为由源点V1到顶点V2的最长路径长度是3(到V2只有一条路径,长度为3,这个很好判断), 所以V2的最早发生时间是3,从V2出发的活动有a4, a5,所以a4, a5的最早开始时间也是3。又 比如,到顶点V4的最长路径长度是6,所以V4的最早发生时间是6,从V4出发的活动有a8, a8的 最早开始时间也是6,其余的依次类推。最迟发生时间和最退开始时间要先求出关键路径的长度后,再进行逆推。通过上面求最早发生时间,我们可以求得关键路径长度为10。现在可以开始

23、逆推了。首先由于关键路径长度为 10,所以V7的最迟发生时间是10,再看V6 , V6到V7有a10,长度 为4,所以V6的最迟发生时间是10-4=6,同样V5到V7有a9,长度为3,所以V5的最迟发生时间 是10-3=7,依次类推,此项值对应表 1中的Vl(j)。接下来求最退开始时间。V7的最迟开始时间为10 , a9, a10都指向V7 , a9=3, a10=4,所以a9的最迟开始时间为10-3=7, a10的最迟开始时间为10-4=6。V6的最迟开始时间为6, a7指向V6, a7=3,所以a7的最迟开始时间 为6-3=3。此项值对应表1中的l(i)。上面的这个实例是一个难度较高的例子

24、,在我们的实际考试中,难度并没有这么高。下面看一个考 试真题。例题:某工程计划如下图所示,各个作业所需的天数如下表所示,设该工程从第 0天开工,则该工程 的最短工期是(1)天,作业J最退应在第(2)天开工。B CDEFG H1 J所I、数8103243 7S3工程计划图供选择的答案:(1) A.17B.18C.19D.20(2) A.11试题分析B.13C.14D.16这是一个带权的AO部。与AO铜不同之处在于,AOEJ所关心完成该工程至少需要多少时间, 哪些活动是影响整个工程进度的关键。由于AO部中的某些活动能够并行地进行,所以完成整个工程所需要的时间是从开始顶点到结束顶点的最长路径的长度,

25、称为关键路径。本题的关键路径有两条:(1) S 2 5 4 D ; (2)S2 5 D,路径的长度均为20。作业J最迟要在什么时候开工?由于完成作业J后就到了汇点D了,所以要看关键路径多长,J的需要天数是多少。J的最退开工 =20-7=13。试题答案D B软件设计帅重点难点系统可靠性计算系统可靠性计算是软件设计师考试的一个重点,近些年几乎每次考试都会考到,但这个知识点的难度 不高,了解基本的运算公式,即可轻松应对。可靠性计算主要涉及三种系统,即串联系统、并联系统和冗余系统,其中串联系统和并联系统的 可靠性计算都非常简单,只要了解其概念,公式很容易记住。冗余系统要复杂一些。在实际的考试当 中,考

26、得最多的就是串并混合系统的可靠性计算。所以要求我们对串联系统与并联系统的特点有基本的了解,对其计算公式能理解、运用。下面将对这些计算的原理及公式进行详细的说明。1 .串联系统假设一个系统由n个子系统组成,当且仅当所有的子系统都能正常工作时,系统才能正常工作, 这种系统称为串联系统,如图1所示。 田 R? 图1 串联:设系统各个子系统的可靠性分别用扁祭统表示,则系统的可靠性尺=R xx kRh如果系统的各个子系统的失效率分别用&为来表示,则系统的失效率A =+ +o输入输出2. 并联系统|假如一个系统由n个子系统组成,只要有一个子系统能够正常工作,系统就能正常工作,如图 2 所示。图9并

27、联系统设系统各个子系统的可靠性分别用尺表示,则系统的可靠性& = 1-。-氏)<1-彪)x.x(l-&)。假如所有子系统的失效率均为 ,则系统的失效率为比在并联系统中只有一个子系统是真正需要的,其余n-1个子系统都被称为冗余子系统。该系统随着冗余子系统数量的增加,其平均无故障时间也会增加。3. 串并混合系统串并混合系统实际上就是对串联系统与并联系统的综合应用。我们在此以实例说明串并混合系统的可靠性如何计算。例1:某大型软件系统按功能可划分为 2段P1和P2。为提高系统可靠性,软件应用单位设计了如下图 给出的软件冗余容错结构,其中 P1和P2均有一个与其完全相同的冗余备份。

28、若P1的可靠度为0.9,P2的可靠度为0.9,则整个系统的可靠度是 。图3串并混合系统供选择的答案C. 0.9801D. 0.9A. 0.6561 B. 0.81试题分析当系统采用串联方式时,其可靠度R可由公式R=R1R2 Rn求得。当系统采用并联方式时,其可靠度R可由公式R=1- (1-R1) *(1-R2) , (1-Rn)求得。这个系统总的来说是串联,但分成两个并联部 分。第一部分的可靠度为:R1=1-(1-0.9)*(1-0.9)=0.99;第二部分的可靠度也为:R2=0.99;所以整个系统的可靠度为:R=R1*R2=0.9801 , C答案。试题答案C上面的例题是属于常规形式的可靠性

29、计算题,如果把这种试题再拨高一个层次,可以。例2:1台服务器、3台客户机和2台打印机构成了一个局域网(如图 4所示)o在该系统中,服务器 根据某台客户机的请求,数据在一台打印机上输出。设服务器、各客户机及各打印机的可靠度分别为 a、b、c,则该系统的可靠度为 。图4串升混合系统A. ab3c3B. a(1-b3)(1-c 2)C. a(1-b) 3(l-c) 2 D . a(1-(1-b) 3)(1-(l-c)2)例题分析在试题给出的系统中,客户机之间是并联的(任何一台客户机出现故障,对其他客户机没有影响) 同理,打印机之间是也并联关系。然后,客户机、服务器、打印机之间再组成一个串联关系。因此

30、, 我们可以把该系统简化为:已知服务器、各客户机及各打印机的可用性分别为a、b、c,因此整个系统的可用性为:例题答案D4. 模冗余系统m模冗余系统由m个(m=2n+1为奇数)相同的子系统和一个表决器组成,经过表决器表决后,m个子系统中占多数相同结果的输出可作为系统的输出,如图5所示。图5模冗余系统在m个子系统中,只有n+1个或n+1个以上的子系统能正常工作, 系统就能正常工作并输出正确结果。假设表决器是完全可靠的,每个子系统的可靠性为R。,则m模冗余系统的可靠性为:软件设计帅重点难点一一多媒体多媒体重点和难点1. 图形和图象的各种格式、几个主要的概念:2. 音频采集计算:声音文件的 存储量=采

31、样频率X采样位数X声道数3. 视频图象的容量计算和国家 标准:图像文件的存储量=分辨率X色彩数(位)4. 视频的几种集中压缩格式:(44)A . 128Kb/sB. 320Kb/sC. 1.5Mb/sD. 15Mb/s(45)A . 352X 288B. 576X 352 C. 720X 576D. 1024X 720(46)A . 16 帧/秒B. 25帧/秒C. 30帧/秒D. 50帧/秒例题1:MPEG-I编码器输出视频的数据率大约为 _C_。PAL制式下其图像亮度信号的分辨率为 _A_,帧速为_B_O(多媒体)(44) A.128Kb/sB.320Kb/sC.1.5Mb/sD.15Mb

32、/s(45) A.352 X 288B.576 X 352C.720 X 576D.1024 X 720(46)A.16帧/秒B.25帧/秒C.30帧/秒D.50帧/秒例题2:在多媒体的音频处理中,由于人所敏感的声频最高为A赫兹(Hz),因此数字音频文件对音频的采样频率为B赫兹(Hz)。对一个双声道的立体声,保持1秒钟声音,其波形文件所需的字节数为C,这里假设每个采样点的量化位数为8位。MIDI文件是最常用的数字音频文件之一,MIDI是一种D,它是该领域国际上的一个 E。A: 50 10k 22k 44kB:44.1k 20.05k 10k 88kC: 22050 88200 176400 4

33、4100D:语音数字接口 乐器数字接口语音模拟接口 乐器模拟接口E:控制方式管理规范通信标准输入格式在音频处理中,采样频率是决定音频质量的一个重要因素,它决定了频率响应范围。对声音进行采样 的三种标准以及采样频率分别为:语音效果(11 kHz)、音乐效果(22 kHz)、高保真效果(44.1 kHz), 目前声卡的最高采样率为 44.1KHz。另外,一般人的听觉带宽为 20Hz20kHz人敏感的声频最高为 22kHz。信号编码的位数是决定音频质量的另一个重要因素,它决定数字采样的可用动态范围和信噪比。 16位声卡的采样位数就是16。声音文件的存储量等于采样频率X采样位数X声道数。如本题所求波形

34、文件的字节数计算公式如44.1kHz X 8bit X 2X 1 秒=705.6Mbit/8=88.2MB=88200Byte答案软件设计帅重点难点、进程相关的概念:进程、线程和管程这是三个看起来似乎比较容易混淆的概念,所以在复习的时候一定要牢记其定义和相互之间的区 别。*进程进程是一个可并发执行的程序在一个数据集合上的运行过程。也就是说,它是运行中的程序,是 程序的一次运行活动。在 操作系统中,进程是进行系统 资源分配、调度和管理的最小单位。*线程对于一些多线程程序来讲,其包含两条或两条以上并发运行的部分,每个部分就称作一个线程, 每个线程都有独立的执行路径。线程是处理器分配资源的最小单位。

35、*管程管程是一种并发性的构造,它包括用于分配一个共享资源或一组共享资源的数据和过程。为了完成分配资源的功能,进程必须调用特定的管程入口。操作系统中,多任务处理一般有两种方式:基于进程和基于线程。基于进程的多任务处理的特点 是允许计算机同时运行两个或更多的程序。而基于线程的多任务处理是指一个程序可以同时执行两个 或者多个任务的功能。多线程程序比多进程程序需要更少的管理费用。进程是重量级的任务,需要分配它们自己独立的地址空间。进程间的通信和相互转换需要很多的开销。而线程是轻量级的任务,它们共享相同的地址 空间并且分享同一个进程。线程间的通信和转换开销要小很多。二、信号量处理:信号量和P-V操作为了

36、解决进程同步的问题,提出了信号量机制。这一机制取得了很大的发展,从整型信号量到记 录型信号量,再进而发展为“信号量集”机制。不过,在原理上和考试中,一般我们都只涉及整型信 号量机制。对于互斥临界区的管理要求:n有空则进n无空等待n两者择一n有先等待在整型信号量机制中,信号量被定义为一个整型变量,除初始化外,仅能通过两个标准的原子操作wait (s)和signal (s)来访问。其通常被分别称作 P、V操作。描述如下:P操作I. S-1 SII. 如果S<0,则该进程进入等待状态;否则继续进行V操作I. S+1 f SII. 如果SA 0,则唤醒队列中的一个等待进程进程互斥的情况初值是1,

37、而同步的初值是0进程同步的问题相对来说是比较复杂的,这其中一些比较经典的进程同步问题,如:*生产者一消费者问题*读者一写者问题*哲学家进餐问题三、各种调度算法:操作系统中,涉及到的调度比较多,如进程调度、作业调度、磁盘调度等。但是其调度算法的原 理都大致相同。进程调度是比较典型的一类调度,其调度算法较多。包括:*先来先服务*优先数调度*轮转法*短作业优先通过对这些调度算法的复习,对我们掌握其他种类调度的调度算法也会很有帮助。例题:一台PC计算机系统启动时,首先执行的是 _ (42) _,然后加载_ (43) _。在设备 管理中,虚拟设备的引入和实现是为了充分利用设备,提高系统效率,采用(44)

38、 来模拟低速设备(输入机或打印机)的工作。例题:设有7项任务,分别标记为a、b、c、d、c、f和g,需要若干台机器以并行工作方式 来完成,它们执行的开始时间和完成时间如下表所示:信号量例题:在某超市里有一个收银员, 且同时最多允许有n个顾客购物,我们可以将顾客和收银员看成是两 类不同的进程,且工作流程如下图所示。为了利用PV操作正确地协调这两类进程之间的工作,设置了三个信号量S1、S2和Sn,且初值分别为0、0和n。这样图中的a应填写_C_,图中的bl、b2应 分别填写_D_,图中的cl、c2应分别填写A。(操作系统)?软件设计帅重点难点数据库1数据库管理系统(DBMS数据库管理系统(DBMS

39、是指DBS中对数据进行管理的软件系统,它是 DBS的核心成分。DBS中 所有与数据库打交道的操作,包括建库、查询、更新及数据控制,都是通过DBMS5行的。数据库管理系统总是基于某种数据库模型,可分为网状型、层次型、关系型和面向对象型DBMS数据库管理系统的主要目标:把数据作为可管理的资源处理。数据库管理系统的5个重要功能:数据库的定义功能:DBM醍供数据定义语言(DDD定义数据库的3级结构,包括外模式、概 念模式、内模式及其相互之间的映象,定义数据的完整性约束、保密限制等条件。因此在DBM舛包括DDL的编译程序。数据库的操纵功能:提供数据操纵语言(DML实现对数据的操作。有4种基本操作:检索(

40、查 询)、插入、删除、修改。在 DBM舛包括DML勺编译程序或解释程序。数据库的保护功能:DBM闵数据库的保护主要通过 4个子系统:A. 数据库恢复(在数据库被破坏或数据不正确时,系统有能力把数据库恢复到最近某个正确的状 态B. 数据完整性控制(保证数据库中数据及语义的正确性和有效性,防止任何对数据错误的操作)C. 多用户环境下的并发控制。D. 数据安全性控制(防止未被授权的用户蓄谋或无意地存取数据库中的数据,以免数据的泄露或破坏)。数据库的维护功能:这部分包括数据库的初始数据载入、转换功能、存储功能、数据库的改组、性能监视功能。数据字典(DD : DD管理数据库3级结构的定义。对于数据库的操

41、作都要通过查阅DD才能进行。现在有的大型系统中,把DM独抽出来自成一个系统,成为一个系统工具,使得DD成为一个比DBMS 更高级的用户与数据库之间的接口。要注意的是:应用程序并不属于 DBMS勺范围。应用程序是用主语言和 DM崎写的,程序中的DML 语句由DBM就行,而其余部分仍由主语言编译程序完成。数据库系统(DBS数据库系统是一个复杂的系统,它是采用了数据库技术的计算机系统。因此,它不仅仅是一组对 数据进行管理的软件(即 DBMS ,也不仅仅是一个数据库。它是一个实际可运行的、按照数据库方 法存储、维护和向应用系统提供数据支持的系统。它是存储介质、处理对象和管理系统的集合体,由 数据库DB

42、硬件支持系统、软件支持系统和数据库管理员DBA这四部分组成。2 SQL语句基本表的定义可用“ CREATE TABLE语句实现,增加属性可以用 ALTER.ADD. ”语句,删 除属性可以用“ ALTER.DROP. ”语句;删除已存在的表可用“ DROP TABLE.”语句。视图的定义和撤消索引的定义和撤销 SELECT查询语句 DELETE®除语句 INSERT插入语句 UPDATED 句3关系运算专门的关系运算包括选择、投影、连接、除等。1.选择(Selection )选择又称为限制(Restriction )。它是在关系R中选择满足给定条件的诸元组,记作:b F(R) = t

43、|t R A F(t)=' 真'其中F表示选择条件,它是一个逻辑表达式,取逻辑值真或假。逻辑表达式F的基本形式为:X1 e Y1 4 X2 e Y2 。表示比较运算符,它可以是、A、V、=或乒。 X1、Y1等是属性名或常量或简单函数。 属性名也可以用它的序号来代替。4表示逻辑运算符,它可以是僵、A或V。表示任选项,即中的部分可以要也可以不要,.表示上述格式可以重复下去。因此选择运算实际上是从关系 R中选取使逻辑表达式F为真的元组。这是从行的角度进行的运算。举例设有一个学生-课程关系数据库,包括学生关系Student >课程关系Course和选修关系SG下面的许多例子将对这三个关系进行运算。例1查询信息系(IS系)全体学生b Sdept='IS'(Student) 或 b 5='IS'(Student)例2查询年龄小于20岁的元组b Sage<20(Student)或 b 4<20(Student)。2. 投影(Projection )关系R上的投影是从R中选择出若干属性

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论