2018校招金山云笔试题目总结

金山云笔试:
1.两个进程争夺同一个资源会发生死锁吗?(死锁发生的四个必要条件)
(1)互斥条件:一个资源每次只能别一个进程使用。
(2)请求和保持条件:一个进程由于请求资源而阻塞时,对持有资源保持不放。
(3)不剥夺条件:在进程没有执行完成的状况下,持有资源不会被剥夺。
(4)循环等待条件:若个进程之间由于等待资源而造成一种循环关系。缓存

在其余状况不明确的状况下,没法判断两个进程是否仅须要这一个资源就能完成,若是须要其余的资源,而资源被另一个进程所持有,就有可能发生死锁。线程

2.关于寄存器和高速缓存?blog

 寄存器是中央处理器(cpu)的的组成部分,是有限存储容量的高速存储部件,能够暂存指令,数据和地址(指令寄存器(IR),程序计数器(pc),累加器(ACC))。进程

 Cache,位于CPU和主内存之间容量小但速度很快的存储器,是为了弥补CPU与内存之间的运算差距而设置的部件。事务

3.实现原子加操做内存

锁总线,资源

恩~~,果真不是很明白,难受。。。it

4.信号量,互斥体,自旋锁。table

 信号量,至关于一个计数器,每当一个进程使用一个资源,信号量-1;进程释放一个资源,信号量+1;当信号量为0时,进程没法使用该资源。ast

 互斥体,在任何线程进入临界区以前都先得到临界区的互斥体,其余进程没有得到互斥体便不能执行。

 自旋锁,跟互斥锁挺像,可是未得到执行权的进行不阻塞,而是循环请求,适应于持有锁时间短的进程。

5.TCP中服务端和客户端的执行完操做后的各类状态。

 (1)三次握手时:

          客户端:closed->syn-send->establised

          服务端:listened->syn-rcvd->establised

 (2)四次挥手时:

          客户端:fin-wait-1->fin-wait-2->time-wait->close

          服务端:close-wait->last-ack->close

 

6.事务的隔离机制。

 (1)readunCommited 事务修改数据加了X锁,结束后释放。解决了更新丢失。

 (2)readCommited    在(1)的基础上,每次事务读数据时+S锁,读完(不是事务结束)释放。解决了脏读。

 (3)repeatableRead  在(1)的基础上,每次事务读数据时+S锁,事务结束后释放。解决了不可重复度。

 (4)serializable 事务串行执行。。。。

7.会引发全表查询的状况。

 (1)模糊查询:右模糊查询,全模糊查询必定会产生全表扫描。

 (2)查询条件中含有 is null的select语句

 (3)其他我真的不知道去哪查了。。。知道的能够回复我啊。

相关文章
相关标签/搜索