数据库软考考点整理--中级数据库系统工程师

数据库软考考点整理–中级数据库系统工程师

文章目录

  • 数据库软考考点整理--中级数据库系统工程师
  • 数据库基础
      • 非关系型数据库与分布式数据库基础
    • 关系模式
    • 数据挖掘基础
    • 数据库设计步骤
    • 数据库安全基础
    • 数据仓库基础
    • 数据库并发控制
    • 数据库故障恢复
      • **1事务故障**
      • 2介质故障(硬故障)
    • 数据库重组与重构
      • 数据库重组
      • 数据库重构
    • 函数依赖
    • 网络攻击基础
  • 计算机系统硬件基础
    • CPU中其它部件作用:
    • 数据结构基础
    • 操作系统基础
    • 调度算法
    • 软件工程基础
    • 计算机网络基础

数据库基础

非关系型数据库与分布式数据库基础

非关系型数据库NoSQL分类,以数据的存储结构不同,分为键-值存储型数据库(Dynamo、Memcached 、Redis)、列存储型数据库(HBase、Cassandra)、文档性数据库(MongoDB、BaseX、CouchDB)和图形数据库(Neo4J、FlockDB)和多值数据库系统和高性能分布式内存对象缓存数据库(Memcached)
没有统一架构,不能支持关系型ACID特性,不支持关系型JOIN复杂连接操作
支持弱事务机制BASE特性,基本可用、软状态/柔性事务,最终一致性
CAP理论是NoSQL理论的基础
一致性、可用性、分区容错性
分布式数据库的全局概念层具有三种模式的信息描述:
全局概念模式、分片模式(逻辑)、分配模式(物理)
全局外模式是全局概念模式的子集,
分布式数据库管理系统应遵循准则:本地自治,分片透明,位置透明
分布式数据库将数据分布于多个节点进行存储和管理,各个节点管理本地所存储的所有数据,可以独立运行。称为本地自治
整个数据库的数据分散到各个节点上,如何分解对用户透明,即分片透明
哪些数据存储在哪个节点上对用户透明,即位置透明
节点间互相独立又在信息存储上关联,构成完整系统,但不存在依赖关系
分布式数据库的透明性包括了分片透明、分配透明(复制透明、位置透明)、映像透明 (模型透明)。
分布式数据库优点,可拓展性好、具有数据分布透明性、体系结构灵活、数据冗余低、、、但是存取结构复杂(缺点)

MapReduce技术 计算过程分解为两个主要阶段:Map阶段和Reduce阶段;用户只需编写Map函数和Reduce函数;MapReduce中存在数据chunk的冗余复制;在同等硬件条件下,MapReduce性能一般低于并行数据库

关系模式

模式是数据库中全体数据的逻辑结构和特征的描述,一般是相对固定的;
模式在某一时刻的个具体值称为该模式的一个实例,一般是相对变化的。
数据库三级模式包括了外模式、模式和内模式,外模式,提高了数据的逻辑独立性和物理独立性。其中外模式是面向用户和应用程序员,对应的视图。模式是面向建立和维护数据库人员,对应的是表。而内模式是面向系统程序员,对应的是存储文件。
通过三级模式二级映射,当内模式改变时,外模式不需要改变,当外模式改变时,逻辑模式也是不一定要改变,一个数据库可以有多个外模式。
数据库支持的 ACID 特性
原子性 (Atomicity),事务是数据库中运行的最小工作单元,整个事务中的操作要么都成功,要么都失败。
一致性 (Consistency),数据库总是从一个一致性的状态转换到另外一个一致性的状态。
隔离性 (lsolation),并发执行的各个事务之间不能互相干扰。
持久性 (Durability),一旦事务提交,则其所做的修改就会永久保存到数据库中。

数据挖掘基础

