阿里云后端开发实习面经
时间点
2.18(初七) | 投递简历 |
2.25(周四) | 一面 |
2.26(周五) | 二面 |
3.01(周一) | 三面 |
3.08(周一) | 四面 |
3.16(周二) | HR面 |
3.19(周五) | 意向书 |
一面
问的还是挺深入的。这是过年后的第一场面试,很多东西理解了,但是表达的不够流畅。上来先写一道算法题,然后就是问项目和基础。
操作系统
会选择熟悉的点,然后深入问。感觉还是很深入的....
- 操作系统对哪块比较熟悉啊?
- 那先从进程聊起吧,进程有哪些状态?
- 这些状态如何进行切换呢?
- 假设进程死锁了,此时处在什么状态?
- 你看过Linux内核源码吗?
- 对进程控制块熟悉吗?
- 为什么要划分为内核空间和用户空间?
- 中断有哪几种类型?
- 软中断有哪些?
- 内核线程的作用?
- 内核调度器实现要考虑哪些?
- 时间片和处理器的使用比是什么概念?
- 进程的优先级是什么数据结构实现的?
- 如果进程碰到了时间片的切换,此时内核会怎么处理?
- 进程上下文切换很频繁的后果?
- 再聊一下IO吧
- 进程间通信有哪些方式
- 共享内存的缺点?
- 介绍一下IO多路复用
- epoll和select的区别
项目
- 介绍一下项目然后引申出一下问题
计算机网络
- 介绍一下IP层
- TCP三次握手,第三次握手的包丢掉会怎样?
- 如果此时客户端再给服务端发消息,服务端会返回什么报文?
- 四次挥手
- 如果Close_wait状态是哪一端的?
- 如果大量Close_wait的后果?
反问环节
二面
面试官很正式。先介绍了一下会考察哪些内容,然后就开始发问了。
- 先问你一下tcp方面的,三次握手第三次报文丢失会怎么处理?
- 第二次丢失呢?
- 客户端主动挥手时会有个time_wait状态, 为什么会有这个状态?而不是直接close?
- tcp的reset报文,什么场景下会使用到?
- 一方收到reset报文会怎么处理?
- push报文了解吗?
- 什么情况下会发这种报文?收到push报文的这一端的行为是怎样的?
- 你说的接收缓冲区和上层是什么意思?
- 带外数据了解吗?
- 拥塞控制解决什么问题?流量控制又解决什么问题?
- 解释一下tcp怎么实现拥塞控制的?怎么实现流量控制的?
- https了解吗?
- https,客户端拿到服务端的证书后是怎么验证证书的合法性?证书有什么内容?
- session的原理?
- 哈希表,如果实现push key和value
- 解释一下悲观锁和乐观锁
- 写代码中锁是怎么用的?
- IO多路复用,复用的是什么?
- 介绍一下项目
- epoll和poll的区别
- 如果让你用一个周学习一门语言你会怎么学?
- 如果程序有bug怎么排查?
- 对docker和k8s有了解吗?
- 之前实习过吗?(...)
- 对自己的职业规划是怎么样的?
- 你的优势和劣势?
- 你的英语水平如何?
- 反问环节
三面
一个小时。先深挖了一个项目,又深挖了一个竞赛。
四面
交叉面。全程问项目,被吊打。疯狂追问,问的很深入,一直问到不会为止。
HR面
非技术问题。