软件设计师重点难点——数据
数据库管理系统(DBMS)
    数据库管理系统(DBMS)是指DBS中对数据进行管理的软件系统,它是DBS的核心成分。DBS中所有与数据库打交道的操作,包括建库、查询、更新及数据控制,都是通过DBMS进行的。数据库管理系统总是基于某种数据库模型,可分为网状型、层次型、关系型和面向对象型DBMS。
    数据库管理系统的主要目标:把数据作为可管理的资源处理。
    数据库管理系统的5个重要功能:
    ◆数据库的定义功能:DBMS提供数据定义语言(DDL)定义数据库的3级结构,包括外模式、概念模式、内模式及其相互之间的映象,定义数据的完整性约束、保密限制等条件。因此在DBMS中包括DDL的编译程序。
    ◆数据库的操纵功能:提供数据操纵语言(DML)实现对数据的操作。有4种基本操作:检索(查询)、插入、删除、修改。在DBMS中包括DML的编译程序或解释程序。
    ◆数据库的保护功能:DBMS对数据库的保护主要通过4个子系统:
    A.数据库恢复(在数据库被破坏或数据不正确时,系统有能力把数据库恢复到最近某个正确的状态
    B.数据完整性控制(保证数据库中数据及语义的正确性和有效性,防止任何对数据错误的操作)
    C.多用户环境下的并发控制。
    D.数据安全性控制(防止未被授权的用户蓄谋或无意地存取数据库中的数据,以免数据的泄露或破坏)。
    ◆数据库的维护功能:这部分包括数据库的初始数据载入、转换功能、存储功能、数据库的改组、性能监视功能。
◆数据字典(DD):DD管理数据库3级结构的定义。对于数据库的操作都要通过查阅DD才能进行。现在有的大型系统中,把DD单独抽出来自成一个系统,成为一个系统工具,使得DD成为一个比DBMS更高级的用户与数据库之间的接口。
    要注意的是:应用程序并不属于DBMS的范围。应用程序是用主语言和DML编写的,程序中的DML语句由DBMS执行,而其余部分仍由主语言编译程序完成。
数据库系统(DBS)
    数据库系统是一个复杂的系统,它是采用了数据库技术的计算机系统。因此,它不仅仅是一组对数据进行管理的软件(即DBMS),也不仅仅是一个数据库。它是一个实际可运行的、按照数据库方法存储、维护和向应用系统提供数据支持的系统。它是存储介质、处理对象和管理系统的集合体,由数据库DB、硬件支持系统、软件支持系统和数据库管理员DBA这四部分组成。
SQL语句
    ◆基本表的定义可用“CREATE TABLE”语句实现,增加属性可以用”语句,删除属性可以用“”语句;删除已存在的表可用“”语句。
    ◆视图的定义和撤消
    ◆索引的定义和撤销
    ◆SELECT 查询语句
    ◆DELETE删除语句
    ◆INSERT插入语句
◆uPDATE语句
关系运算
    专门的关系运算包括选择、投影、连接、除等。
选择(Selection)
    选择又称为限制(Restriction)。它是在关系R中选择满足给定条件的诸元组,记作:
    σF(R) = {t|t∈R ∧ F(t)='真'}
    其中F表示选择条件,它是一个逻辑表达式,取逻辑值‘真’或‘假’。
    逻辑表达式F的基本形式为:
    X1 θ Y1 [ φ X2 θ Y2 ]
    θ表示比较运算符,它可以是>、≥、<、≤、=或≠。X1、Y1等是属性名或常量或简单函数。属性名也可以用它的序号来代替。φ表示逻辑运算符,它可以是僼、∧或∨。[ ]表示任选项,即[ ]中的部分可以要也可以不要,...表示上述格式可以重复下去。
    因此选择运算实际上是从关系R中选取使逻辑表达式F为真的元组。这是从行的角度进行的运算。
    举例
    设有一个学生-课程关系数据库,包括学生关系Student、课程关系Course和选修关系SC。下面的许多例子将对这三个关系进行运算。
    例1 查询信息系(IS系)全体学生
    σSdept='IS'(Student) 或 σ5='IS'(Student)
    例2 查询年龄小于20岁的元组
    σSage<20(Student)
或σ4<20(Student) 。
投影(Projection)
    关系R上的投影是从R中选择出若干属性列组成新的关系。记作:
    ΠA(R) = { t[A] | t∈R }
    其中A为R中的属性列。
    举例
    例3 查询学生关系Student在学生姓名和所在系两个属性上的投影:
    ΠSname,Sdept(Student)
    或
    Π2,5(Student)
    结果如图2-7(a)。
    投影之后不仅取消了原关系中的某些列,而且还可能取消某些元组,因为取消了某些属性列后,就可能出现重复行,应取消这些完全相同的行。
    例4 查询学生关系Student中都有哪些系,即查询学生关系Student在所在系属性上的投影
    ΠSdept(Student)
六级报名时间2022年上半年    投影之后不仅取消了原关系中的某些列,而且还可能取消某些元组,因为取消了某些属性列后,就可能出现重复行,应取消这些完全相同的行。
 连接(Join)
    连接也称为θ连接。它是从两个关系的笛卡尔积中选取属性间满足一定条件的元组。记作:
   
    其中A和B分别为R和S上度数相等且可比的属性组。θ是比较运算符。连接运算从R和S的笛卡尔积R×S中选取(R关系)在A属性组上的值与(S关系)在B属性组上值满足比较关系θ的元组。
    连接运算中有两种最为重要也最为常用的连接,一种是等值连接(equi-join),另一种是自然连接(Natural join)。
新手怎么备考公务员    θ为“=”的连接运算称为等值连接。它是从关系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中满足下列条件的元组在X属性列上的投影:元组在X上分量值x的象集Yx包含S在Y上投影的集合。记作:
   
    其中Yx为x在R中的象集,x=tr[X]。
研究生考试预报名举例
    例6 设关系R、S分别为图2-9中的(a)和(b),R÷S的结果为图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)属性组上的投影,所以R÷S={a1}。