数据挖掘的典型功能包括分类、聚类、关联规则和异常检测
数据挖掘,从功能上将分析方法分为四种:关联分析,序列模式分析,分类分析,聚类分析。
关联分析,目的是挖掘出数据间的隐藏关系。
序列模式分析,挖掘出数据间的联系,侧重点是分析数据间的前后关系(因果关系)。
分类分析,首先为每一个记录赋予一个标记,即按标记分类记录,检查标定的记录,描述这些记录特征。显式描述,如一组规则定义;隐式描述,如一个数学模型或公式。
聚类分析,是分类分析的逆过程,输入集是一组未标定的记录,即输入的记录没有做任何处理,目的是根据一定的规则,合理的划分记录集合,并用显式和隐式的方法描述。
实现分类功能主要包含两个步骤:构建模型和应用模型。
构建模型是采用训练数据基于某种分类算法构建分类模型;
应用模型是首先采用测试数据对分类模型进行评估,然后对新的数据用分类模型预测数据的类型。
贝叶斯信念网络(C4.5),决策树,SVM是分类算法
Apriori是一个关联规则挖掘算法(频繁模式挖掘算法),
K-Means和EM都是聚类算法
K-Means和DBSCAN是两个经典聚类算法,K-Means算法基于对象之间的聚类进行聚类,DBSCAN基于密度进行聚类,可以处理不同大小、不同形状的簇,而K-Means不可以。若数据密度分布变化大,则两种都不适用

数据库设计步骤

需求分析阶段生成的文档包括数据流图和数据字典
结构化分析模型包括数据流图、实体联系图、状态迁移图、数据字典
数据流图四要素:外部实体,数据流,加工,数据存储
数据库概念设计阶段 E-R图 视图设计
在需求分析的基础上,依照信息要求,对用户信息加以分类、聚集和概括,建立信息模型,并依据选定的数据库管理软件转换为数据的逻辑结构,再依照软硬件环境,数据合理存储。
选择局部应用、逐一设计分E-R图和E-R图合并
工作步骤:抽象——设计局部视图——合并取消冲突——修改重构消除冗余
实体之间的联系一般有一对一,一对多和多对多联系。不常用依赖关系,即强弱实体。
当弱实体对强实体具有很强的依赖关系,而且弱实体主键的一部分或全部从强实体中获得。
分E-R图之间的冲突主要有:命名冲突、属性冲突、结构冲突
E-R图对象间的关联,必须在AB两个对象中都增加引用属性指向相关联的对方,在1对联系中的1方对象要增加一组引用分别指向它相关联的多个方对象,而*方对象增加一个引用属性指向一个1方对象。
扩展E-R图引入了组合属性、多值属性(双线椭圆)和派生属性(虚线椭圆)
数据库逻辑设计阶段 关系规范化
逻辑设计任务,将E-R图转换为关系模式,做部分关系模式的处理,分解、合并或增加冗余属性,提高存储和处理效率
扩展E-R图转换规则,派生属性在转换过程中丢弃,多值属性与实体的标识符独立转换成一个关系模式,生成的关系属于4NF(<实体标识符> →→<多值属性> 是平凡的多值依赖)
在设计过程中对表进行分解,将关系模式中的属性进行分解,形成两个或多个表,称为垂直分解;保持关系模式不变,对记录进行分解,生成两个或多个表,成为水平分解。
数据库物理设计阶段 索引设计
数据库物理设计关系到系统的运行效率,针对频繁执行的事务和查询操作进行优化和索引设计

数据库安全基础

通过GRANT语句实现授权;通过建立视图使用户只能看到部分数据;通过提供存储过程供第三方开发调用进行数据更新。
视图是建立在基本表上的虚表,通过外模式/模式的映像,将试图所提供的字段(外模式)指向基本表(模式)中的部分数据

数据仓库基础

大数据特征:巨量,多样,快变,价值
数据仓库是一个面向主题的、集成的、不可更新的、随时间不断变化的数据集合。它用于支持企业或组织的决策分析处理,其数据组织是基于多维模型,由一个事实表和多个维度表。
数据仓库面向分析,支持联机分析处理(OLAP);传统数据库是面向业务,支持事务处理(OLTP)

