2022年软件设计师(中级职称)考试重点难点.docx
《2022年软件设计师(中级职称)考试重点难点.docx》由会员分享,可在线阅读,更多相关《2022年软件设计师(中级职称)考试重点难点.docx(49页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、软件设计师重点难点数据库数据库管理系统DBMS 数据库管理系统DBMS是指DBS中对数据进行管理的软件系统,它是DBS的核心成分。DBS中所有与数据库打交道的操作,包括建库、查询、更新及数据控制,都是通过DBMS进行的。数据库管理系统总是基于某种数据库模型,可分为网状型、层次型、关系型和面向对象型DBMS。 数据库管理系统的主要目标:把数据作为可管理的资源处理。 数据库管理系统的5个重要功能:数据库的定义功能:DBMS提供数据定义语言DDL定义数据库的3级结构,包括外模式、概念模式、内模式及其相互之间的映象,定义数据的完整性约束、保密限制等条件。因此在DBMS中包括DDL的编译程序。数据库的操
2、纵功能:提供数据操纵语言DML实现对数据的操作。有4种根本操作:检索查询、插入、删除、修改。在DBMS中包括DML的编译程序或解释程序。数据库的保护功能:DBMS对数据库的保护主要通过4个子系统: A.数据库恢复在数据库被破坏或数据不正确时,系统有能力把数据库恢复到最近某个正确的状态 B.数据完整性控制保证数据库中数据及语义的正确性和有效性,防止任何对数据错误的操作 C.多用户环境下的并发控制。 D.数据平安性控制防止未被授权的用户蓄谋或无意地存取数据库中的数据,以免数据的泄露或破坏。数据库的维护功能:这局部包括数据库的初始数据载入、转换功能、存储功能、数据库的改组、性能监视功能。数据字典DD
3、:DD管理数据库3级结构的定义。对于数据库的操作都要通过查阅DD才能进行。现在有的大型系统中,把DD单独抽出来自成一个系统,成为一个系统工具,使得DD成为一个比DBMS更高级的用户与数据库之间的接口。 要注意的是:应用程序并不属于DBMS的范围。应用程序是用主语言和DML编写的,程序中的DML语句由DBMS执行,而其余局部仍由主语言编译程序完成。数据库系统DBS 数据库系统是一个复杂的系统,它是采用了数据库技术的计算机系统。因此,它不仅仅是一组对数据进行管理的软件即DBMS,也不仅仅是一个数据库。它是一个实际可运行的、按照数据库方法存储、维护和向应用系统提供数据支持的系统。它是存储介质、处理对
4、象和管理系统的集合体,由数据库DB、硬件支持系统、软件支持系统和数据库管理员DBA这四局部组成。 SQL语句根本表的定义可用“CREATE TABLE语句实现,增加属性可以用ALTER.ADD.语句,删除属性可以用“ALTER.DROP.语句;删除已存在的表可用“DROP TABLE.语句。视图的定义和撤消索引的定义和撤销SELECT 查询语句DELETE删除语句INSERT插入语句uPDATE语句关系运算 专门的关系运算包括选择、投影、连接、除等。选择Selection 选择又称为限制Restriction。它是在关系R中选择满足给定条件的诸元组,记作: F(R) = t|tR F(t)=真
5、 其中F表示选择条件,它是一个逻辑表达式,取逻辑值真或假。 逻辑表达式F的根本形式为: X1 Y1 X2 Y2 表示比较运算符,它可以是、或。X1、Y1等是属性名或常量或简单函数。属性名也可以用它的序号来代替。表示逻辑运算符,它可以是僼、或。 表示任选项,即 中的局部可以要也可以不要,.表示上述格式可以重复下去。 因此选择运算实际上是从关系R中选取使逻辑表达式F为真的元组。这是从行的角度进行的运算。 举例 设有一个学生-课程关系数据库,包括学生关系Student、课程关系Course和选修关系SC。下面的许多例子将对这三个关系进行运算。 例1 查询信息系IS系全体学生 Sdept=IS(Stu
6、dent) 或 5=IS(Student) 例2 查询年龄小于20岁的元组 Sage20(Student)或420(Student) 。投影Projection 关系R上的投影是从R中选择出假设干属性列组成新的关系。记作: A(R) = tA | tR 其中A为R中的属性列。 举例 例3 查询学生关系Student在学生姓名和所在系两个属性上的投影: Sname,Sdept(Student) 或 2,5(Student) 结果如图2-7(a)。 投影之后不仅取消了原关系中的某些列,而且还可能取消某些元组,因为取消了某些属性列后,就可能出现重复行,应取消这些完全相同的行。 例4 查询学生关系St
7、udent中都有哪些系,即查询学生关系Student在所在系属性上的投影 Sdept(Student) 投影之后不仅取消了原关系中的某些列,而且还可能取消某些元组,因为取消了某些属性列后,就可能出现重复行,应取消这些完全相同的行。连接Join 连接也称为连接。它是从两个关系的笛卡尔积中选取属性间满足一定条件的元组。记作: 其中A和B分别为R和S上度数相等且可比的属性组。是比较运算符。连接运算从R和S的笛卡尔积RS中选取R关系在A属性组上的值与S关系在B属性组上值满足比较关系的元组。 连接运算中有两种最为重要也最为常用的连接,一种是等值连接equi-join,另一种是自然连接Natural jo
8、in。 为“的连接运算称为等值连接。它是从关系R与S的笛卡尔积中选取A、B属性值相等的那些元组。即等值连接为: 自然连接Natural join是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且要在结果中把重复的属性去掉。即假设R和S具有相同的属性组B,那么自然连接可记作: 一般的连接操作是从行的角度进行运算。但自然连接还需要取消了重复列,所以是同时从行和列的角度进行运算。 除Division 给定关系R(X,Y)和S(Y,Z),其中X、Y、Z为属性组。R中的Y与S中的Y&127;可以有不同的属性名,但必须出自相同的域集。R与S的除运算得到一个新的关系P(X),P是R
9、中满足以下条件的元组在X属性列上的投影:元组在X上分量值x的象集Yx包含S在Y上投影的集合。记作: 其中Yx为x在R中的象集,x=tX。举例 例6 设关系R、S分别为图2-9中的(a)和(b),RS的结果为图2-9(c)。 在关系R中,A可以取四个值a1, a2, a3, a4。其中: a1的象集为(b1,c2), (b2,c3), (b2,c1) a2的象集为(b3,c7), (b2,c3) a3的象集为(b4,c6) a4的象集为(b6,c6) S在(B,C)上的投影为(b1,c2), (b2,c3), (b2,c1) 显然只有a1的象集(B,C)a1包含S在(B,C)属性组上的投影,所以
10、RS=a1。RSRSABCBCDAa1b1c2b1c2d1a1a2b3c7b2c1d1a3b4c6b2c1d1a1b2c3b2c3d2a4b6c6a2b2c3a1b2c1(a)(b)(c)软件设计师重点难点操作系统一、进程相关的概念:进程、线程和管程这是三个看起来似乎比较容易混淆的概念,所以在复习的时候一定要牢记其定义和相互之间的区别。*进程进程是一个可并发执行的程序在一个数据集合上的运行过程。也就是说,它是运行中的程序,是程序的一次运行活动。在操作系统中,进程是进行系统资源分配、调度和管理的最小单位。*线程对于一些多线程程序来讲,其包含两条或两条以上并发运行的局部,每个局部就称作一个线程,每
11、个线程都有独立的执行路径。线程是处理器分配资源的最小单位。*管程管程是一种并发性的构造,它包括用于分配一个共享资源或一组共享资源的数据和过程。为了完成分配资源的功能,进程必须调用特定的管程入口。操作系统中,多任务处理一般有两种方式:基于进程和基于线程。基于进程的多任务处理的特点是允许计算机同时运行两个或更多的程序。而基于线程的多任务处理是指一个程序可以同时执行两个或者多个任务的功能。多线程程序比多进程程序需要更少的管理费用。进程是重量级的任务,需要分配它们自己独立的地址空间。进程间的通信和相互转换需要很多的开销。而线程是轻量级的任务,它们共享相同的地址空间并且分享同一个进程。线程间的通信和转换
12、开销要小很多二、信号量处理:信号量和P-V操作为了解决进程同步的问题,提出了信号量机制。这一机制取得了很大的开展,从整型信号量到记录型信号量,再进而开展为“信号量集机制。不过,在原理上和考试中,一般我们都只涉及整型信号量机制。对于互斥临界区的管理要求:n 有空那么进n 无空等待n 两者择一n 有先等待在整型信号量机制中,信号量被定义为一个整型变量,除初始化外,仅能通过两个标准的原子操作waits和signals来访问。其通常被分别称作P、V操作。描述如下:P操作I. S-1SII. 如果SV2-Vk。因为这条路径最长,只要这条路径到目的地Vk时其他的都已经到达Vk。而在这条关键路径上的活动a2
13、,a5称为关键活动。为了找出给定的AOE网络的关键活动,从而找出关键路径,先定义几个重要的量:Ve(j)、Vl(j) :顶点j事件最早、最迟发生时间。e(i)、l(i):活动i最早、最迟开始时间。从源点V1到某顶点Vj的最长路径长度称为事件Vj的最早发生时间,记为Ve(j)。Ve(j)也是以Vj为起点的出边所表示的活动ai的最早开始时间e(i)。在不推迟整个工程完成的前提下,一个事件Vj允许的最迟发生时间记为Vl(j)。显然,l(i) =Vl( j)-(ai所需时间),其中j为ai活动的终点。满足条件l(i) =e(i)的活动为关键活动。求顶点Vj的Ve(j)和Vl(j)可按以下两步来做。1由
14、源点开始向汇点递推。其中,E1是网络中以Vj为终点的入边集合。2由汇点开始向源点递推。其中,E2是网络中以Vj为起点的出边集合。对于前面的两个概念很多人不能理解:从源点开始到汇点递推以后,我们已经得到了关键路径的长度,按理把这些点记录下来,就得到了关键路径,为什么在此时,还要从汇点到源点进行递推,来求关键路径,这样岂不多此一举其实不是这样的,一个AOE网络中可能有多条关键路径,假设我们只正推过去,只能求得一条关键路径,而不能找出所有的关键路径。要求一个AOE的关键路径,一般需要根据以上变量列出一张表格,逐个检查。例如,求图1所示的求AOE关键路径的过程如表1所示。因此,图1的关键活动为a1,a
15、2,a4,a8和a9,其对应的关键路径有两条,分别为V1,V2,V5,V7和V1,V4,V5,V7,长度都是10。其实从学员的疑问可以看出,最关键的问题就在于此表如何填写。首先值得我们注意的一点是,对于顶点的V1,V2等事件,有最早,最迟发生时间;对于边a1,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)列算出后
16、用公式l(i) =Vl(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。现在可以开
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022 软件 设计师 中级职称 考试 重点难点
限制150内