之前面试的字节杭州研发中心IOS,奈何三面面试官是C语言栈,并且多线程我没有好好准备,被挂了,被北京飞书部门捞了起来,一面二面一起。
一.老生常谈的自我介绍。
二.计算机网络:
1.OSI七层模型和五层模型,每层模型的作用具体说一下。
2.TCP和UDP属于那个层的?
3.既然说到了传输层,那你给我讲一下四次挥手的过程,越详细越好。
4.网页输入url到浏览器显示页面的过程。
5.你能说一下传回的数据包怎么显示在浏览器页面的过程吗?(内心OS:这不前端干的吗?)硬说的HTML被解析构建DOM树,CSS构建了渲染树,然后布局绘制在屏幕上。
6.刚才说到四次挥手,你说说close-wait 和 time-wait左右,time-wait会导致什么问题,刚才为什么说是2MSL?
三.操作系统:
1.线程和进程的区别
2.进程间通信方式说一下。(信号量,管道,消息队列,socket,共享内存)
3.你刚才说到的那种通信方式是最快的?答错了.......小哥哥啊了一声,我就敢紧挨个解释原理,最后给自己解释明白啦是共享内存。
4.线程同步是什么
5.没有线程同步会导致什么?
6.你说一下一般什么方法来解决线程同步问题?(信号量,锁.......)
7.说一下你所知道的所有类型的锁,解释悲观锁乐观锁。
8.自旋锁和互斥锁的区别
9.你说到互斥锁涉及了两次上下文切换,那么线程切换是用在cpu密集型好还是IO密集型好?
10.解释下死锁
11.避免死锁的方法(破坏四个条件之一就行)
12.解释一下银行家算法。
13.说一下内存吧,为什么会有分页分段的方式出现,他们区别是什么。
14.解释下虚拟内存,虚拟内存为什么会涉及到分页或分段?
15.刚才我记得你说死锁典型例子是DispatchQueue的主队列里用同步的方法,说说为什么会死锁?
四.编译原理+IOS:
1.你通过什么途径学习swift的?
2.swift是静态还是动态语言?
3.swift的编译过程是什么样的?你刚才说它比OC快,为什么呢?(给自己挖的神坑,我并不会OC)
4.刚才说到了GCD,说一下原理。
五.智力题+算法题:
1.两根不均匀绳子,一根烧完1小时,怎么测15min
2.一个hard算法题......我怀疑他故意的,我说最近写论文每太刷题,他说我给你来个简单的!Leetcode 927.三等分😂😂一道hard直接送走我!没做出来,小哥给了提示,但是我还是没想明白后边0的处理,看了题解豁然开朗。
五.反问环节:
1.Q:我通过了没?A:我给你过了,马上下一个面试官联系你就继续二面了。
2.Q:飞书是什么语言为主?A:swift为主,但是OC你也得进来了学的。
3.Q:工作地点在哪?A:五道口六道口这边,你应该知道。
六.10分钟后二面:
面试官估计是个大佬.......我说学过VSP,疯狂问我视频压缩算法和图像压缩,H.261-H.265之间的异同,JPEG的压缩过程.......
面了10分钟,刚问到ARC和MRC,面试官断网了!!!!没错,我以为我不在国内网络延迟有点大.......结果是部门断网了。
全部评论
(1) 回帖