数据库并发控制

丢失修改:是指两个事务 T1 和 T2 读同一数据并修改,T2 提交的结果破坏了 T1 提交的结果,导致 T1 的修改被丢失。
脏读:指当一个事务正在访问数据,并且对数据进行了修改,而这种修改还没有提交到数据库中,这时,另外一个事务也访问这个数据,然后使用了这个数据。
因为这个数据是还没有提交的数据,那么另外一个事务读到的这个数据是脏数据,依据脏数据所做的操作可能是不正确的。
不可重复读:指在一个事务内,多次读同一数据。在这个事务还没有结束时,另外一个事务也访问该同一数据。那么,在第一个事务中的两次读数据之间,由于第二个事务的修改,那么第一个事务两次读到的数据可能是不一样的。这样就发生了在一个事务内两次读到的数据是不一样的,因此称为是不可重复读。
幻影现象是指同一事务对数据对象的两次访问得到的数据记录数不同。原因在于两次访问期间满足条件的记录被别的事务修改了或因为别的事务对表进行了增删,造成两次访问满足条件的记录不同了。属于不可重复读类不一致性。
三级封锁:一级封锁协议解决了丢失修改,二级封锁协议解决了脏读,三级封锁协议解决了不可重复
四种事务隔离级别:读未提交(read uncommitted)解决了丢失修改,读提交(read committed)解决了脏读,可重复读(repeatable read)解决了不可重复读和脏读,可串行化(serializable)解决了幻读。可串行化是最高隔离级别,同时并发度很低一般不用,常用的是读提交。
解决并发控制:
① 时间戳,给每个事务分配一个全局唯一的时间戳,且单调增长
② 两段锁协议,一个事务获取了排它锁,则其他事务不能再加任何形式的锁;一个事务获取了共享锁,其他事务只能再加共享锁,不能再加排它锁。
数据库完整性是指数据库中数据在逻辑上的一致性、正确性、有效性和相容性;数据库的安全性是指保护数据库以防止不合法的使用造成的数据泄露、更改和破坏;数据可靠性是指数据的完整性,一致性和准确性;数据库并发控制是指再多用户共享的系统中,保证数据库的完整性不受破坏,避免用户得到不正确的数据。

数据库故障恢复

1事务故障

事务故障**:是指事务运行过程中由于种种原因使事务未运行至正常终止点而夭折的情况。
如:运算溢出、因死锁而被选中撤销该事务
事务故障的恢复:
(1)反向扫描文件日志,查找该事务的更新操作。
(2)对该事务的更新操作执行逆操作。
(3) 重复(1)、(2)直到遇此事务的开始标记

2介质故障(硬故障)

介质故障:是指外存设备故障。如:磁盘损坏、强磁场干扰
介质故障的恢复:
(1)装入最新的数据库后备副本,使数据库恢复到最近一次转储时的一致性状态
(2)装入相应的日志文件副本,重做已完成的事务。

数据库重组与重构

数据库重组

**数据库重组:**将数据库的相关信息重新组织。数据库使用较长一段时间后,因为增、删、改等操作,使得数据的分布索引及相关数据会变得比较凌乱,从而影响数据库的查询效率。
数据库重组即是将数据库的相关信息(索引、单表、表空间)重新组织,即删除原有的表或索引,重建空的表或索引后,再把数据导入新表或索引中。

数据库重构

数据库重构:对表结构、数据、存储过程和触发器重新设计,在不改变软件表现形式的前提下,提高其可理解性,降低其维护成本。

函数依赖

