本科研究生计算机专业,字节跳动 基础架构 3面,真实面经奉上

先说说学历之类的硬性条件,方便同样经历的人做参考:
学历:齐鲁工业大学,也不是很清楚是二本还是三本,总之普通的本科。和公司前辈们聊过这种学历投大公司能不能被捞挺看运气的。
ACM 铜牌一块(只是有的面试官会稍微提一嘴,没感到很有用的样子)
实习经历 腾讯一段 (硬通货)
三个项目,基本上反映了我的技能栈:
乞丐版的 C++ web server
乞丐版的 TCP 协议原型
乞丐版的 os 内核

总结

本人记性不是很好,所以可能有些题忘记了没写上。不过每一轮都是若干提问 + 一道 算法题,每轮都是 40min ~ 60min。因为部门是真·底层(虚拟化、操作系统、网络栈),很多问题一开始像是八股,但到最后都会引导到“你有没有看过Linux 源码里这一块儿是怎么实现的?”。
算法题都是部门人自己出的,没遇到LeetCode原题,但也不是很难。

正文

12 投,13 收到预约提醒,约了 16 号的

一面

计网:

“我看你写了个 TCP 原型,那我们来聊聊 TCP 吧”

TCP 四次握手

TIME_WAIT 2MSL

拥塞控制

TCP 有哪几种关闭的情况。

TCP 里的 RTT 和 RTO 怎么测量的?

有看过 Linux 内核怎么实现 TCP 的吗?

有看过 TCP 的 RFC 文档吗?

socket 编程:

说说 SELECT POLL EPOLL 的区别

操作系统:

我这个内核是怎么做的?

那你讲讲 Linux 里 page fault 是怎么实现的?
子问题 1:Linux 下中断的触发流程
子问题 2:Linux 怎么确定是谁出发的 page fault
子问题 3:page fault 判断线程没有访问内存的权限会发生啥 
子问题 4:page fault 分配物理内存失败时会触发啥错误?

算法题:
给你几个数组,每个数组抽一个数,把所有组合情况列一下。 赤裸裸的 DFS, 秒了

面完当晚收到下一轮预约,约了 18 号的

二面

自我介绍

聊实习经历, 10 min

实习用的一致性哈希,这个一致性怎么理解?

聊项目, 10 min

你这个 TCP 里重排序用的什么数据结构?

有没有了解过 Linux 内核里用的啥结构?

讲讲你这个里面时怎么实现的流量控制?

socket 编程

聊聊 epoll 的 ET LT

算法题:

写个单生产者单消费者的 ring buffer

面完当晚收了预约,约了 22 号的

三面

C 语言

static 关键字

voiltile 关键字

预处理指令 if define 作用

gdb 调试

查看指针地址和值都用啥指令?

查看调用栈用啥指令?

怎么打断点?

还有些记不清了

操作系统

讲讲你的内核里怎么实现的多线程调度

讲讲 Linux 内核里怎么实现的多线程调度

讲讲虚拟地址怎么变成物理地址的

TLB 是什么东西?

32位和64位的区别?硬件和OS两方面谈谈。

大小端是啥?怎么判断?现在X86一般是哪个?

X86 的 cache 架构

你刚才说所有核心共享 L3 缓存,有没有了解过 NUMA?

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

酔清风

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值