2019.08.18测试复盘

1、进行数据库提交操作时使用事务(Transcation)是为了保证数据一致性。

数据库事务(Datebase Transaction),是指作为单个逻辑工作单元执行的一系列操作。事务处理可以确保除非事务性单元内的所有操作都成功完成,否则不会永远更新面向数据的资源。通过将一组相关操作组合为一个要么全部成功斜体样式要么全部失败的单元,可以简化错误恢复并使用应用程序更加可靠。出错会回滚。一个逻辑工作单元要成为事务,必须满足所谓的ACID(原子性、一致性、隔离性和持久性)

2、关于编译原理,一下文法中,是自顶向下分析的文法是哪几个?
LL(1)

3、原码,补码,反码的区别

原码就是符号位加上真值的绝对值, 即用第一位表示符号, 其余位表示值. 比如如果是8位二进制:
[+1]原 = 0000 0001
[-1]原 = 1000 0001

反码的表示方法是:
正数的反码是其本身
负数的反码是在其原码的基础上, 符号位不变,其余各个位取反.
[+1] = [00000001]原 = [00000001]反
[-1] = [10000001]原 = [11111110]反

补码的表示方法是:
正数的补码就是其本身
负数的补码是在其原码的基础上, 符号位不变, 其余各位取反, 最后+1. (即在反码的基础上+1)
[+1] = [00000001]原 = [00000001]反 = [00000001]补
[-1] = [10000001]原 = [11111110]反 = [11111111]补

4、有k层的二叉树至少有?个节点
k层:2^k-1,
第k层:2^(k-1)

5、main(){
char c=040;
printf("%0\n",c<<1);
}
程序的结果是?
100
解析:c=040,前缀0代表八进制,将其转换为二进制即100 000
c<<1,左移一位,即1000 000
%o表示输出无符号八进制,再将其转为八进制为100

6、 一个完全二叉树的节点数量为666,那么这棵树上的叶子结点数为?
设度为0的节点为n0,度为1的节点为n1,度为2的节点为n2,那么有
n0+n1+n2=666
n0=n2+1
n1+2*n2=665
因为完全二叉树度为1的节点数只能为0或1,所以n1=1
所以n2=332
n0=333

7、CPU load 是当前系统中所有ready和running状态的进程数量。

使用uptime、top或者查看、proc/loadavg都可以看到CPU的load统计,这里有三个值,分别代表1分钟、5分钟和15分钟的CPU load情况。这三个值越小越好,越高说明系统可能存在问题或负载过高。

load average:一段时间内处于可运行状态和不可中断状态的进程平均数量。(可运行分为正在运行进程和正在等待CPU的进程,状态为R;不可中断则是塔正在做某些工作不能被中断比如等待磁盘IO等,其状态为D)它是从另一个角度体现CPU的使用状态。

CPU利用率高不一定负载高。利用率是一段时间内CPU被占用的情况。

CPU负载高利用率低:说明等待执行的任务很多,但是通常任务多CPU使用率比较高,如果低则说明CPU根本没工作。

CPU利用率高负载低:说明任务少,但是任务执行时间长,有可能是程序本身有问题。
8、虚拟内存隔离了各个进程的内存空间,虚拟内存可以防止应用程序直接访问物理地址。
虚拟内存的提出是为了保护物理内存,增加一个中间层,利用简介的地址访问方法访问物理内存:程序中访问的内存地址不再是实际的物理内存地址,而是一个虚拟地址,然后由操作系统将这个虚拟地址映射到合适的物理内存地址上。这样只需操作系统处理好虚拟地址到物理地址的映射关系,就可以保证不同的程序最终访问不同的区域,从而大袋内存地址空间的隔离。

进程的虚拟地址空间,并不是内存,而是一个结构体。

输出地址相同但变量值不同,说明这个输出的地址一定不是物理地址,这个地址叫做虚拟地址。

要进行数据访问,必须由操作系统将虚拟地址转化为物理地址。

c和c++中看到的地址都是虚拟地址。

操作系统是通过软硬件结合的方式完成了映射。

用户看不到物理地址,物理地址由操作系统统一管理。

9、对于任何一个二叉树,如果其叶节点数为No,而度数为2的节点总数为N0-1

10、若一序列进展顺序为a,b,c,d,e,存在多少种可能的出栈顺序?

卡特兰数公式:C(n,2n)/(n+1)

11、有6个结点的无向图,至少应有多少条边才能是一个连通图。

连通图定义:任意两点之间能到达(不是任意两点都要有路径,只要能到达就行)

强连通图:任意两点之间有路径。

12、已知下列字符先后进入栈中,入栈的相对顺序是A,B,C,D,则出栈的序列共有多少种情况?

卡特兰数公式

13、ping程序所使用的的协议是?

PING(Packet Internet Groper),因特网包探索器,用于测试网络连接量的程序。Ping发送一个ICMP即因特网信报控制协议;回声请求消息给目的地并报告是否收到所希望的ICMPecho(icmp回声应答)。它用来检查网络是否通畅或者网络连接速度的命令。、

原理:利用网络上机器IP地址的唯一性,给目标IP地址发送一个数据包,再要求对方返回一个同样大小的数据包来确定两台网络机器是否连接相通,时延是对少。

ping指的是端对端连通,通常用来作为可用性的检查,但是某些病毒木马会强行大量远程执行ping命令抢占你的网络资源,导致系统变慢,网速变慢,严禁ping入侵作为大多数防火墙的一个基本功能提供给用户进行选择。通常的情况下你如果不用做服务器或者进行网络测试,可以放心选它,保护你的电脑。

14、假设在某个系统中,24*13=334成立,那么该系统采用的进制是几进制?

第一种方法
4*3%x=4
所以x=8

第二种方法
(4x的零次方+2x的一次方)(1x的一次方+3x的零次方)=3x的二次方+3x的一次方+4x的零次方

15、下列哪些中间件产品提供了JSP和Servlet的服务?

Nginx:是一款轻量级的web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,遵循BSD-like协议,特点是战友内存少,并发能力强。是一个高性能的HTTP和反向代理web服务器,同时提供了IMAP/POP3/SMTP服务。

使用nginx的有:百度,京东,新浪,网易,腾讯,淘宝等。

Tomcat
Apache Web Server
Jetty
ActiveMQ
RabbitMQ

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值