最小函数依赖集满足下列条件:
任一函数函数依赖的右部仅含有一个属性;不含部分依赖;不含传递依赖
模式分解等价3种情况:分解具有无损连接性;分解要保持函数依赖;分解既要无损连接性又要保持函数依赖
设R(U)是属性集U上的一个关系模式。X,Y ,Z 是U的子集,并且Z=U-X-Y 。关系模式R(U)中多值依赖X→→Y 成立,当且仅当对R(U)的任一关系r ,给定的一对(x ,z)值有一组Y的值,这一组值仅仅决定于x 值而与z 值无关。
平凡的多值依赖与非平凡的多值依赖: 若X→→Y,而Z为空集,则称X→→Y为平凡的多值依赖;若Z不为空,则称其为非平凡的多值依赖。
所以,4NF要求关系模式的属性之间不允许有非平凡且非函数依赖的多值依赖。

网络攻击基础

木马程序一般分为服务端和客户端,服务端是攻击者传到目标机器上的部分,用来在目标机上监听等待客户端连接过来。客户端是用来控制目标机器的部分,放在攻击者的机器上。
终端设备和远程站点之间建立安全连接的协议是SSH,建立在应用层和传输层上的安全协议
HTTPS是以安全为目标的HTTP通道,即使用SSL加密算法的HTTP
攻击远程主机,通常利用端口漏洞扫描来检测远程主机状态
能够对明文进行加密,RSA,SHA-1,MD5,RC5,
RSA是一种非对称加密算法,由于加密和解密的密钥不同,便于密钥管理和分发,同时在用户或者机构之间进行身份认证方面有较好的应用。RSA属于公钥加密算法
SHA-1是一种安全散列算法,常用于对接收到的明文输入产生固定长度的输出,来确保明文在传输过程中不会被篡改。
MD5是一种使用最广泛的报文(消息)摘要算法。
RC5适用于大量明文加密并传输。
对称加密算法包括: DES(数据加密标准)、AES。
非对称加密算法包括: RSA。
身份认证。用户可在一定的认证机构(CA)处取得证书,与该用户在同一机构取得的证书可通过相互的公钥验证身份;两用户使用的证书来自不同的认证机构时,用户双方确定对方身份之前,首先需要确定两个认证机构之间的身份认证,交换两个CA的公钥以确定CA的合法性,然后在进行用户的身份认证。
数字信封技术是用密码技术的手段保证只有规定的信息接受者才能获取信息的安全技术。
基于公钥的数字签名技术,是通信的S、T双方,发送方S使用自己的私钥,对将所要发送的信息生成数字签名,接收方T使用S的公钥对信息解密验证,以确认消息确实来自S
数字签名为通信的S、T双方提供服务,使得S向T发送的签名消息P,达到以下目的:
T可以验证消息P确实来源于S;S以后不能否认发送过P;T不能编造或者改变消息P
网络攻击一般分为主动攻击与被动攻击,主动攻击包括篡改、伪造、拒绝服务等,被动攻击包括窃听、流量分析等。
重放攻击、拒绝服务攻击、数据截获攻击、数据流分析
重放攻击又称重播攻击、回放攻击,是指攻击者发送一个目的主机已接受过的包,来达到欺骗系统的目的,主要用于身份认证过程,破坏认证的正确性。
拒绝服务攻击,攻击者想法让目标机器停止提供服务,甚至主机死机,让服务器实现两种效果:一是迫使服务器的缓冲区满,不接受新请求,二是使用IP欺骗迫使服务器把非法用户的连接复位,影响合法用户连接。
数据接获攻击也称数据包截获攻击,是通过使用网络抓包技术,在局域网或无线网络中,截获经过网络中的数据包,对其加以分析,以获取有价值的信息。
数据流分析攻击是一种被动攻击方式,攻击者通过对流经网络传输介质数据流量长期观察和分析,得出网络流量变化的规律,并综合外部信息进行分析。
字典攻击:在破解密码或密钥时,逐一尝试用户自定义词典中的可能密码(单词或短语)的攻击方式。
暴力破解的区别是,暴力破解会逐一尝试所有可能的组合密码,而字典式攻击会使用一个预先定义好的单词列表 (可能的密码)。
密码盐:在密码学中,是指通过在密码任意固定位置插入特定的字符串,让散列后的结果和使用原始密码的散列结果不相符,这种过程称之为“加盐”。
如果密码盐泄露,黑客可以利用他们数据字典中的密码,加上泄露的密码盐,进行散列,然后再匹配,由于密码盐可以加在任意位置,也加大了破解的难度。所以即使密码盐泄露,字典攻击和不加盐时的效果是不一样的。
社会工程攻击,是一种利用"社会工程学”来实施的网络攻击行为。在计算机科学中,社会工程学指的是通过与他人的合法地交流,来使其心理受到影响,做出某些动作或者是透露些机密信息的方式。这通常被认为是一种欺诈他人以收集信息、行骗和入侵计算机系统的行为。
蜜罐技术是一种在互联网上运行的计算机系统,它通过模拟一个或多个易受攻击的主机和服务,来吸引诱骗那些试图非法闯入他人计算机系统的人。
蜜罐技术主要功能:对系统中所有的操作和行为进行监视和记录。通过对系统进行伪装,使得攻击者在进入到蜜罐系统后并不会知晓其行为已经处于系统的监视之中,然后根据它攻击行为,分析攻击的方法和攻击企图。