R
 
S
 
R÷S
A
B
C
B
C
D
A
a1
b1
c2
b1考研报名费可以退吗
c2
d1
a1
a2
b3
c7
b2
c1
d1
 
a3
b4
c6
b2
c1
d1
 
中级银行从业报名入口网址a1
b2
c3
b2
c3
d2
 
a4
b6
c6
 
 
 
 
a2
b2
c3
 
 
 
 
a1
b2
c1
 
 
 
 
(a)
(b)
(c)
软件设计师重点难点——操作系统
一、进程相关的概念:
  进程、线程和管程
  这是三个看起来似乎比较容易混淆的概念,所以在复习的时候一定要牢记其定义和相互之间的区别。
  *进程
  进程是一个可并发执行的程序在一个数据集合上的运行过程。也就是说,它是运行中的程序,是程序的一次运行活动。在操作系统中,进程是进行系统资源分配、调度和管理的最小单位。
  *线程
  对于一些多线程程序来讲,其包含两条或两条以上并发运行的部分,每个部分就称作一个线程,每个线程都有独立的执行路径。线程是处理器分配资源的最小单位。
  *管程
  管程是一种并发性的构造,它包括用于分配一个共享资源或一组共享资源的数据和过程。为了完成分配资源的功能,进程必须调用特定的管程入口。
  操作系统中,多任务处理一般有两种方式:基于进程和基于线程。基于进程的多任务处理的特点是允许计算机同时运行两个或更多的程序。而基于线程的多任务处理是指一个程序可以同时执行两个或者多个任务的功能。
  多线程程序比多进程程序需要更少的管理费用。进程是重量级的任务,需要分配它们自己独立的地址空间。进程间的通信和相互转换需要很多的开销。而线程是轻量级的任务,它们共享相同的地址空间并且分享同一个进程。线程间的通信和转换开销要小很多
二、信号量处理:
  信号量和P-V操作
英语专业六级是什么水平  为了解决进程同步的问题,提出了信号量机制。这一机制取得了很大的发展,从整型信号
量到记录型信号量,再进而发展为“信号量集”机制。不过,在原理上和考试中,一般我们都只涉及整型信号量机制。