复试
1.https=http+tls
2.RSA非对称加密
ECC椭圆曲线加密
3.内容分发网络CDN
负载均衡和任播技术
DDos攻击
哈希函数,消息认证码(防止串改数据)
数字签名
协议栈漏洞:Dns欺骗攻击,tcp(syn)
系统漏洞,缓存区溢出
木马,打开控制端口,远程控制
勒索病毒,加密文件
蠕虫
宏病毒
流氓软件
僵尸网络:ddos攻击
钓鱼网站
Ssl、tsl
防火墙
分组密码和流密码:
分组密码以一定大小作为每次处理的基本单元,而序列密码是以一个元素作为基本处理单元,
3des
明文经过三次DES处理才能变成最后的密文,由于DES秘钥的长度实际上是56比特,因此三重DES的秘钥长度就是56 X 3=168比特2:三重DES不是三次加密,而是(加密-解密-加密),这样做的目的在于对DES具备向下兼容性3:三重DES俩次加密不能使用相同的秘钥,否则就等同于DES4:密钥1、密钥2、密钥3全部使用不同的比特序列的三重DES称为DES-EDE35:三重DES的解密过程和加密正好相反,是以密钥3、密钥2、密钥1的顺序执行解密→加密→解密的操作流密码的语义安全性,PRG(伪随机生成)对称密码算法中流密码加密(伪随机序列)产生RC4算法对称分组加密DES加密CBC模式OFB模式传输层安全:TLS(安全套接层)TSL原理;获取公钥TLS改进:椭圆曲线Dh算法SSH安全远程登陆
Xshell侧重于文件传输及转发功能的增加,只是想从远程服务器的资源进行下载,或上传本地文件 到服务器上,那么使用sftp或scp就行了。这两个命令也是通过ssh的端口。
无线网络安全:Ettercap进行dns劫持
用arpspoof进行ARP欺骗攻击
复试问题(考生回忆版)
注:答案为考生回答后,后来结合网络资源补充的,仅供参考。
1.问:简述SSL安全协议的概念及功能。
答:SSL全称是:Secure Socket Layer (安全套接层)。在客户和服务器两 实体之间建立了一个安全的通道,防止客户/服务器应用中的侦听、篡改以及消息伪造,通过在两个实体之间建立一个共享的秘密,SSL提供保密性,服务器认证和可选的客户端认证。其安全通道是透明的,工作在传输层之上,应用层之下,做 到与应用层协议无关,几乎所有基于TCP的协议稍加改动就可以在SSL上运行
-
问:现代大多数机器均采用通用寄存器型指令集结构,为什么?
答:主要有两个方面的原因,一是寄存器和CPU内部其他存储单元一样,要比存储器快;其次是对编译器而言,可以更加容易、有效地分配和使用寄存器。 -
问:简述数据库管理系统的组成和功能。
答:组成:语言编译处理程序、系统运行控制程序、系统建立维护程序、数据字典。
功能:数据定义功能、数据操纵功能、数据库运行管理功能、数据库的建立和维护功能、数据通信接口、数据组织存储和管理。 -
问:软件模块设计需遵循哪些准则
答:(1)降低模块之间的耦合性,提高模块的内聚性
(2)模块结构的深度、宽度、扇出和扇入应适当
(3)模块的作用范围应该在控制范围内
(4)模块接口设计要简单,以便降低复杂程度和冗余度
(5)设计功能可预测并能得到验证的模块
(6)适当划分模块规模,以保持其独立性 -
问:什么是类,什么是对象?类和对象是什么关系?
答:对象是对问题域中客观存在的事物的抽象,是一种属性和在这些属性上的操作的封装体。
类是具有相同属性和操作的一组相似对象(实体)的集合,类为属于该类的全部对象提供了统一的抽象描述。
类是静态的,但对象是动态的,在程序执行过程中可以动态地创建和删除对象。
类代表一类抽象的概念或事物。对象是在客观世界中实际存在的类的实例。
对象又称为是类的一个实例,类又称为是对象的模版 -
问:简述典型编译程序在各个工作阶段所完成的任务
答:词法分析:对构成源程序的字符串进行扫描和分解,识别出一个个具有独立意义的单词。
语法分析:根据语言的语法规则对单词符号串(符号序列)进行语法分析,识别出各类语法短语(可表示成语法树的语法单位),判断输入串在语法上是否正确
语义分析:按语义规则对语法分析得到的语法单位进行语义分析,审查源程序有无语义错误,为代码生成阶段收集类型信息,并进行类型审查金和违背语言规范的报错处理
中间代码生成:将语义分析得到的源程序变成一种结构简单、含义明确、容易生成、容易翻译成目标代码的内在代码形式
代码优化:对中间代码或目标代码进行变换改造等优化处理,使生成的代码更高效
目标代码生成:将中间代码变换成特定目标机器上的绝对指令代码或可重定向的指令代码或汇编指令代码 -
问:你对于人工智能的未来怎么看?请谈谈它可能对人类社会造成哪些利弊?
答: -
问:数据流该功能一般分为哪两种?按照处理数据的单位分为哪两种?举出表示流的4个抽象类。
答:(1) 数据流按照功能一般分为输入流和输出流;
(2) 数据流按照处理数据的单位分为字节流和字符流;
(3) 4个抽象类:InputStream、OutputStream、Reader、Writer
复试问题(考生回忆版)
注:答案为考生回答后,后来结合网络资源补充的,仅供参考。
1.问:简述好的防火墙具有的5个特性。
答: (1)所有在内部网络和外部网络之间传输的数据都必须经过防火墙;(2) 只有被授权的合法数据,即防火墙系统中安全策略允许的数据,可以通过防火墙;(3)防火墙本身不受各种攻击的影响;(4)使用目前新的信息安全技术,如一次口令技术、智能卡等;(5)人机界面良好,用户配置使用方便,易管理,系统管理员可以对发防火墙进行设置,对互连网的访问者、被访问者、访问协议及访问权限进行限制。
2、问:简述可重定向编译程序的概念和支持可重定向编译的关键技术。
答:可重定向编译程序是指能够根据不同的目标机生成相应的目标代码的编译程序,它将与目标机相关的部分单独编写成不同模块,根据不同的目标机调用不同的模板。
支持可重定向编译的关键技术主要包括:1)中间表示技术:区别于四元式等传统的中间表示,支持可重定位向编译的中间表示应在适当的抽象层次上,向上能够支持多语言映射、向下能够适应多平台转换后宜于进行各种进化。2)机器描述技术:区别于传统的假定式体系结构抽象模型的描述技术,支持可重定位向编译的机器描述机制应既能描述系统和硬件的共性,又能描述它们各自的特性,且能适应于不同编译程序的处理。3)代码生成程序的构成技术:为简化开始过程、提高代码可靠性,支持代码生成程序的自动构造工具是关键技术和主要难点。4)目标机描述与目标代码生成的接口技术:在重定向编译程序的开始过程中,抽取一系列函数和数据结构作为目标机描述与目标机代码生成的接口可以简化编译程序的开发,提高编译程序的效率。
-
问:动态连接网络有哪几种?
答:(1)总线。价格较低、带宽较窄 、容易产生故障。(2)交叉网络。价格昂贵、带宽和互连特性最好。 (3)多端口存储器结构。介于低成本低性能的总线系统和高成本高带宽的交叉开关系统之间。(4)多级网络。采用模块结构,扩展性较好;其时延随网络的级数而上升。 -
问:什么是数据库保护?数据库的安全性保护功能包括哪几个方面?解释它们的含义。
答:数据库系统中的数据是由DBMS统一进行管理和控制的。为了适应和满足数据共享的环境和要求,DBMS要保证整个系统的正常运转,防止数据意外丢失和不一致数据的产生,以及当数据库遭受破坏后能迅速地恢复正常,这就是数据库的安全保护。
包括安全性控制、完整性控制、并发性控制和数据库恢复。
安全性控制是指要尽可能地杜绝所有可能的数据库非法访问。
数据库的完整性控制是指防止合法用户使用数据库时向数据库中加入不符合语义的数据。
为了充分利用数据库资源,很多时候数据库用户都是对数据库系统并行存取数据,这样就会发生多个用户并发存取统一数据的情况,如果对并发操作不加控制可能会产生不正确的数据,破坏数据的完整性,并发控制就是解决这类问题,以保护数据库中数据的一致性,即在任何一个时刻数据库都将以相同的形式给用户提供数据。
系统必须具有检测故障并把数据从错误状态中恢复到某一正确的功能,这就是数据库的恢复。
5.问:黑盒测试和白盒测试有什么区别?
答:黑盒测试:是把被测程序看成一个黑盒子,只在软件接口处进行测试,依据需求规格说明书,检查程序是否满足功能要求。也称功能测试或数据驱动测试。
白盒测试:是把被测程序看成一个透明白盒子,需了解程序的内部结构和处理过程,要求对程序的结构特性做到一定程度的覆盖,对程序中的所有逻辑路径进行测试,并检验内部控制结构是否有错,确定实际的运行状态与预期的状态是否一致。
6.问:什么是继承、多态?Java如何实现多态?
答:继承:继承主要是实现重用代码,节省开发时间。
多态:同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果。
Java通过方法重载和方法覆盖来实现多态。
- 问:本科毕设做的什么,主要思路等。
复试问题(考生回忆版)
注:答案为考生回答后,后来结合网络资源补充的,仅供参考。
1.问:防火墙有几类?简述分组过滤防火墙。
答:根据防火墙在网络协议中的过滤层次不同,我们把防火墙分为三种:包过滤防火墙、电路级网关防火墙、应用级网关防火墙。 分组过滤器是目前使用最为广泛的防火墙,其原理很简单:1、有选择地允许数据分组穿过防火墙,实现内部和外部主机之间的数据交换;2、作用在网络层和传输层;3、根据分组的源地址、目的地址、端口号、协议类型等标志确定是否允许数据包通过。满足过滤逻辑的数据包才被转发,否则丢弃。
2、问:简述静态存储分配、栈式动态存储分配、堆式动态存储分配的特点和主要用途。
答:静态存储分配:其特点是在编译时刻确定存储位置,访问效率高。主要用于子程序的目标代码段、全局数据目标。
栈式动态存储分配:其特点是嵌套调用次序,先进后出、生存期限与本次调用。自动释放。主要用于过程的局部环境、活动记录。
堆式动态存储分配:其特点是将内存空间分为若干块,根据用户要求分配;无法满足时,调用无用单元收集程序,将被释放的块收集起来重新分配,主要用于动态数据结构,即存储空间的动态分配和释放。
-
问:当发生Cache写失效时,是否调入相应的块,有哪两种选择?
答:按写分配法:写失效时,先把所写单元所在的块调入Cache,然后再进行写入。这种方法也称为写时取方法。
不按写分配法:写失效时,直接写入下一级存储器而不将相应的块调入Cache。这种方法也称为绕写法。 -
问:SQL Server提供了哪几种方法来减少备份或还原操作的执行时间?
答:(1)使用多个备份设备来同时进行备份处理。同样,可以从多个设备上同时进行数据库还原操作处理。(2)综合使用数据库备份、差异备份或事务日志备份来减少每次需要备份的数据量。(3)使用文件或文件组备份以及事务日志备份,这样可以只备份或还原那些包含相关数据的文件,而不是整个数据库。 -
问:什么是类,什么是对象?类和对象是什么关系?
答:对象是对问题域中客观存在的事物的抽象,是一种属性和在这些属性上的操作的封装体。
类是具有相同属性和操作的一组相似对象(实体)的集合,类为属于该类的全部对象提供了统一的抽象描述。
类是静态的,但对象是动态的,在程序执行过程中可以动态地创建和删除对象。
类代表一类抽象的概念或事物。对象是在客观世界中实际存在的类的实例。
对象又称为是类的一个实例,类又称为是对象的模版 -
问:什么是继承、多态?Java如何实现多态?
答:继承:继承主要是实现重用代码,节省开发时间。
多态:同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果。
Java通过方法重载和方法覆盖来实现多态。 -
问:数据库设计分为哪几个阶段?每个阶段的主要工作是什么?
答:(1)系统需求分析阶段:要收集数据库所有用户的信息内容和处理要求,并加以规划和分析。(2)概念结构设计阶段:是把用户的信息要求统一到一个整体逻辑结构中,此结构能够表达用户的要求,是一个独立于任何DBMS软件和硬件的概念模型。(3)逻辑结构设计阶段:是将上一步所得到的概念模型转换为某个DBMS所支持的数据模型,并对其进行优化。(4)物理结构设计阶段:是为逻辑数据模型建立一个完整的能实现的数据库结构,包括存储结构和存取方法。(5)数据库实施阶段:根据物理结构设计的结果把原始数据装入数据库,建立一个具体的数据库并编写和调试相应的应用程序。(6)数据库运行与维护阶段:主要是收集和记录实际系统运行的数据,用来评价数据库系统的性能,进一步调整和修改数据库。
复试问题(考生回忆版)
注:答案为考生回答后,后来结合网络资源补充的,仅供参考。
1、问:分程序结构的语言,为其符号表建立重名动态下推链的目的是什么概述编译过程中重名动态下推链的工作原理
答:重名动态下推链的目的是保证在合法重名定义情况下,提供完整确切的符号表项,从而保证引用变量的上下文合法性检查和非法重名定义检查。其工作原理:当发生合法重名定义时,将上层重名表项下推到链中,而在符号表中原重名表项处登陆当前重名定义的符号属性;在退出本层时,将最近一次下推到表项回推,登陆到符号表中原重名表项处。
2.问: 地址映象方法有哪几种?它们各有什么优缺点?
答:(1)全相联映象。实现查找的机制复杂,代价高,速度慢。Cache空间的利用率较高,块冲突概率较低,因而Cache的失效率也低。
(2)直接映象。实现查找的机制简单,速度快。Cache空间的利用率较低,块冲突概率较高,因而Cache的失效率也高。
(3)组相联映象。组相联是直接映象和全相联的一种折衷。
- 问:什么是触发器?触发器的作用有哪些?
答:触发器是一种特殊类型的存储过程,主要是通过事件进行触发而被执行的。当对某一表进行诸如UPDATE、INSERT、DELETE等更新操作时,SQL Server会自动执行触发器所定义的SQL语句。
作用:强化约束、跟踪变化、级联运行、存储过程的调用。
4.问:软件复用、软件共享、软件移植三者之间的区别是什么
答:软件复用是指在软件开发过程中重复使用相同或相似软件元素的过程,充分利用过去应用系统中累积的知识和经验,将以已有的工作模式为基础,充分利用过去应用系统开发中积累的知识和经验,开发重点集中于应用的特有构成成分,软件复用是指重复使用为了复用目的而设计的软件的过程
重复使用软件的行为还可能是重复使用并且为了复用目的而设计的软件的过程,在一个应用系统的不同版本间重复使用代码的过程,不属于严格意义上的软件复用。
在一个系统中多次使用一个相同的软件重复,成为软件共享,对一个软件进行修改,使他运行于新的软硬件平台,为软件移植。
5、问:描述三次握手的过程
答:TCP是面向连接的,所谓面向连接,就是当计算机双方通信时必需先建立连接,然后数据传送,最后拆除连接三个过程 并且TCP在建立连接时又分三步走:第一步是请求端(客户端)发送一个包含SYN即同步标志的TCP报文,SYN同步报文会指明客户端使用的端口以及TCP连接的初始序号; 第二步,服务器在收到客户端的SYN报文后,将返回一个SYN+ACK的报文,表示客户端的请求被接受,同时TCP序号被加一,ACK即确认 第三步,客户端也返回一个确认报文ACK给服务器端,同样TCP序列号被加一,到此一个TCP连接完成。然后才开始通信的第二步:数据处理。 这就是所说的TCP三次握手。
-
问:列举4种监督式学习算法?
答: K-近邻算法(k-Nearest Neighbors)
线性回归(Linear Regression)
逻辑回归(Logistic Regression)
支持向量机 -
问:你数学建模竞赛做的内容简单介绍一下,你主要负责?
复试问题(考生回忆版)
注:答案为考生回答后,后来结合网络资源补充的,仅供参考。
1.问:简述符号表的3个主要功能
答:符号表的作用和地位:收集符号属性、上下文语义的合法性检查的依据、作为目标代码生成阶段地址分配的依据。
2.问:流水线中有哪三种相关?各是什么原因造成的?
答:(1)结构相关:当硬件资源满足不了指令重叠执行的要求,而发生资源冲突时,就发生了结构相关。
(2)数据相关:当一条指令需要用到前面指令的执行结果,而这些指令均在流水线中重叠执行时,就可能引起数据相关。
(3)控制相关:当流水线遇到分支指令和其它能够改变PC值的指令时,就会发生控制相关。
3.问:试述数据库三级模式结构,说明三级模式结构的优点是什么。
答:数据库系统采用"三级模式和两级映射"保证了数据库中的数据具有较高的逻辑独立性和物理独立性。其优点是当数据的逻辑结构变了,用户 程序可以不变。当数据的物理结构改变了,应用程序也可以不变。
4.问:黑盒测试和白盒测试有什么区别?
答:黑盒测试:是把被测程序看成一个黑盒子,只在软件接口处进行测试,依据需求规格说明书,检查程序是否满足功能要求。也称功能测试或数据驱动测试。
白盒测试:是把被测程序看成一个透明白盒子,需了解程序的内部结构和处理过程,要求对程序的结构特性做到一定程度的覆盖,对程序中的所有逻辑路径进行测试,并检验内部控制结构是否有错,确定实际的运行状态与预期的状态是否一致。
5.问:请谈谈你对贝叶斯算法中先验概率、后验概率、条件概率的理解,以及怎么利用后验概率计算条件概率(可用公式表达)?
答:先验概率——事件发生前的预判概率。可以是基于历史数据的统计,可以由背景常识得出,也可以是人的主观观点给出。
后验概率——结果发生后反推事件发生原因的概率;或者说,基于先验概率求得的反向条件概率。
条件概率——一个事件发生后另一个事件发生的概率。一般的形式为P(x|y)表示y发生的条件下x发生的概率。
可用贝叶斯公式把后验概率和条件概率、先验概率联系起来,相互推算:
-
问:列举4种监督式学习算法?
答:K-近邻算法(k-Nearest Neighbors)
线性回归(Linear Regression)
逻辑回归(Logistic Regression)
支持向量机 -
问:简述ARP的工作过程及ARP欺骗。
答:ARP的工作过程: (1)主机A不知道主机B的MAC地址,以广播方式发出一个含有主机B的IP地址的ARP请求;(2)网内所有主机受到ARP请求后,将自己的IP地址与请求中的IP地址相比较,仅有B做出ARP响应,其中含有自己的MAC地址;(3)主机A收到B的ARP响应,将该条IP-MAC映射记录写入ARP缓存中,接着进行通信。 ARP欺骗: ARP协议用于IP地址到MAC地址的转换,此映射关系存储在ARP缓存表中。当ARP缓存表被他人非法修改将导致发送给正确主机的数据包发送给另外一台由攻击者控制的主机,这就是所谓的“ARP欺骗”。 -
问:简要说一下你的本科毕设做的什么。
复试问题(考生回忆版)
注:答案为考生回答后,后来结合网络资源补充的,仅供参考。
1.问:简述符号表的3个主要功能
答:符号表的作用和地位:收集符号属性、上下文语义的合法性检查的依据、作为目标代码生成阶段地址分配的依据。
2.问:流水线中有哪三种相关?各是什么原因造成的?
答:(1)结构相关:当硬件资源满足不了指令重叠执行的要求,而发生资源冲突时,就发生了结构相关。
(2)数据相关:当一条指令需要用到前面指令的执行结果,而这些指令均在流水线中重叠执行时,就可能引起数据相关。
(3)控制相关:当流水线遇到分支指令和其它能够改变PC值的指令时,就会发生控制相关。
3.问:试述数据库三级模式结构,说明三级模式结构的优点是什么。
答:数据库系统采用"三级模式和两级映射"保证了数据库中的数据具有较高的逻辑独立性和物理独立性。其优点是当数据的逻辑结构变了,用户 程序可以不变。当数据的物理结构改变了,应用程序也可以不变。
4.问:黑盒测试和白盒测试有什么区别?
答:黑盒测试:是把被测程序看成一个黑盒子,只在软件接口处进行测试,依据需求规格说明书,检查程序是否满足功能要求。也称功能测试或数据驱动测试。
白盒测试:是把被测程序看成一个透明白盒子,需了解程序的内部结构和处理过程,要求对程序的结构特性做到一定程度的覆盖,对程序中的所有逻辑路径进行测试,并检验内部控制结构是否有错,确定实际的运行状态与预期的状态是否一致。
5.问:请谈谈你对贝叶斯算法中先验概率、后验概率、条件概率的理解,以及怎么利用后验概率计算条件概率(可用公式表达)?
答:先验概率——事件发生前的预判概率。可以是基于历史数据的统计,可以由背景常识得出,也可以是人的主观观点给出。
后验概率——结果发生后反推事件发生原因的概率;或者说,基于先验概率求得的反向条件概率。
条件概率——一个事件发生后另一个事件发生的概率。一般的形式为P(x|y)表示y发生的条件下x发生的概率。
可用贝叶斯公式把后验概率和条件概率、先验概率联系起来,相互推算:
-
问:列举4种监督式学习算法?
答:K-近邻算法(k-Nearest Neighbors)
线性回归(Linear Regression)
逻辑回归(Logistic Regression)
支持向量机 -
问:简述ARP的工作过程及ARP欺骗。
答:ARP的工作过程: (1)主机A不知道主机B的MAC地址,以广播方式发出一个含有主机B的IP地址的ARP请求;(2)网内所有主机受到ARP请求后,将自己的IP地址与请求中的IP地址相比较,仅有B做出ARP响应,其中含有自己的MAC地址;(3)主机A收到B的ARP响应,将该条IP-MAC映射记录写入ARP缓存中,接着进行通信。 ARP欺骗: ARP协议用于IP地址到MAC地址的转换,此映射关系存储在ARP缓存表中。当ARP缓存表被他人非法修改将导致发送给正确主机的数据包发送给另外一台由攻击者控制的主机,这就是所谓的“ARP欺骗”。 -
问:简要说一下你的本科毕设做的什么。
复试
1.https=http+tls
2.RSA非对称加密
ECC椭圆曲线加密
3.内容分发网络CDN
负载均衡和任播技术
DDos攻击
哈希函数,消息认证码(防止串改数据)
数字签名
协议栈漏洞:Dns欺骗攻击,tcp(syn)
系统漏洞,缓存区溢出
木马,打开控制端口,远程控制
勒索病毒,加密文件
蠕虫
宏病毒
流氓软件
僵尸网络:ddos攻击
钓鱼网站
Ssl、tsl
防火墙
分组密码和流密码:
分组密码以一定大小作为每次处理的基本单元,而序列密码是以一个元素作为基本处理单元,
3des
明文经过三次DES处理才能变成最后的密文,由于DES秘钥的长度实际上是56比特,因此三重DES的秘钥长度就是56 X 3=168比特2:三重DES不是三次加密,而是(加密-解密-加密),这样做的目的在于对DES具备向下兼容性3:三重DES俩次加密不能使用相同的秘钥,否则就等同于DES4:密钥1、密钥2、密钥3全部使用不同的比特序列的三重DES称为DES-EDE35:三重DES的解密过程和加密正好相反,是以密钥3、密钥2、密钥1的顺序执行解密→加密→解密的操作流密码的语义安全性,PRG(伪随机生成)对称密码算法中流密码加密(伪随机序列)产生RC4算法对称分组加密DES加密CBC模式OFB模式传输层安全:TLS(安全套接层)TSL原理;获取公钥TLS改进:椭圆曲线Dh算法SSH安全远程登陆
Xshell侧重于文件传输及转发功能的增加,只是想从远程服务器的资源进行下载,或上传本地文件 到服务器上,那么使用sftp或scp就行了。这两个命令也是通过ssh的端口。
无线网络安全:Ettercap进行dns劫持
用arpspoof进行ARP欺骗攻击
复试问题(考生回忆版)
注:答案为考生回答后,后来结合网络资源补充的,仅供参考。
1.问:简述SSL安全协议的概念及功能。
答:SSL全称是:Secure Socket Layer (安全套接层)。在客户和服务器两 实体之间建立了一个安全的通道,防止客户/服务器应用中的侦听、篡改以及消息伪造,通过在两个实体之间建立一个共享的秘密,SSL提供保密性,服务器认证和可选的客户端认证。其安全通道是透明的,工作在传输层之上,应用层之下,做 到与应用层协议无关,几乎所有基于TCP的协议稍加改动就可以在SSL上运行
-
问:现代大多数机器均采用通用寄存器型指令集结构,为什么?
答:主要有两个方面的原因,一是寄存器和CPU内部其他存储单元一样,要比存储器快;其次是对编译器而言,可以更加容易、有效地分配和使用寄存器。 -
问:简述数据库管理系统的组成和功能。
答:组成:语言编译处理程序、系统运行控制程序、系统建立维护程序、数据字典。
功能:数据定义功能、数据操纵功能、数据库运行管理功能、数据库的建立和维护功能、数据通信接口、数据组织存储和管理。 -
问:软件模块设计需遵循哪些准则
答:(1)降低模块之间的耦合性,提高模块的内聚性
(2)模块结构的深度、宽度、扇出和扇入应适当
(3)模块的作用范围应该在控制范围内
(4)模块接口设计要简单,以便降低复杂程度和冗余度
(5)设计功能可预测并能得到验证的模块
(6)适当划分模块规模,以保持其独立性 -
问:什么是类,什么是对象?类和对象是什么关系?
答:对象是对问题域中客观存在的事物的抽象,是一种属性和在这些属性上的操作的封装体。
类是具有相同属性和操作的一组相似对象(实体)的集合,类为属于该类的全部对象提供了统一的抽象描述。
类是静态的,但对象是动态的,在程序执行过程中可以动态地创建和删除对象。
类代表一类抽象的概念或事物。对象是在客观世界中实际存在的类的实例。
对象又称为是类的一个实例,类又称为是对象的模版 -
问:简述典型编译程序在各个工作阶段所完成的任务
答:词法分析:对构成源程序的字符串进行扫描和分解,识别出一个个具有独立意义的单词。
语法分析:根据语言的语法规则对单词符号串(符号序列)进行语法分析,识别出各类语法短语(可表示成语法树的语法单位),判断输入串在语法上是否正确
语义分析:按语义规则对语法分析得到的语法单位进行语义分析,审查源程序有无语义错误,为代码生成阶段收集类型信息,并进行类型审查金和违背语言规范的报错处理
中间代码生成:将语义分析得到的源程序变成一种结构简单、含义明确、容易生成、容易翻译成目标代码的内在代码形式
代码优化:对中间代码或目标代码进行变换改造等优化处理,使生成的代码更高效
目标代码生成:将中间代码变换成特定目标机器上的绝对指令代码或可重定向的指令代码或汇编指令代码 -
问:你对于人工智能的未来怎么看?请谈谈它可能对人类社会造成哪些利弊?
答: -
问:数据流该功能一般分为哪两种?按照处理数据的单位分为哪两种?举出表示流的4个抽象类。
答:(1) 数据流按照功能一般分为输入流和输出流;
(2) 数据流按照处理数据的单位分为字节流和字符流;
(3) 4个抽象类:InputStream、OutputStream、Reader、Writer
复试问题(考生回忆版)
注:答案为考生回答后,后来结合网络资源补充的,仅供参考。
1.问:简述好的防火墙具有的5个特性。
答: (1)所有在内部网络和外部网络之间传输的数据都必须经过防火墙;(2) 只有被授权的合法数据,即防火墙系统中安全策略允许的数据,可以通过防火墙;(3)防火墙本身不受各种攻击的影响;(4)使用目前新的信息安全技术,如一次口令技术、智能卡等;(5)人机界面良好,用户配置使用方便,易管理,系统管理员可以对发防火墙进行设置,对互连网的访问者、被访问者、访问协议及访问权限进行限制。
2、问:简述可重定向编译程序的概念和支持可重定向编译的关键技术。
答:可重定向编译程序是指能够根据不同的目标机生成相应的目标代码的编译程序,它将与目标机相关的部分单独编写成不同模块,根据不同的目标机调用不同的模板。
支持可重定向编译的关键技术主要包括:1)中间表示技术:区别于四元式等传统的中间表示,支持可重定位向编译的中间表示应在适当的抽象层次上,向上能够支持多语言映射、向下能够适应多平台转换后宜于进行各种进化。2)机器描述技术:区别于传统的假定式体系结构抽象模型的描述技术,支持可重定位向编译的机器描述机制应既能描述系统和硬件的共性,又能描述它们各自的特性,且能适应于不同编译程序的处理。3)代码生成程序的构成技术:为简化开始过程、提高代码可靠性,支持代码生成程序的自动构造工具是关键技术和主要难点。4)目标机描述与目标代码生成的接口技术:在重定向编译程序的开始过程中,抽取一系列函数和数据结构作为目标机描述与目标机代码生成的接口可以简化编译程序的开发,提高编译程序的效率。
-
问:动态连接网络有哪几种?
答:(1)总线。价格较低、带宽较窄 、容易产生故障。(2)交叉网络。价格昂贵、带宽和互连特性最好。 (3)多端口存储器结构。介于低成本低性能的总线系统和高成本高带宽的交叉开关系统之间。(4)多级网络。采用模块结构,扩展性较好;其时延随网络的级数而上升。 -
问:什么是数据库保护?数据库的安全性保护功能包括哪几个方面?解释它们的含义。
答:数据库系统中的数据是由DBMS统一进行管理和控制的。为了适应和满足数据共享的环境和要求,DBMS要保证整个系统的正常运转,防止数据意外丢失和不一致数据的产生,以及当数据库遭受破坏后能迅速地恢复正常,这就是数据库的安全保护。
包括安全性控制、完整性控制、并发性控制和数据库恢复。
安全性控制是指要尽可能地杜绝所有可能的数据库非法访问。
数据库的完整性控制是指防止合法用户使用数据库时向数据库中加入不符合语义的数据。
为了充分利用数据库资源,很多时候数据库用户都是对数据库系统并行存取数据,这样就会发生多个用户并发存取统一数据的情况,如果对并发操作不加控制可能会产生不正确的数据,破坏数据的完整性,并发控制就是解决这类问题,以保护数据库中数据的一致性,即在任何一个时刻数据库都将以相同的形式给用户提供数据。
系统必须具有检测故障并把数据从错误状态中恢复到某一正确的功能,这就是数据库的恢复。
5.问:黑盒测试和白盒测试有什么区别?
答:黑盒测试:是把被测程序看成一个黑盒子,只在软件接口处进行测试,依据需求规格说明书,检查程序是否满足功能要求。也称功能测试或数据驱动测试。
白盒测试:是把被测程序看成一个透明白盒子,需了解程序的内部结构和处理过程,要求对程序的结构特性做到一定程度的覆盖,对程序中的所有逻辑路径进行测试,并检验内部控制结构是否有错,确定实际的运行状态与预期的状态是否一致。
6.问:什么是继承、多态?Java如何实现多态?
答:继承:继承主要是实现重用代码,节省开发时间。
多态:同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果。
Java通过方法重载和方法覆盖来实现多态。
- 问:本科毕设做的什么,主要思路等。
复试问题(考生回忆版)
注:答案为考生回答后,后来结合网络资源补充的,仅供参考。
1.问:防火墙有几类?简述分组过滤防火墙。
答:根据防火墙在网络协议中的过滤层次不同,我们把防火墙分为三种:包过滤防火墙、电路级网关防火墙、应用级网关防火墙。 分组过滤器是目前使用最为广泛的防火墙,其原理很简单:1、有选择地允许数据分组穿过防火墙,实现内部和外部主机之间的数据交换;2、作用在网络层和传输层;3、根据分组的源地址、目的地址、端口号、协议类型等标志确定是否允许数据包通过。满足过滤逻辑的数据包才被转发,否则丢弃。
2、问:简述静态存储分配、栈式动态存储分配、堆式动态存储分配的特点和主要用途。
答:静态存储分配:其特点是在编译时刻确定存储位置,访问效率高。主要用于子程序的目标代码段、全局数据目标。
栈式动态存储分配:其特点是嵌套调用次序,先进后出、生存期限与本次调用。自动释放。主要用于过程的局部环境、活动记录。
堆式动态存储分配:其特点是将内存空间分为若干块,根据用户要求分配;无法满足时,调用无用单元收集程序,将被释放的块收集起来重新分配,主要用于动态数据结构,即存储空间的动态分配和释放。
-
问:当发生Cache写失效时,是否调入相应的块,有哪两种选择?
答:按写分配法:写失效时,先把所写单元所在的块调入Cache,然后再进行写入。这种方法也称为写时取方法。
不按写分配法:写失效时,直接写入下一级存储器而不将相应的块调入Cache。这种方法也称为绕写法。 -
问:SQL Server提供了哪几种方法来减少备份或还原操作的执行时间?
答:(1)使用多个备份设备来同时进行备份处理。同样,可以从多个设备上同时进行数据库还原操作处理。(2)综合使用数据库备份、差异备份或事务日志备份来减少每次需要备份的数据量。(3)使用文件或文件组备份以及事务日志备份,这样可以只备份或还原那些包含相关数据的文件,而不是整个数据库。 -
问:什么是类,什么是对象?类和对象是什么关系?
答:对象是对问题域中客观存在的事物的抽象,是一种属性和在这些属性上的操作的封装体。
类是具有相同属性和操作的一组相似对象(实体)的集合,类为属于该类的全部对象提供了统一的抽象描述。
类是静态的,但对象是动态的,在程序执行过程中可以动态地创建和删除对象。
类代表一类抽象的概念或事物。对象是在客观世界中实际存在的类的实例。
对象又称为是类的一个实例,类又称为是对象的模版 -
问:什么是继承、多态?Java如何实现多态?
答:继承:继承主要是实现重用代码,节省开发时间。
多态:同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果。
Java通过方法重载和方法覆盖来实现多态。 -
问:数据库设计分为哪几个阶段?每个阶段的主要工作是什么?
答:(1)系统需求分析阶段:要收集数据库所有用户的信息内容和处理要求,并加以规划和分析。(2)概念结构设计阶段:是把用户的信息要求统一到一个整体逻辑结构中,此结构能够表达用户的要求,是一个独立于任何DBMS软件和硬件的概念模型。(3)逻辑结构设计阶段:是将上一步所得到的概念模型转换为某个DBMS所支持的数据模型,并对其进行优化。(4)物理结构设计阶段:是为逻辑数据模型建立一个完整的能实现的数据库结构,包括存储结构和存取方法。(5)数据库实施阶段:根据物理结构设计的结果把原始数据装入数据库,建立一个具体的数据库并编写和调试相应的应用程序。(6)数据库运行与维护阶段:主要是收集和记录实际系统运行的数据,用来评价数据库系统的性能,进一步调整和修改数据库。
复试问题(考生回忆版)
注:答案为考生回答后,后来结合网络资源补充的,仅供参考。
1、问:分程序结构的语言,为其符号表建立重名动态下推链的目的是什么概述编译过程中重名动态下推链的工作原理
答:重名动态下推链的目的是保证在合法重名定义情况下,提供完整确切的符号表项,从而保证引用变量的上下文合法性检查和非法重名定义检查。其工作原理:当发生合法重名定义时,将上层重名表项下推到链中,而在符号表中原重名表项处登陆当前重名定义的符号属性;在退出本层时,将最近一次下推到表项回推,登陆到符号表中原重名表项处。
2.问: 地址映象方法有哪几种?它们各有什么优缺点?
答:(1)全相联映象。实现查找的机制复杂,代价高,速度慢。Cache空间的利用率较高,块冲突概率较低,因而Cache的失效率也低。
(2)直接映象。实现查找的机制简单,速度快。Cache空间的利用率较低,块冲突概率较高,因而Cache的失效率也高。
(3)组相联映象。组相联是直接映象和全相联的一种折衷。
- 问:什么是触发器?触发器的作用有哪些?
答:触发器是一种特殊类型的存储过程,主要是通过事件进行触发而被执行的。当对某一表进行诸如UPDATE、INSERT、DELETE等更新操作时,SQL Server会自动执行触发器所定义的SQL语句。
作用:强化约束、跟踪变化、级联运行、存储过程的调用。
4.问:软件复用、软件共享、软件移植三者之间的区别是什么
答:软件复用是指在软件开发过程中重复使用相同或相似软件元素的过程,充分利用过去应用系统中累积的知识和经验,将以已有的工作模式为基础,充分利用过去应用系统开发中积累的知识和经验,开发重点集中于应用的特有构成成分,软件复用是指重复使用为了复用目的而设计的软件的过程
重复使用软件的行为还可能是重复使用并且为了复用目的而设计的软件的过程,在一个应用系统的不同版本间重复使用代码的过程,不属于严格意义上的软件复用。
在一个系统中多次使用一个相同的软件重复,成为软件共享,对一个软件进行修改,使他运行于新的软硬件平台,为软件移植。
5、问:描述三次握手的过程
答:TCP是面向连接的,所谓面向连接,就是当计算机双方通信时必需先建立连接,然后数据传送,最后拆除连接三个过程 并且TCP在建立连接时又分三步走:第一步是请求端(客户端)发送一个包含SYN即同步标志的TCP报文,SYN同步报文会指明客户端使用的端口以及TCP连接的初始序号; 第二步,服务器在收到客户端的SYN报文后,将返回一个SYN+ACK的报文,表示客户端的请求被接受,同时TCP序号被加一,ACK即确认 第三步,客户端也返回一个确认报文ACK给服务器端,同样TCP序列号被加一,到此一个TCP连接完成。然后才开始通信的第二步:数据处理。 这就是所说的TCP三次握手。
-
问:列举4种监督式学习算法?
答: K-近邻算法(k-Nearest Neighbors)
线性回归(Linear Regression)
逻辑回归(Logistic Regression)
支持向量机 -
问:你数学建模竞赛做的内容简单介绍一下,你主要负责?
复试问题(考生回忆版)
注:答案为考生回答后,后来结合网络资源补充的,仅供参考。
1.问:简述符号表的3个主要功能
答:符号表的作用和地位:收集符号属性、上下文语义的合法性检查的依据、作为目标代码生成阶段地址分配的依据。
2.问:流水线中有哪三种相关?各是什么原因造成的?
答:(1)结构相关:当硬件资源满足不了指令重叠执行的要求,而发生资源冲突时,就发生了结构相关。
(2)数据相关:当一条指令需要用到前面指令的执行结果,而这些指令均在流水线中重叠执行时,就可能引起数据相关。
(3)控制相关:当流水线遇到分支指令和其它能够改变PC值的指令时,就会发生控制相关。
3.问:试述数据库三级模式结构,说明三级模式结构的优点是什么。
答:数据库系统采用"三级模式和两级映射"保证了数据库中的数据具有较高的逻辑独立性和物理独立性。其优点是当数据的逻辑结构变了,用户 程序可以不变。当数据的物理结构改变了,应用程序也可以不变。
4.问:黑盒测试和白盒测试有什么区别?
答:黑盒测试:是把被测程序看成一个黑盒子,只在软件接口处进行测试,依据需求规格说明书,检查程序是否满足功能要求。也称功能测试或数据驱动测试。
白盒测试:是把被测程序看成一个透明白盒子,需了解程序的内部结构和处理过程,要求对程序的结构特性做到一定程度的覆盖,对程序中的所有逻辑路径进行测试,并检验内部控制结构是否有错,确定实际的运行状态与预期的状态是否一致。
5.问:请谈谈你对贝叶斯算法中先验概率、后验概率、条件概率的理解,以及怎么利用后验概率计算条件概率(可用公式表达)?
答:先验概率——事件发生前的预判概率。可以是基于历史数据的统计,可以由背景常识得出,也可以是人的主观观点给出。
后验概率——结果发生后反推事件发生原因的概率;或者说,基于先验概率求得的反向条件概率。
条件概率——一个事件发生后另一个事件发生的概率。一般的形式为P(x|y)表示y发生的条件下x发生的概率。
可用贝叶斯公式把后验概率和条件概率、先验概率联系起来,相互推算:
-
问:列举4种监督式学习算法?
答:K-近邻算法(k-Nearest Neighbors)
线性回归(Linear Regression)
逻辑回归(Logistic Regression)
支持向量机 -
问:简述ARP的工作过程及ARP欺骗。
答:ARP的工作过程: (1)主机A不知道主机B的MAC地址,以广播方式发出一个含有主机B的IP地址的ARP请求;(2)网内所有主机受到ARP请求后,将自己的IP地址与请求中的IP地址相比较,仅有B做出ARP响应,其中含有自己的MAC地址;(3)主机A收到B的ARP响应,将该条IP-MAC映射记录写入ARP缓存中,接着进行通信。 ARP欺骗: ARP协议用于IP地址到MAC地址的转换,此映射关系存储在ARP缓存表中。当ARP缓存表被他人非法修改将导致发送给正确主机的数据包发送给另外一台由攻击者控制的主机,这就是所谓的“ARP欺骗”。 -
问:简要说一下你的本科毕设做的什么。
复试问题(考生回忆版)
注:答案为考生回答后,后来结合网络资源补充的,仅供参考。
1.问:简述符号表的3个主要功能
答:符号表的作用和地位:收集符号属性、上下文语义的合法性检查的依据、作为目标代码生成阶段地址分配的依据。
2.问:流水线中有哪三种相关?各是什么原因造成的?
答:(1)结构相关:当硬件资源满足不了指令重叠执行的要求,而发生资源冲突时,就发生了结构相关。
(2)数据相关:当一条指令需要用到前面指令的执行结果,而这些指令均在流水线中重叠执行时,就可能引起数据相关。
(3)控制相关:当流水线遇到分支指令和其它能够改变PC值的指令时,就会发生控制相关。
3.问:试述数据库三级模式结构,说明三级模式结构的优点是什么。
答:数据库系统采用"三级模式和两级映射"保证了数据库中的数据具有较高的逻辑独立性和物理独立性。其优点是当数据的逻辑结构变了,用户 程序可以不变。当数据的物理结构改变了,应用程序也可以不变。
4.问:黑盒测试和白盒测试有什么区别?
答:黑盒测试:是把被测程序看成一个黑盒子,只在软件接口处进行测试,依据需求规格说明书,检查程序是否满足功能要求。也称功能测试或数据驱动测试。
白盒测试:是把被测程序看成一个透明白盒子,需了解程序的内部结构和处理过程,要求对程序的结构特性做到一定程度的覆盖,对程序中的所有逻辑路径进行测试,并检验内部控制结构是否有错,确定实际的运行状态与预期的状态是否一致。
5.问:请谈谈你对贝叶斯算法中先验概率、后验概率、条件概率的理解,以及怎么利用后验概率计算条件概率(可用公式表达)?
答:先验概率——事件发生前的预判概率。可以是基于历史数据的统计,可以由背景常识得出,也可以是人的主观观点给出。
后验概率——结果发生后反推事件发生原因的概率;或者说,基于先验概率求得的反向条件概率。
条件概率——一个事件发生后另一个事件发生的概率。一般的形式为P(x|y)表示y发生的条件下x发生的概率。
可用贝叶斯公式把后验概率和条件概率、先验概率联系起来,相互推算:
-
问:列举4种监督式学习算法?
答:K-近邻算法(k-Nearest Neighbors)
线性回归(Linear Regression)
逻辑回归(Logistic Regression)
支持向量机 -
问:简述ARP的工作过程及ARP欺骗。
答:ARP的工作过程: (1)主机A不知道主机B的MAC地址,以广播方式发出一个含有主机B的IP地址的ARP请求;(2)网内所有主机受到ARP请求后,将自己的IP地址与请求中的IP地址相比较,仅有B做出ARP响应,其中含有自己的MAC地址;(3)主机A收到B的ARP响应,将该条IP-MAC映射记录写入ARP缓存中,接着进行通信。 ARP欺骗: ARP协议用于IP地址到MAC地址的转换,此映射关系存储在ARP缓存表中。当ARP缓存表被他人非法修改将导致发送给正确主机的数据包发送给另外一台由攻击者控制的主机,这就是所谓的“ARP欺骗”。 -
问:简要说一下你的本科毕设做的什么。