计算机系统硬件基础

指令寄存器 IR:保存从存储器中读出的当前要执行的指令
指令译码器 ID:用来对指令寄存器中的指令进行译码分析,指出指令的操作种类和寻址方式。
程序计数器 PC:用来存放下一条要执行指令的存储器地址,按此地址从对应存储单元取出的内容就是将要执行的指令

名称 CISC复杂 RISC精简
指令条数 只选取最常见指令
指令复杂度
指令长度 变化 短、固定
指令执行周期 随指令变化大 大多在一个机器周期内完成
指令格式 复杂 简单
寻址方式
涉及访问主存指令 极少,大多只有存和取2条
通用寄存器数量 一般 大量
译码方式 微程序控制 硬件电路
对编译系统要求

CPU中其它部件作用:

程序计数器是用于存放下一条指令所在单元的地址的地方。
在程序执行前,必须将程序的起始地址,即程序的一条指令所在的内存单元地址送入程序计数器,当执行指令时,CPU将自动修改程序计数器的内容,即每执行一条指令程序计数器增加一个量, 使其指向下一个待指向的指令。程序的转移等操作也是通过该寄存器来实现的。
地址寄存器一般用来保存当前CPU所访问的内存单元的地址,以方便对内存的读写操作。
累加器是专门存放算术或逻辑运算的一个操作数和运算结果的寄存器。
算术逻辑单元ALU 是 CPU 的执行单元,主要负责运算工作。
指令寄存器一般用来保存当前正在执行的一条指令。
高速缓存 基于成本和性能方面的考虑,Cache (即高速缓存)是为了解决相对较慢的主存与快速的 CPU之间工作速度不匹配问题而引入的存储器。
程序中断方式与DMA方式
程序中断方式:与程序控制方式相比,中断方式因为 CPU 无需等待而提高了传输请求的响应速度。
DMA方式:DMA方式是为了在主存与外设之间实现高速、批量数据交换而设置的。
DMA 方式比程序控制方式与中断方式都高效。CPU 只负责初始化,不参与具体传输过程。
时钟周期:是计算机中最基本、最小的时间单位
指令周期:从取指开始到执行完成该指令所需要的全部时间
总线周期:CPU通过总线对存储器或I/O接口进行一次访问所需时间
CPU周期(机器周期):计算机中为了方便管理,常把一条指令 的执行过程划分为若干个阶段(如取指、间址、执行、中断等)每一阶段完成一个基本操作。这个基本操作所需要的时间称为机器周期,则机器周期由若干个时钟周期组成。
存储周期:采用DMA传送数据每传送一个数据都占用一个存储周期

数据结构基础

