腾讯os内核虚拟化面经

中秋节接的offer,属于是意外之喜了。

投的时候比较早,腾讯刚开,只有一个技术大咖可选的岗位不多,然后看了一圈都不合适,选了个“其他方向”,想着随便吧,谁捞我我就面谁。不过有老哥说可能录用的不是大咖,我看官网也不显示是啥岗位,只能到时谈薪问问了。

timeline上7.13投递,8.24一面(一个月才有消息),8.26二面,8.30 hr面,9.29意向,结结实实等了一个月。去的岗位是做os内核虚拟化的,还算对口。

8.24 一面

刚接到面试不知道是啥岗位,我自己盲猜是存储部门或者数据库的,因为不知道腾讯有os部门,我自己投的也大多是存储岗位。

上来手撕代码:1~10000000所有数字中总共1的个数,感觉中等,主要是总结递归公式。

问:

  • 自我介绍
  • page cache,架构设计、如何平衡内存占用,系统调用从用户态到内核态的流程
  • page reclaim,与page cache的交互,rebalance、回收算法,与kmalloc的交互
  • 阿里云存储部门的实习
  • 简历文件系统项目
  • cpu乱序,reorder buffer,内存序
  • x86 vs. arm内存序,store buffer
  • tlb consistency,多核上的tlb shootdown算法,如何保证race condition下正确性,kernel的具体实现
  • 倾向于去哪个base,愿意去成都吗

反问:

  • 啥部门
  • os部门面向的业务
  • 不同base地之间区别、负责的内容
  • 工作强度
  • 虚拟化主要是哪部分的虚拟化

一开始因为不知道是啥部门,我回答os相关问题的时候还可以收敛一点,因为不做内核的人很多术语可能没听过。直到面完了反问的时候才知道是os部门,有点吃惊没想到歪打正着。

面试难度的话除了开头page cache的一些细节因为很久之前看的了,需要回忆一下,其他还是比较轻松的。而且我话比较多,甚至于最后面试官说“好了好了差不多了,我这边没问题了”...

8.26 二面

问的问题非常多,而且非常细。我有很多次觉得差不多时间了吧,问完这个是不是就该“我的问题问完了你有什么要问的”,结果还有下一个问题,这么反复了四五次。一个半小时全是问题,没有手撕,而且我语速还非常快,不然估计更久。后来hr面hr说才知道竟然是整个虚拟化的负责人....

问的问题实在太多,面完累死了也没记问了啥。印象最深的一个,甚至要问我你刚才说的这个设计是在内核哪个结构体实现的,我说struct page,后面问到reverse mapping,我说anon vma的时候提到了struct page的union,他甚至问我rmap是在page的哪个字段实现的.... 还好我看过答上来了,总之就感觉问的非常多非常细。

给自己知乎专栏打个广告,大爷走过路过来看看啊~:https://www.zhihu.com/column/c_1576639032024567808

#晒一晒我的offer#
全部评论
这个属于腾讯哪个事业部呀大佬
点赞 回复 分享
发布于 2023-10-02 14:14 江苏
是不是ssp了啊,大佬
点赞 回复 分享
发布于 2023-10-11 12:55 广东
大佬文件系统项目有类似的可以学习下嘛
点赞 回复 分享
发布于 2023-12-09 15:17 江苏

相关推荐

15 58 评论
分享
牛客网
牛客企业服务