零零碎碎的软考知识点
作者:互联网
0.以下知识点来自网络以及软件设计师教程第五版(仅供个人学习参考)
1.中断处理时,系统保存程序状态条件寄存器PSW和程序计数器PC等寄存器值,方便中断结束后程序返回中断点继续执行。
2.流水线执行时间计算,取值+分析+执行+(总条数-1)*最长的一段。
3.MIME是多用途互联网邮件扩展协议,扩展了电子邮件标志,让邮件能支持非ASCII字符文本、非文本格式附件(二进制、声音、图像等)。在http协议中也使用了MIME的框架,标准被扩展为互联网媒体类型。
4.对称加密算法,也称私钥加密、传统密码算法。通信双方都使用相同的秘钥,安全性得不到保证。常见有DES、TDEA、Blowfish、RC5、IDEA。
5.非对称加密算法,也称公开秘钥加密算法。主要流程是用对方的公钥加密消息以后发送对方,对方再用自己的私钥解密消息,加密密钥和解密密钥完全不同,不能由一个推导出另一个。常见有RSA、DSA、ECC。
6.数字证书验证,使用CA的公钥对数字证书的CA签名进行验证。
7.重放攻击是指攻击者发送一个目的主机已经接受过的包,防御重放攻击可以增加一个时间戳认证。
8.软著权规定,受委托的作品,如果没有合同约定,著作权属于受托人。
9.软著权规定,公司委托的工作,著作权属于公司。
10.内聚的类型,偶然内聚指某些处理单元偶然地放在一个模块;逻辑内聚是指逻辑相关的单元放在一个模块;时间内聚是指模块内的单元都在同一时间段运行;过程内聚是指需要一次性一起执行的单元放在一个模块;
通信内聚是指模块内的单元操作同一数据集或生成同一数据集;顺序内聚是指单元与同一功能相关,且顺序执行;功能内聚是指单元共同完成一个功能。
11.功能内聚是最强的内聚模式。
12.关键路径是工期最长的路径。
13.项目的风险可能来自进度、预算、人员、资源、利益相关者等。
14.编译过程,词法分析对源程序逐个字符进行扫描,识别出关键字、标识符、常数、运算法和分隔符等,将字符流转换成记号流;
语法分析将单词符号序列分解成各类语法单位,如表达式、语句、程序段等,并构造一棵能正确反映该结构的语法树,如括号不匹配、if end if不匹配、缺少分号、表达式缺少操作数;
语义分析各语法结构的含义,检查源程序是否包含静态语义错误,并收集类型信息供后面的代码生成阶段使用,如整除取余参数使用了浮点数这种类型不匹配的错误、运算符和运算类型不符合。
只有语法和语义都正确的源程序才能翻译成正确的目标代码。
15.磁盘调度,分为移臂调度和旋转调度,一般先进行移臂调度,然后进行旋转调度。
16.磁盘调度算法,先来先服务FCFS,优点是公平、简单,缺点是平均寻道时间可能较长;
最短寻道时间优先SSTF,优先访问与当前磁头最近的磁道,使每次的寻道时间最短,但不能保证平均寻道时间最短;
扫描算法SCAN,又称电梯调度算法,在最短寻道时间优先的基础上,增加优先考虑磁头的当前移动方向,若该方向无等待者,就改变移动臂的方向,避免了饥饿现象;
单向扫描调度算法CSCAN,总是从0号柱面往后扫描,只做单向移动,返回时不为任何访问者服务。
17.缓冲技术,提高外设利用率,分为硬件缓冲和软件缓冲;硬件缓冲使用寄存器作为缓冲,软件缓冲通过操作系统管理;
主要作用有1.缓和CPU与I/O设备间速度不匹配;2.减少对CPU的中断频率,放宽对中断响应时间的限制;3.提高CPU和I/O设备之间的并行性。
18.scrum框架模型,又称3-3-5-5模型,包含3个工件、3个角色、5个价值观、5个事件;3个工件分别是Product Backlog、Spring Backlog、
Product Increment;3个角色分别是产品负责人Product Owner、Scrum Master、开发团队Development Team;5个价值观分别是勇气、专注、承诺、
尊重、开放;5个事件分别是Sprint、Sprint Planning、Daily Scrum、Sprint Review、Spring Retrospective。
19.极限编程XP,由价值观、原则、实践和行为组成,通过行为贯穿于整个生存周期;
4大价值观:沟通、简单性、反馈和勇气;
5大原则:快速反馈、简单性假设、逐步修改、提倡更改和优质工作;
12个最佳实践:计划游戏、小型发布、隐喻、简单设计、测试先行、重构、结队编程、集体代码所有制、持续集成、每周工作40小时、现场客户和编码标准。
20.统一过程(UP)模型,是一种用例和风险驱动,以架构为中心,迭代并且增量的开发过程,
由UML方法和工具支持;包含4个技术阶段:起始阶段-生命周期目标、精化阶段-生命周期架构、构建阶段-初始运作功能、移交阶段-产品发布;
典型代表是RUP,完全兼容UP,但比UP更完整、更详细,适用于商业。
21.敏捷统一过程(AUP),采用在大型上连续,在小型上迭代的原理,采用经典的UP阶段性活动(初始、精化、构建和转换),提供一系列的活动。
每个AUP迭代执行活动:建模、实现、测试、部署、配置及项目管理、环境管理。
22.CMM软件能力成熟度模型,分为五个等级:初始级、可重复级、已定义级、已管理级、优化级。1级为最低级,5级为最高级。
初始级,工作无序,项目成功完成完全依靠核心人物的努力;
可重复级,建立了基本的项目管理过程和实践来跟踪项目费用、进度和功能特性,有必要的过程准则来重复以前在同类项目中的成功;
已定义级,管理和工程两方面的软件过程已经文档化、标准化,并综合成整个软件开发组织的标准软件过程。所有项目都采用根据实际情况修改后得到的标准软件过程来开发和维护软件;
已管理级,制定了软件过程和产品质量的详细度量标准;软件过程的产品质量都被开发组织的成员所理解和控制;
优化级,加强了定量分析,通过来自过程质量反馈和来自新观念、新技术的反馈使过程能不断持续地改进。
23.原型模型(Prototype Model),适用于用户需求不清、需求经常变化的情况。
24.螺旋模型(Spiral Model),强调风险分析,适用于复杂具有高风险的系统。
25.喷泉模型(Water Fountain Model),喷泉模型是一种以用户需求为动力,以对象作为驱动的模型,适用于面向对象的开发方法。
26.基于构件的开发模型(Component-based Development Model),利用预先包装的构件来构造应用系统。
27.瀑布模型(Waterfall Model),瀑布模型包括需求分析、设计、编码、测试、运行与维护,适用于需求明确的软件项目。
28.增量模型(Incremental Model),具有瀑布模型的所有优点,第一个版本的成本和时间很少。
29.原型模型和螺旋模型属于演化模型,适用于对需求缺乏准确认识的情况。
30.ISO/IEC软件质量模型中,质量特性及其子特性:
功能性:适合性、准确性、互用性、依从性、安全性;
可靠性:容错性、已恢复性、成熟性;
易用性:易学性、易理解性、易操作性;
效率:时间特性、资源特性;
维护性:可测试性、可修改性、稳定性、易分析性;
可移植性:适应性、易安装性、一致性、可替换性;
31.测试设计和测试用例在需求分析阶段写。
32.环路复杂性为闭环的个数加1。
33.共同重用原则指一个包中的所有类应该是共同重用的,即如果重用了包中的一个类,那么就要重用包中的所有类;
开放封闭原则指类要对扩展开放,对修改封闭;
接口分离原则指一个功能可以有不同的实现方法,但不管什么方法实现的,调用接口应是统一的;
共同封闭原则指因某个同样的原因而需要修改的所有类,都应封闭进同一个包。
34.桥接模式与适配器模式都可用于将抽象部分和实现部分的分离,区别在于,他们分别适用于设计的不同阶段。桥接模式适用于设计的早期,即接口还没有进行实现的阶段;而如果接口已经实现但无法有效地工作时,可以用适配器模式对已有的实现进行改进。
35.在编译方式下,编译过程生成的是与源程序等价的目标程序,源程序和编译程序都不再参与目标程序的执行过程;而在解释方式下,解释过程生成的不是源程序的目标代码,而是中间代码。
36.上下文无关法是形式语言理论中一种重要的变换文法,程序设计语言的语法基本上都是上下文无关法。
37.数据库系统的两级映像:模式/内模式映像、外模式/模式映像。
38.事务具有原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability)。
原子性是指事务是原子的,要么都做,要么都不做;
一致性是指事务执行的结果必须保证数据库从一个一致性状态变到另一个一致性状态;
隔离性是指事务相互隔离,当多个事务并发执行时,任一事务的更新操作直到其成功提交的整个过程,对其他事务都是不可见的;
持久性是指一旦事务提交,即使数据库崩溃,其对数据库的更新操作的结果也不会丢失。
39.直接插入排序,将一个记录插入到已经排好序的有序表中,得到一个新的、记录数加1的有序表,类似扑克牌的理牌操作;
它是一种稳定的排序方法,时间复杂度为O(n^2),空间复杂度为O(1);
void Insertsort(int data[],int n)
{
int i,j;
int tmp;
for(int i=1;i<n;i++){
if(data[i]<data[i-1]){
tmp = data[i];
data[i] = data[i-1];
for(j=i-1;j>=0&&data[j]>tmp;j--){
data[j+1] = data[j];
}
data[j+1] = tmp;
}
}
40.冒泡排序,两两比较相邻的数据,将最大的数冒泡到最尾部,反复执行该过程直到序列有序;
它是一种稳定的排序方法,时间复杂度为O(n^2),空间复杂度为O(1);
void BubbleSort(SqList *L)
{
int i,j;
status flag=true;
for(i=1;i<L->length && flag;i++)
{
flag=false;
for(j=L->length-1;j>=i;j--)
{
if(L->r[j]>l->r[j+1])
{
swap(L,j,j+1);
flag=true;
}
}
}
}
41.概念模式也称模式,是对数据库中全部数据的整体逻辑结构的描述;外模式也称用户模式或子模式,是用户与数据库系统的接口,是对用户用到的那部分数据的描述;内模式也称存储模式,是对数据库在物理存储方面的描述,定义索引内部记录类型、索引、文件的组织方法以及数据控制方面的细节。
42.直接主存存取(DMA),是指数据再主存与I/O设备间(即主存与外设间)直接成块传送。
43.时间局部性是指如果程序中的某条指令一旦被执行,不久的将来该指令可能再次执行;
空间局部性是指一旦程序访问了某个存储单元,不久的将来其附近的存储的单元也可能被访问。
44.循环冗余检验CRC,采用模2运算来构造检验位。
45.海明码利用奇偶性来检错和纠错;数据位n,检验位k,2^k-1>=n+k。
46.归并排序最好最坏情况下的时间复杂度都是O(nlog2n),空间复杂度为O(n)。
47.排序方法对比:
48.CISC复杂指令集计算机的基本思想是进一步增强原有指令的功能,用更为复杂的新指令取代原先由软件子程序完成的功能。主要缺点有指令集过于庞杂、使用微程序技术需要多个CPU周期,处理速度慢、难以优化编译、设计复杂、研制周期长、成本高、成品率低;
RISC精简指令集计算机的基本思想是通过减少指令总数和简化指令功能降低硬件设计的复杂度,使指令能单周期执行,并通过优化编译提高指令的执行速度,采用硬布线控制逻辑优化编译程序;关键技术有:重叠寄存器窗口技术、优化编译技术、超流水及超标量技术、硬布线逻辑与微程序相结合在微程序技术中。
49.人机交互黄金三原则包括:置于用户控制之下、减少用户的记忆负担、保持界面的一致性。
50.测试中存在集群规律,即未发现的错误数量与已发现的错误数量成正比。
51.白盒测试中,语句覆盖是覆盖度最弱的,所以路径覆盖往往比语句覆盖发现更多错误。
52.组合关系,指的是整体与部分的关系,并且整体与部分的生命周期不相同。
53.类图展现了一组对象、接口、协作和他们之间的关系;
组件图展现了一组组件之间的组织和依赖;
通信图也是一种交互图,它强调收发消息的对象或参与者的结构组织;
部署图是用来对面向对象系统的物理方面建模的方法,展现了运行时处理节点以及其中构件的配置;
顺序图是一种交互图,它有一组对象或参与者以及它们之间可能发送的消息构成。
54.责任链模式:通过给多个对象处理请求的机会,减少请求的发送者与接收者之间的耦合。将接收对象链接起来,在链中传递请求,直到有个对象处理这个请求;
迭代器模式:提供一种方法来顺序访问一个聚合对象中的每个元素,而不需要暴露该对象的内部表示;
命令模式:将一个请求封装为一个对象,从而可用不同的请求对客户进行参数化,将请求排队或记录请求日志,支持可撤销的操作;
解释器模式:给定一种语言,定义它的文法表示,并定义一个解释器,该解释器用来根据文法表示来解释语言中的句子。
责任链模式和迭代器模式都是行为型对象模式。
55.共享锁:又称读锁,若事务对数据对象加上共享锁,其他事务只能再加共享锁,但不能加排它锁,直到最初的事务释放共享锁;
排它锁:又称写锁,若事务对数据对象加上排它锁,其他事务不能再加任何锁,直到最初的事务释放排它锁;
56.分布性:数据存储在多个不同的节点上;
逻辑相关性:数据库系统内的数据再逻辑上具有相互关联的特性;
场地透明性:使用分布式数据库中的数据时不需指明数据所在的位置;
场地自治性:每一个单独的节点能够执行局部的应用请求;
57.UDP是一种不可靠、无连接的协议,没有连接管理能力,不负责重发丢失或出错的数据信息,也没有流量控制,DNS、SNMP使用UDP;
TCP在IP提供的不可靠数据服务上为应用提供一个可靠的、面向连接、全双工的数据传输服务,FTP使用TCP。
58.ipconfig /all显示详细信息,当前网卡的ip信息、DNS信息、mac地址、DHCP服务器信息等;
ipconfig /renew 更新所有适配器,可以重新获取ip地址
ipconfig /release 释放所有匹配的连接,断网后重新获取ip地址
ipconfig /flushdns 刷新DNS缓存
59.DNS解析过程:
1.浏览器检查自身缓存有没有该域名的ip地址,有则直接跳转;
2.浏览器检查操作系统缓存hosts文件有没有该域名的ip地址;
3.请求本地域名服务器LDNS来解析该域名;
4.请求Root Server域名服务器来解析该域名,根域名服务器;
60.TCP/IP模型与OSI模型的对比
61.IP协议提供的是无连接的和不可靠的服务。所以把差错检测和流量控制之类的服务授权给其他的各层协议。
62.ARP地址解析协议,作用是将IP地址转换成物理地址。首先查询ARP缓存,如果没有该IP,则在局域网广播发送一个ARP包,如果局域网内有该IP,则计算机返回一个ARP响应包给缓存。
RARP反地址解析协议,负责将物理地址转成IP地址,由网络管理员事先把网卡上的IP地址和相应的物理地址存储在IP RARP服务器的数据库中。
63.ICMP网络控制信息协议,负责发送差错报文,有五种差错报文(源抑制、超时、目的不可达、重定向和要求分段)和四种信息报文(回应请求、回应应答、地址屏蔽码请求请求和地址屏蔽码应答)。ping指令使用ICMP报文测试目标是否可达。
64.在IP地址中,全0的是网络,全1的是广播。
65.DNS使用的是UDP端口,端口号是53。
66.Telnet使用的TCP端口,端口号是23。
------------恢复内容开始------------
0.以下知识点来自网络以及软件设计师教程第五版(仅供个人学习参考)
1.中断处理时,系统保存程序状态条件寄存器PSW和程序计数器PC等寄存器值,方便中断结束后程序返回中断点继续执行。
2.流水线执行时间计算,取值+分析+执行+(总条数-1)*最长的一段。
3.MIME是多用途互联网邮件扩展协议,扩展了电子邮件标志,让邮件能支持非ASCII字符文本、非文本格式附件(二进制、声音、图像等)。在http协议中也使用了MIME的框架,标准被扩展为互联网媒体类型。
4.对称加密算法,也称私钥加密、传统密码算法。通信双方都使用相同的秘钥,安全性得不到保证。常见有DES、TDEA、Blowfish、RC5、IDEA。
5.非对称加密算法,也称公开秘钥加密算法。主要流程是用对方的公钥加密消息以后发送对方,对方再用自己的私钥解密消息,加密密钥和解密密钥完全不同,不能由一个推导出另一个。常见有RSA、DSA、ECC。
6.数字证书验证,使用CA的公钥对数字证书的CA签名进行验证。
7.重放攻击是指攻击者发送一个目的主机已经接受过的包,防御重放攻击可以增加一个时间戳认证。
8.软著权规定,受委托的作品,如果没有合同约定,著作权属于受托人。
9.软著权规定,公司委托的工作,著作权属于公司。
10.内聚的类型,偶然内聚指某些处理单元偶然地放在一个模块;逻辑内聚是指逻辑相关的单元放在一个模块;时间内聚是指模块内的单元都在同一时间段运行;过程内聚是指需要一次性一起执行的单元放在一个模块;
通信内聚是指模块内的单元操作同一数据集或生成同一数据集;顺序内聚是指单元与同一功能相关,且顺序执行;功能内聚是指单元共同完成一个功能。
11.功能内聚是最强的内聚模式。
12.关键路径是工期最长的路径。
13.项目的风险可能来自进度、预算、人员、资源、利益相关者等。
14.编译过程,词法分析对源程序逐个字符进行扫描,识别出关键字、标识符、常数、运算法和分隔符等,将字符流转换成记号流;
语法分析将单词符号序列分解成各类语法单位,如表达式、语句、程序段等,并构造一棵能正确反映该结构的语法树,如括号不匹配;
语义分析各语法结构的含义,检查源程序是否包含静态语义错误,并收集类型信息供后面的代码生成阶段使用,如整除取余参数使用了浮点数这种类型不匹配的错误。
只有语法和语义都正确的源程序才能翻译成正确的目标代码。
15.磁盘调度,分为移臂调度和旋转调度,一般先进行移臂调度,然后进行旋转调度。
16.磁盘调度算法,先来先服务FCFS,优点是公平、简单,缺点是平均寻道时间可能较长;
最短寻道时间优先SSTF,优先访问与当前磁头最近的磁道,使每次的寻道时间最短,但不能保证平均寻道时间最短;
扫描算法SCAN,又称电梯调度算法,在最短寻道时间优先的基础上,增加优先考虑磁头的当前移动方向,若该方向无等待者,就改变移动臂的方向,避免了饥饿现象;
单向扫描调度算法CSCAN,总是从0号柱面往后扫描,只做单向移动,返回时不为任何访问者服务。
17.缓冲技术,提高外设利用率,分为硬件缓冲和软件缓冲;硬件缓冲使用寄存器作为缓冲,软件缓冲通过操作系统管理;
主要作用有1.缓和CPU与I/O设备间速度不匹配;2.减少对CPU的中断频率,放宽对中断响应时间的限制;3.提高CPU和I/O设备之间的并行性。
18.scrum框架模型,又称3-3-5-5模型,包含3个工件、3个角色、5个价值观、5个事件;3个工件分别是Product Backlog、Spring Backlog、
Product Increment;3个角色分别是产品负责人Product Owner、Scrum Master、开发团队Development Team;5个价值观分别是勇气、专注、承诺、
尊重、开放;5个事件分别是Sprint、Sprint Planning、Daily Scrum、Sprint Review、Spring Retrospective。
19.极限编程XP,由价值观、原则、实践和行为组成,通过行为贯穿于整个生存周期;
4大价值观:沟通、简单性、反馈和勇气;
5大原则:快速反馈、简单性假设、逐步修改、提倡更改和优质工作;
12个最佳实践:计划游戏、小型发布、隐喻、简单设计、测试先行、重构、结队编程、集体代码所有制、持续集成、每周工作40小时、现场客户和编码标准。
20.统一过程(UP)模型,是一种用例和风险驱动,以架构为中心,迭代并且增量的开发过程,
由UML方法和工具支持;包含4个技术阶段:起始阶段-生命周期目标、精化阶段-生命周期架构、构建阶段-初始运作功能、移交阶段-产品发布;
典型代表是RUP,完全兼容UP,但比UP更完整、更详细,适用于商业。
21.敏捷统一过程(AUP),采用在大型上连续,在小型上迭代的原理,采用经典的UP阶段性活动(初始、精化、构建和转换),提供一系列的活动。
每个AUP迭代执行活动:建模、实现、测试、部署、配置及项目管理、环境管理。
22.CMM软件能力成熟度模型,分为五个等级:初始级、可重复级、已定义级、已管理级、优化级。1级为最低级,5级为最高级。
初始级,工作无序,项目成功完成完全依靠核心人物的努力;
可重复级,建立了基本的项目管理过程和实践来跟踪项目费用、进度和功能特性,有必要的过程准则来重复以前在同类项目中的成功;
已定义级,管理和工程两方面的软件过程已经文档化、标准化,并综合成整个软件开发组织的标准软件过程。所有项目都采用根据实际情况修改后得到的标准软件过程来开发和维护软件;
已管理级,制定了软件过程和产品质量的详细度量标准;软件过程的产品质量都被开发组织的成员所理解和控制;
优化级,加强了定量分析,通过来自过程质量反馈和来自新观念、新技术的反馈使过程能不断持续地改进。
23.原型模型(Prototype Model),适用于用户需求不清、需求经常变化的情况。
24.螺旋模型(Spiral Model),强调风险分析,适用于复杂具有高风险的系统。
25.喷泉模型(Water Fountain Model),喷泉模型是一种以用户需求为动力,以对象作为驱动的模型,适用于面向对象的开发方法。
26.基于构件的开发模型(Component-based Development Model),利用预先包装的构件来构造应用系统。
27.瀑布模型(Waterfall Model),瀑布模型包括需求分析、设计、编码、测试、运行与维护,适用于需求明确的软件项目。
28.增量模型(Incremental Model),具有瀑布模型的所有优点,第一个版本的成本和时间很少。
29.原型模型和螺旋模型属于演化模型,适用于对需求缺乏准确认识的情况。
30.ISO/IEC软件质量模型中,质量特性及其子特性:
功能性:适合性、准确性、互用性、依从性、安全性;
可靠性:容错性、易恢复性、成熟性;
易用性:易学性、易理解性、易操作性;
效率:时间特性、资源特性;
维护性:可测试性、可修改性、稳定性、易分析性;
可移植性:适应性、易安装性、一致性、可替换性;
31.测试设计和测试用例在需求分析阶段写。
32.环路复杂性为闭环的个数加1。
33.共同重用原则指一个包中的所有类应该是共同重用的,即如果重用了包中的一个类,那么就要重用包中的所有类;
开放封闭原则指类要对扩展开放,对修改封闭;
接口分离原则指一个功能可以有不同的实现方法,但不管什么方法实现的,调用接口应是统一的;
共同封闭原则指因某个同样的原因而需要修改的所有类,都应封闭进同一个包。
34.桥接模式与适配器模式都可用于将抽象部分和实现部分的分离,区别在于,他们分别适用于设计的不同阶段。桥接模式适用于设计的早期,即接口还没有进行实现的阶段;而如果接口已经实现但无法有效地工作时,可以用适配器模式对已有的实现进行改进。
35.在编译方式下,编译过程生成的是与源程序等价的目标程序,源程序和编译程序都不再参与目标程序的执行过程;而在解释方式下,解释过程生成的不是源程序的目标代码,而是中间代码。
36.上下文无关法是形式语言理论中一种重要的变换文法,程序设计语言的语法基本上都是上下文无关法。
37.数据库系统的两级映像:模式/内模式映像、外模式/模式映像。
38.事务具有原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability)。
原子性是指事务是原子的,要么都做,要么都不做;
一致性是指事务执行的结果必须保证数据库从一个一致性状态变到另一个一致性状态;
隔离性是指事务相互隔离,当多个事务并发执行时,任一事务的更新操作直到其成功提交的整个过程,对其他事务都是不可见的;
持久性是指一旦事务提交,即使数据库崩溃,其对数据库的更新操作的结果也不会丢失。
39.直接插入排序,将一个记录插入到已经排好序的有序表中,得到一个新的、记录数加1的有序表,类似扑克牌的理牌操作;
它是一种稳定的排序方法,时间复杂度为O(n^2),空间复杂度为O(1);
void Insertsort(int data[],int n)
{
int i,j;
int tmp;
for(int i=1;i<n;i++){
if(data[i]<data[i-1]){
tmp = data[i];
data[i] = data[i-1];
for(j=i-1;j>=0&&data[j]>tmp;j--){
data[j+1] = data[j];
}
data[j+1] = tmp;
}
}
40.冒泡排序,两两比较相邻的数据,将最大的数冒泡到最尾部,反复执行该过程直到序列有序;
它是一种稳定的排序方法,时间复杂度为O(n^2),空间复杂度为O(1);
void BubbleSort(SqList *L)
{
int i,j;
status flag=true;
for(i=1;i<L->length && flag;i++)
{
flag=false;
for(j=L->length-1;j>=i;j--)
{
if(L->r[j]>l->r[j+1])
{
swap(L,j,j+1);
flag=true;
}
}
}
}
41.概念模式也称模式,是对数据库中全部数据的整体逻辑结构的描述;外模式也称用户模式或子模式,是用户与数据库系统的接口,是对用户用到的那部分数据的描述;内模式也称存储模式,是对数据库在物理存储方面的描述,定义索引内部记录类型、索引、文件的组织方法以及数据控制方面的细节。
42.直接主存存取(DMA),是指数据再主存与I/O设备间(即主存与外设间)直接成块传送。
43.时间局部性是指如果程序中的某条指令一旦被执行,不久的将来该指令可能再次执行;
空间局部性是指一旦程序访问了某个存储单元,不久的将来其附近的存储的单元也可能被访问。
44.循环冗余检验CRC,采用模2运算来构造检验位。
45.海明码利用奇偶性来检错和纠错;数据位n,检验位k,2^k-1>=n+k。
46.归并排序最好最坏情况下的时间复杂度都是O(nlog2n),空间复杂度为O(n)。
47.排序方法对比:
48.CISC复杂指令集计算机的基本思想是进一步增强原有指令的功能,用更为复杂的新指令取代原先由软件子程序完成的功能。主要缺点有指令集过于庞杂、使用微程序技术需要多个CPU周期,处理速度慢、难以优化编译、设计复杂、研制周期长、成本高、成品率低;
RISC精简指令集计算机的基本思想是通过减少指令总数和简化指令功能降低硬件设计的复杂度,使指令能单周期执行,并通过优化编译提高指令的执行速度,采用硬布线控制逻辑优化编译程序;关键技术有:重叠寄存器窗口技术、优化编译技术、超流水及超标量技术、硬布线逻辑与微程序相结合在微程序技术中。
49.人机交互黄金三原则包括:置于用户控制之下、减少用户的记忆负担、保持界面的一致性。
50.测试中存在集群规律,即未发现的错误数量与已发现的错误数量成正比。
51.白盒测试中,语句覆盖是覆盖度最弱的,所以路径覆盖往往比语句覆盖发现更多错误。
52.组合关系,指的是整体与部分的关系,并且整体与部分的生命周期不相同。
53.类图展现了一组对象、接口、协作和他们之间的关系;
组件图展现了一组组件之间的组织和依赖;
通信图也是一种交互图,它强调收发消息的对象或参与者的结构组织;
部署图是用来对面向对象系统的物理方面建模的方法,展现了运行时处理节点以及其中构件的配置;
顺序图是一种交互图,它有一组对象或参与者以及它们之间可能发送的消息构成。
54.责任链模式:通过给多个对象处理请求的机会,减少请求的发送者与接收者之间的耦合。将接收对象链接起来,在链中传递请求,直到有个对象处理这个请求;
迭代器模式:提供一种方法来顺序访问一个聚合对象中的每个元素,而不需要暴露该对象的内部表示;
命令模式:将一个请求封装为一个对象,从而可用不同的请求对客户进行参数化,将请求排队或记录请求日志,支持可撤销的操作;
解释器模式:给定一种语言,定义它的文法表示,并定义一个解释器,该解释器用来根据文法表示来解释语言中的句子。
责任链模式和迭代器模式都是行为型对象模式。
55.共享锁:又称读锁,若事务对数据对象加上共享锁,其他事务只能再加共享锁,但不能加排它锁,直到最初的事务释放共享锁;
排它锁:又称写锁,若事务对数据对象加上排它锁,其他事务不能再加任何锁,直到最初的事务释放排它锁;
56.分布性:数据存储在多个不同的节点上;
逻辑相关性:数据库系统内的数据再逻辑上具有相互关联的特性;
场地透明性:使用分布式数据库中的数据时不需指明数据所在的位置;
场地自治性:每一个单独的节点能够执行局部的应用请求;
57.UDP是一种不可靠、无连接的协议,没有连接管理能力,不负责重发丢失或出错的数据信息,也没有流量控制,DNS、SNMP使用UDP;
TCP在IP提供的不可靠数据服务上为应用提供一个可靠的、面向连接、全双工的数据传输服务,FTP使用TCP。
58.ipconfig /all显示详细信息,当前网卡的ip信息、DNS信息、mac地址、DHCP服务器信息等;
ipconfig /renew 更新所有适配器,可以重新获取ip地址
ipconfig /release 释放所有匹配的连接,断网后重新获取ip地址
ipconfig /flushdns 刷新DNS缓存
59.DNS解析过程:
1.浏览器检查自身缓存有没有该域名的ip地址,有则直接跳转;
2.浏览器检查操作系统缓存hosts文件有没有该域名的ip地址;
3.请求本地域名服务器LDNS来解析该域名;
4.请求Root Server域名服务器来解析该域名,根域名服务器;
60.TCP/IP模型与OSI模型的对比
61.IP协议提供的是无连接的和不可靠的服务。所以把差错检测和流量控制之类的服务授权给其他的各层协议。
62.ARP地址解析协议,作用是将IP地址转换成物理地址。首先查询ARP缓存,如果没有该IP,则在局域网广播发送一个ARP包,如果局域网内有该IP,则计算机返回一个ARP响应包给缓存。
RARP反地址解析协议,负责将物理地址转成IP地址,由网络管理员事先把网卡上的IP地址和相应的物理地址存储在IP RARP服务器的数据库中。
63.ICMP网络控制信息协议,负责发送差错报文,有五种差错报文(源抑制、超时、目的不可达、重定向和要求分段)和四种信息报文(回应请求、回应应答、地址屏蔽码请求请求和地址屏蔽码应答)。ping指令使用ICMP报文测试目标是否可达。
64.在IP地址中,全0的是网络,全1的是广播。
65.DNS使用的是UDP端口,端口号是53。
66.Telnet使用的TCP端口,端口号是23。
67.前序遍历是先根再左后右;中序遍历是先左再根后右;后序遍历是先左再右后根。
68.PC是程序计数器,用于存放将要执行的下一条指令;指令寄存器IR存放即将执行的指令;指令译码器ID对指令中的操作码进行分析和解释;地址寄存器AR保存当前CPU所访问的内存单元或I/O设备的地址。
69.n位补码的表示范围是 -2^(n-1) - 2^(n-1) -1。
70.奇校验中1的个数为奇数,可以检查出奇数个数据位出错的情况;
偶校验中1的个数为偶数,同样只能检查出奇数个数据位出错的情况。
71.《中华人民共和国著作权法》和《计算机软件保护条例》是我国保护计算机软件著作权的两个基本法律文件。
72.结构化方法的分析结果包含:数据流图、数据字典、加工逻辑、补充材料。
73.索引节点法计算,每个物理块大小为1KB,每个地址项大小为4B,则每个物理块可以对应的地址项数量为256;直接索引即索引直接指向物理块,1个直接索引地址项可以表示1个逻辑块地址,一级索引即索引节点指向的物理块用来存放地址项,1个一级索引地址项可以表示256个逻辑块地址;二级索引即基于节点指向的物理块存放的是一级索引的地址块地址,1个二级索引地址项可以表示256*256个逻辑块地址。
74.模块的扇出是指该模块直接调用的下级模块的数量;模块的扇出大表示模块需要控制和协调的下级模块较多,应该适当增加中间层次的控制模块;模块的扇入是指直接调用该模块的上级模块的数量;模块扇入大表示该模块的复用程度高。
75.直接耦合:两个模块没有直接关系,它们之间的联系通过主模块的控制和调用来实现;
数据耦合:两个模块通过简单数据参数来交换输入、输出信息;
标记耦合:两个模块通过数据结构的地址来交换输入、输出信息;
外部耦合:两个模块通过全局简单变量来交换输入、输出信息;
公共耦合:两个模块通过全局数据结构、共享的通信区、内存的公共覆盖区来交换输入、输出信息;
内容耦合:1.一个模块直接访问另一个模块的内部数据;2.一个模块不通过正常入口转到另一个模块内部;3.两个模块有一部分程序代码重叠;4.一个模块有多个入口;
标签:知识点,data,模型,软考,模式,地址,模块,内聚,零零碎碎 来源: https://www.cnblogs.com/onemoreday/p/15339447.html