C语言函数是一段具有独立功能的程序单元,函数是先声明后引用,函数的定义包括函数首部和函数体,函数是不允许嵌套定义。
javascript 并不是严格意义的面向对象语言,而是一种基于对象、事件驱动编程的客户端动态脚本语言。Ruby 是一种开源的面向对象程序设计的服务器端动态脚本语言。
一般地,程序设计语言的定义都涉及语法、语义和语用等方面。
语法是指由程序设计语言的基本符号组成程序中的各个语法成分(包括程序)的一组规则,其中由基本字符构成的符号(单词)书写规则称为词法规则,由符号构成语法成分的规则称为语法规则。程序设计语言的语法可用形式语言进行描述。
语义是程序设计语言中按语法规则构成的各个语法成分的含义,可分为静态语义和动态语义静态语义指编译时可以确定的语法成分的含义,而运行时刻才能确定的含义是动态语义。一个程序的执行效果说明了该程序的语义,它取决于构成程序的各个组成部分的语义。
语用表示了构成语言的各个记号和使用者的关系,涉及符号的来源、使用和影响。语言的实现则有个语境问题。
语境是指理解和实现程序设计语言的环境,包括编译环境和运行环境。
语义分析阶段
语义分析阶段主要是检查源程序是否存在语义错误,并收集类型信息供后面的代码生成阶段使用,只有语法和语义都正确的源程序才能翻译成正确的目标代码。
语义分析的主要工作是
进行各类型分析和检查。赋值语句的右端和左端的类型不匹配。表达式的除数是否为零等。
解释程序在词法、语法、语义分析方面与编译程序的工作原理基本相同,在运行用户程序时,直接执行源程序或源程序的中间表示。因此解释程序不产生源程序的目标程序
编译程序是把某高级语言书写的源程序翻译成与之等价的目标程序(汇编语言或机器语言)
如果操作符在操作数后面,则称为后缀表达式。
计算机在存储中缀表达式时,需要使用树这种数据结构,如果表达式过于复杂,那么树的高度会变得很高,大大增加了时间复杂度和空间复杂度。
如果转换成线性结构,那么效率将变得高很多,所以需要将中缀表达式先转换成前缀或者后缀表达式,然后依靠栈这种线性数据结构来进行计算。
栈和队列都是操作受限的线性表,栈仅在表尾插入和删除元素,队列尽在表头删除元素、在表尾插入元素。队列是先入先出的线性表栈是后进先出的线性表。
一个线性序列经过队列结构后只能得到与原始序列相同的元素序列,而经过一个栈结构后则可以得到多种元素序列
串是由零个或多个任意字符组成的有限序列。串可以采用多种存储方式,比如顺序存储、块链存储方式等。

排序方法 稳定性 时间复杂度
直接插入 稳定 O(n²)
冒泡排序 稳定 O(n²)
归并排序 稳定 O(nlogn)
基数排序 稳定 O(nlogn)
简单选择 不稳定 O(n²)
希尔排序 不稳定 O(n1.3方)
快速排序 不稳定 O(nlogn)
堆排序 不稳定 O(nlogn)

操作系统基础

CPU速度远快于打印机,为解决这个速度不匹配,使用缓存技术
引入缓冲区的主要原因归结为以下几点:
1缓和CPU与I/0设备间速度不匹配的矛盾。
2减少对CPU的中断频率,放宽对CPU中断响应时间的限制。
3提高CPU和I/0设备之间的并行性。
操作系统主要功能:
①进程管理,其工作主要是进程调度,在单用户单任务的情况下,处理器仅为一个用户的一个任务所独占,进程管理的工作十分简单。但在多道程序或多用户的情况下,组织多个作业或任务时,就要解决处理器的调度、分配和回收等问题。
②存储管理分为几种功能:存储分配、存储共享、存储保护、存储扩张。
③设备管理分有以下功能:设备分配、设备传输控制、设备独立性。
④文件管理:文件存储空间的管理、目录管理、文件操作管理、文件保护。
⑤作业管理是负责处理用户提交的任何要求。
根据操作系统内核是否对线程可感知,可以把线程分为内核线程和用户线程。
线程可以实现在内核空间和用户空间。
进程观点把操作系统看作由若千个可以同时独立运行的程序和一个对这些程序进行协调的核心所组成,这些同时运行的程序称为进程。系统进行资源分配和调度的独立单位。
程序设计语言的基本成分包括数据、运算、控制和传输,
数据是程序操作的对象,按照数据组织形式可以分为多种类型,其中枚举属于用户定义类型,数组属于构造类型
按照数据的作用域范围,可分为全局变量和局部变量。系统为全局变量分配的存储空间在程序运行的过程中一般是不改变的,而为局部变量分配的存储单元是动态改变的。

