腾讯云 暑期面经
听说写可以积攒人品提升好运
一面:
1:同一份代码跑起来的两个进程,他们的某些内存数据有没有可能是相同的。
1.1: 一个终端里启动的两个进程,他们的某些内存数据有没有可能是相同的。
2: 32位系统中的内存空间大小,介绍一下用户空间和内核空间。
2.1:介绍访问不可访问空间时产生的错误以及OS的应对的方法。
2.2:进程刚运行时会直接占满内存空间吗?
3:为什么要设计网络层,初衷是为了什么,为了解决数据链路层的什么问题?
3.1:为什么不能直接通过数据连接层的MAC地址来通信?
3.2:IP协议可靠吗?
3.3:IP协议既然不可靠为什么再往上抽象时也有一个不可靠的协议(UDP)?它解决了什么问题,为什么要重复设计?
4:(情景)当大量客户端请求访问服务器,需要调整服务器操作系统中的什么参数来应对?
5:(聊天)操作系统和网络是怎么学习的。
6:介绍一下项目,遇到难点和改进
7:介绍一下overlayFS,对比AUFS。
8:介绍Docker技术设计的初衷。
8.1: Docker如何将当前容器状态保存下来?
9:介绍一下Linux资源隔离怎么做
10:Docker 技术和虚拟机相比有没有什么缺点。
11:(手撕)2个一组反转链表 LRU缓存
12:反问
二面:
面试官不希望常规八股的答法,而是希望我能表达出对技术的本质的思考,将技术点串起来。
1: 介绍一下进程和线程,操作系统为什么要有进程?
1.1:(刚刚直接答进程线程区别不太满意,继续引导)设计操作系统是为了什么?操作系统的目的。
1.2:提供进程机制是怎么样满足OS设计目的的?
1.3:操作系统中除了进程机制,还有什么机制满足了操作系统的目的,他们是怎么实现的?(太紧张脑子有点空白了,只说出了两个机制)
2:介绍一下协程,为什么有了线程还是引入了协程?(直接回答线程协程区别不满意,下面继续引导)
3:介绍一下容器技术。
4:介绍联合文件系统,为什么要有联合文件系统
5:介绍一下Veth
6:未来职业发展和学习规划
7:反问