调度算法

1先来先服务调度算法(FCFS): 就是按照各个作业进入系统的自然次序来调度作业。这种调度算法的优点是实现简单,公平。其缺点是没有考虑到系统中各种资源的综合使用情况.往往使短作业的用户不满意,因为短作业等待处理的时间可能比实际运行时间长得多。
2短作业优先调度算法(SPF): 就是优先调度并处理短作业,所谓短是指作业的运行时间短。而在作业未投入运行时,并不能知道它实际的运行时间的长短,因此需要用户在提交作业时同时提交作业运行时间的估计值。
3时间片轮转调度算法:每个进程被分配一个时间段,称作它的时间片,即该进程允许运行的时间。如果在时间片结束时进程还在运行,则 CPU 将被剥夺并分配给另一个进程。如果进程在时间片结束前阻塞或结束,则 CPU 当即进行切换。调度程序所要做的就是维护一张就绪进程列表,当进程用完它的时间片后,它被移到队列的末尾。适用于交互式系统
4基于优先级调度算法(HPF): 每一个作业规定一个表示该作业优先级别的整数,当需要将新的作业由输入并调入内存处理时,优先选择优先数最高的作业。
作业周转时间(Ti)=完成时间(Tei)-提交时间(Tsi)
作业平均周转时间(T)=周转时间/作业个数
大多数程序总是对少量的页面进行多次的访问。因此,只有很少的页表项会被反复读取,而其他的页表项很少被访问,所以可以在计算机中设置一个小型的硬件设备,将虚拟地址直接映射到物理地址,而不必再访问页表。这种设备称为
转换检测缓冲区
(TLB),有时又称为相联存储器 (associate memory) 或快表。
虚拟内存
多级页表
内存映射
线程共享的内容包括:
进程代码段、内存地址空间、数据、文件
进程的公有数据(利用这些共享的数据,线程很容易的实现相互之间的通讯)、进程打开的文件描述符、信号的处理器、进程的当前目录和进程用户 ID 与进程组 ID
线程独有的内容包括:
线程 ID,寄存器组的值,线程的堆、栈,错误返回码,线程的信号屏蔽码

软件工程基础

在软件模型中,螺旋模型首次引入风险管理
软件需要包括功能需求非功能需求,非功能需求是指产品必须具备的属性,比如性能、可测试性、安全性等,“发送消息需在1秒内得到响应”属于性能需求。
UML图中,序列图是场景的图形化表示,描述了以时间顺序组织的对象之间的交互活动。
序列图是对对象之间传送消息的时间顺序的可视化表示。
序列图的主要用途是把用例表达的需求,转化为进一步、更加正式层次的精细表达。
ISO/IEC9126 软件质量模型是一种评价软件质量的通用模型,包括3 个层次:
1、质量特性
2、质量子特性
3、度量指标
软件能力成熟度模型(CMM)是对软件组织进化阶段的描述,分为5个成熟度级别。
初始级(Initial) 处于这个最低级的组织,基本上没有健全的软件工程管理制度。每件事情都以特殊的方法来做。软件开发的成功依赖软件开发人员个人能力。
可重复级(Repeatable) 有基本的软件项目的管理行为、设计和管理技术是基于相似产品中的经验,故称为“可重复”。在这一级采取了一定措施,这些措施是实现一个完备过程所必不可缺少的第一步。典型的措施包括仔细地跟踪费用和进度。
已定义级(Defined) 已为软件生产的过程编制了完整的文档。软件过程的管理方面和技术方面都明确地做了定义,并按需要不断地改进过程,而且采用评审的办法来保证软件的质量。
已管理级(Managed) 对每个项目都设定质量和生产目标。这两个量将被不断地测量,当偏离目标太多时,就采取行动来修正。利用统计质量控制,管理部门能区分出随机偏离和有深刻含义的质量或生产目标的偏离。
优化级(Optimizing) 组织的目标是连续地改进软件过程。这样的组织使用统计质量和过程控制技术作为指导。从各个方面中获得的知识将被运用在以后的项目中,从而使软件过程融入了正反馈循环,使生产率和质量得到稳步的改进。
耦合程度从低到高的顺序为:非直接耦合、数据耦合、标记耦合、控制耦合、外部耦合、公共耦合和内容耦合。
最好的是非直接耦合,没有直接联系,模块之间不相互依赖于对方。
最差的是内容耦合,一个模块访问了另一个模块的内部数据
内聚程度从高到低的顺序为:功能内聚、顺序内聚、通信内聚、过程内聚、瞬时内聚、逻辑内聚和偶然内聚
所以,在软件设计中通常用耦合度和内聚度作为衡量模块独立程度的标准,耦合程度最高的是内容耦合:内聚程度最高的是功能内聚。
软件测试的目的是发现软件的错误,验证软件是否满足用户需求,并通过分析软件错误产生的原因,以帮助发现当前开发工作所采用的软件过程的缺陷,以便进行软件过程改进。软件测试不能发现软件中的所有错误,也不可能保证软件完全正确。

计算机网络基础

在 TCP/IP 协议中,
应用层一消息、报文(message)
传输层一数据段(segment)
网络层一分组、数据包(packet)
链路层一帧 (frame)
物理层一比特流

telnet默认端口23 ftp端口号21和20
HTTPS是以安全为目标的 HTTP 通道,在 HTTP 的基础上通过传输加密和身份认证保证了传输过程的安全性。
**SOCKS:**防火墙安全会话转换协议,协议提供一个框架,为在 TCP 和 UDP 域中的客户机/服务器应用程序能更方便安全地使用网络防火墙所提供的服务。协议工作在 OSI 参考模型的第 5层(会话层),使用 TCP 协议传输数据。
SSH为Secure Shell 的缩写,为建立在应用层基础上的安全协议。SSH 是较可靠,专为远程登录会话和其他网络服务提供安全性的协议。
互联网安全协议缩写为IPsec,是一个协议簇,通过对IP 协议的分组进行加密和认证来保护 IP协议的网络传输协议簇(一些相互关联的协议的集合)。属于网络层安全协议。
SMTP简单邮件传输协议,是一种提供可靠且有效的电子邮件传输的协议。
POP邮局协议,POP 允许本地计算机上的用户代理程序连接到邮件服务器,将用户的邮件取回到本地。
IMAP交互式邮件存取协议,客户端的动作会反应到邮件服务器上。
FTP文件传输协议,在网络上进行文件传输。
Web 防火墙 (WAF),工作在第7层,可以识别和防范针对应用层的攻击,可以检测 SQL 注入、跨站脚本、网页篡改等攻击。
防火墙一般指的是传统的防火墙,一般工作在第三、四层。
堡垒机隔离了终端设备对网络服务器资源的直接访问,能够监控和记录运维人员对服务器资源的操作行为,可以起到审计监控的功能。
入侵检测系统(IDS),入侵检测系统最核心的功能是对一些访问的事件进行分析,从而发现一些违反安全策略的行为。

你可能感兴趣的:(软考,数据库,数据库,经验分享,大数据,软考)