猫猫猫猫猫猫喵 level
获赞
224
粉丝
73
关注
9
看过 TA
1748
中南大学
2026
C++
IP属地:浙江
暂未填写个人简介
私信
关注
昨天 13:06
已编辑
中南大学 C++
指全程被面试官碾压太菜了猫猫开局自我介绍都没有,直接两道hard起手(hot100),言下之意撕不出来也不用自我介绍了。撕完25min,面试官找了十分钟会议室,然后看了五分钟我的代码,40min时正式开始面试。总计90min。面试官每次是引入一个话题,然后根据我的回答进一步问问题,一直问,一直问,直到我回答不出为止。最重要的是!他不是一个问题一个问题问的,他是一堆问题一堆问题问的!我他喵前一句没回答完,他又问十句!记不太清他问的啥了,只能根据录音里我的回答内容反推一下,问题仅供参考1.自我介绍2.实习转正情况Raft开始3.介绍raft4.何时发起leader选举5.如何避免选举失败(超时时长随机化)6.raft集群有没有不可用的时间,比如日志提交时?无,高可用,日志写入期间向leader读老日志7.为什么要大于N/2的节点确认后才提交日志,小于N/2行吗?不向从节点确认行吗?8.raft如何保障leader的日志是最新的raft这块结束,猫猫个人觉得答得还行,没有被某个问题卡住网络开始9.读过nginx源码没咋可能读过(10.TCP长连接和短连接,什么时候用低频次、无状态、非交互式的场景用短连接,其它的一般长连接11.心跳有什么用检测异常连接,防止中间设备如NAT、防火墙等清除会话(这里一开始记错了,说成了是TCP长时间没消息会断开连接,引得面试官质疑,当场百度,我忏悔呜呜,TCP有keep alive,默认不开启,不会自动断开连接,但是中间设备会自动清除会话)OS开始12.C++和Go的区别,从服务端编程的角度讲讲13.C++和Go的协程实现对比14.协程什么时机切换15.协程比线程的优势16.协程切换,需要保存哪些上下文?答得PC、SP,寄存器中一些其它值17.寄存器中保存了哪些信息?我说局部变量、参数、临时值啥的,这里面试官质疑了一下,我又说和CPU架构有关,x86和RISC-V这些不同18.上下文保存在哪里我回答栈,或者特殊的页面上,和架构有关19.函数调用时如何切换上下文的函数调用信息保存在栈帧中,通过栈帧指针实现函数跳转20.具体一点,说说函数调用的过程,哪些信息保存在哪里,哪些是调用者保存的哪些是被调用者保存的真记不清了,猫猫举了一个进程的例子,进程的栈中切分为多个函数的栈帧,按函数的调用顺序从下至上布局,通过栈帧指针的移动实现函数调用,同时函数的局部变量、返回值之类的保存在栈帧中,总之我答得很模糊,面试官不太满意。21.虚拟内存22.TLB为什么快TLB可以缓存,页表查找是需要多级映射23.吧啦吧啦,问了一堆问题,大概就是问虚拟内存要怎么分配,物理内存又要怎么分配答了写时复制的一点东西,先分配虚拟内存,实际要用时触发page fault,分配物理内存24.哪些内存分配在栈上,哪些内存分配在堆上,咋分配的,通过啥函数分配局部变量啥的在栈上,动态分配的在堆上,小内存用brk,移动堆顶指针,连续的,大内存用mmap,创建独立的内存映射。(其实还有个内存池,忘了)25.mmap分配的内存在哪栈和堆中间的内存映射区26.内存布局,内核态和用户态在哪27.为什么进程切换比线程慢页表切换、CPU缓存命中率降低(这一点被面试官质疑了,没搞懂他的说法)28.切换页表的过程为什么会很慢?难道不是就一个页表指针切换的事吗?蒙了,我解释了一下两个进程位于不同的地址空间,实际上没有“指针”这种说法,但还是解释不出为什么页表切换为什么慢。经过面试官提醒,是TLB刷新的原因,页表切换其实是很快的,关键在于TLB会完全刷新。OS到此结束C++开始29.静态多态、动态多态30.程序运行过程中,是如何找到vptr的?如何根据vtable确定要执行哪个虚函数?31.vptr属于类还是对象的,在什么时机创建,存放在哪里32.这里答得很一般,让我从类的内存模型思考一下33.普通函数和虚函数的虚拟地址是什么确定的?是编译链接期间还是运行期间?34.父类指针指向子类对象,为什么程序能知道调用的是子类对象的方法?到底是怎么做到的?对象怎么拿到vptr的?35.引申了一下C++程序执行的四个阶段,链接阶段如何进行符号解析和重定向总得来说还是在围绕虚函数还有程序动态运行时的地址分配来谈,但这一段猫猫答得很乱,虚函数还是得下去仔细看看36.反问,看中校招生哪些能力
我的秋招日记
0 点赞 评论 收藏
分享
04-02 15:53
已编辑
中南大学 C++
only两面,应该是个日常吧,做百度云云计算的,C++/ Go,暑期已经伤透了我的心,决定干个日常然后all in秋招了一面(50min)1.项目介绍与拷打2.raft选举3.选举失败怎么办3.leader和follower挂了分别怎么处理4.新节点加入后要复制全量日志吗,日志量太大怎么办(快照压缩)5.实习介绍与拷打6. Proactor与Reactor7.什么场景使用异步IO,什么场景使用同步IO?8.epoll,select和poll9.操作系统的启动过程10.进程与线程11.用户态与内核态12.lazy allocation过程13.多级页表的好处14.cpp多态15.智能指针16.循环引用17.手撕LRU18.反问二面(1h20min)压力面,说啥都质疑,答对无反馈,手撕两hard1.非常深入的实习拷打,上来就把我打蒙了2.死锁3.如何排查死锁4.锁竞争过程中,如何防止某些进程一直抢不到锁导致饿死5.什么情况会导致内存泄露(裸指针,shared ptr循环引用,多态下父类析构函数非虚函数)6.详细解释一下最后一种情况为什么会导致子类对象内存泄露?如果子类对象无任何内容呢?(有点没理解面试官意思,答了一个类即便是空的,也要占1字节内存)7.介绍智能指针8.三道智能指针应用场景题(汗流浃背)9.说一下你说了解的所有stl容器和他们的底层原理(queue和deque不知道,回去查了一下queue是deque实现的,deque底层是分块数组)10.手撕两hard(个人认为这两题应该都对标力扣hard,后面查到了第一题确实力扣有,是hard),给了个链接跳转英文题,噩梦开始第一题是实现一个最高频率栈,每次弹出最高频率的元素中的一个,如果有多个,弹出最顶上的那个(答了用两个栈实现,有点暴力,面试官不满意,遂寄,回去想了想,应该是栈+哈希表)第二题跳格子,滑动窗口+dp,一开始想歪了,以为是贪心,好在后面圆回去了11.反问业务(面试官只答了一句话,明显不耐烦了。到这里我以为我必死无疑了,已经在准备快手的下一面)第二天和问hr姐姐,啥时候发感谢信?答,面试通过了,稍后电话联系你问,啊?只有两面???答,是的遂上京
bowwww:接只有两面
查看29道真题和解析
0 点赞 评论 收藏
分享
03-25 15:23
已编辑
中南大学 C++
bg末九本,一小厂实习,算法题1000+,专一拿过国奖二月中旬开始投递,海投所有大厂,截止目前0暑期offer,但意外收到了一个百度日常的oc超参数(游戏服务器):TimeLine忘了,2-13左右,两面oc,已拒不鸣科技(游戏引擎):TimeLine忘了,2-15左右,三面oc,已拒字节飞书(后端):2-20一面挂腾讯wxg(后台):2-20一面挂度小满(GO研发):2-27一面挂字节广告(后端):3-4一面,3-14二面,泡池子ing阿里云(基架):3-6一面,3-9笔试a0.45挂百度(Go研发):3-7一面,3-18二面阿里淘天(C++研发):3-11一面,错过二面电话,寄RisingWave(数据库内核):3-12一面腾讯csig(后台):3-13一面挂佳期投资(量化):3-14一面,已拒笔试百度(C++/Go研发):3-18一面,3-20二面,已oc快手(云原生):3-18一面,已约二面阿里控股(C++研发):3-19一面kpi,已挂拼多多(服务端开发):3-20一面,约二面已拒美团(后端):3-21一面,3-24二面做过笔试的厂也总结一下吧:1.顽岩资产2.作业帮3.饿了么4.灵犀互娱5.阿里控股(淘天)6.米哈游7.美团8.拼多多9.阿里云10.蚂蚁(无面挂)11.网易互娱12.b站13.虾皮14.游酷盛世15.客路旅行16.柠檬微趣(一点也不有趣)17.特斯拉(说我没有图形学经验,不给面)反思了一下,自己作为一个C++选手,项目和实习以造轮子居多,基础还算扎实,所以一面只要非kpi基本都能过,但一旦进了二面,开始考察业务,就顶不住了。作为纯血CPP选手,没有垂直方向,所以选择了海投策略,用CPP的岗与不限语言的后端岗全都会投递。结果就是,投递量化、游戏、音视频、OpenGL、存储、数据库等岗位,无相关经验,打不过有对口项目与实习的选手,纯纯送人头。而投递不限语言的后端岗位,也打不过java与go选手,这两位是后端的宠儿,项目实习都是业务为主(外卖点评这种),自己的cpp写几个轮子项目,面试官根本不care,一问起业务来,表示啥也不懂,也是送人头。总结:如果再来一次,绝对不会选择C++,已经走上一条不归路了呜呜呜
洒脱的杰尼龟在走神:我们cpp就是🐮,转什么语言都方便,而且什么岗位都能投
0 点赞 评论 收藏
分享
03-13 22:45
中南大学 C++
一小时项目+八股拷打,简历从头问到尾,问到不会为止,最后十五分钟手撕LRU(典中典)(1)实习拷打(引申了一个ABA问题,不会,当头棒喝)(2)LRU用在OS的哪些地方(3)mmap使用的是物理地址吗(4)mmap会将整个文件映射到内存里吗(5)Page Fault具体过程(6)发生Page Fault后要将虚拟地址映射到物理地址,如何判断映射到哪个文件的哪个部分?(答了根据虚拟地址的偏移量对应到文件起始地址的偏移量,被追问如何确定要映射哪个文件,懵)(7)时钟中断(8)OS如何选择从内核态返回哪个线程(答了调度器会从“线程表”里根据调度算法,选择下一个线程)(9)“线程表”具体是什么数据结构(队列、红黑树、链表)(10)协程(11)你实现的协程是非抢夺式的,如果有一个协程死循环了怎么办(答时间片耗尽后线程强制切换上下文,被追问当前线程已经被这个协程“占据”了,又该如何实现上下文切换。懵了,面试官说可以用信号)(12)打开文件的具体过程(13)项目介绍(14)TCP粘包(15)JWT流程,JWT可能被伪造吗(16)raft协议,读操作可以位于任意节点上吗?(我回答是,面试官表示质疑,引申下面的问题)(17)强一致性的实现,假设客户端连上一个follower,但此时最新的日志还没从leader上同步过去,客户端又想读取到最新的数据该怎么办(不会,面试官说follower返回数据的同时返回一个“日志长度”)(18)raft选举(19)投票规则(答了任期,面试官说还有一点)(20)Proactor(21)忘了问的啥,掰扯了一下IO模型(22)epoll,对比其它两个(23)普通的IO会阻塞轮询,阻塞的时候可否做其它事情,让别的进程读(没get到面试官意思)(24)ps命令会显示哪些信息(追问会显示进程状态吗)(25)HTTP(26)http优化,keep alive(27)继续优化,若有一个复杂场景,服务器需要频繁推送,怎么处理(答了2.0多路复用,主动推送,升级成websocket,结果都不是面试官想要的,最后没辙了答了一个本地缓存,面试官和我都发出愉快的笑声)(28)数据库索引(29)索引常见数据类型(30)索引查找(31)联合索引(32)redis日志(33)AOF日志解决了什么问题
猫猫猫猫猫猫喵:问到都写不下了 (34)docker是啥,讲讲原理(不懂,我只是一只猫猫怎么会懂这么深奥的原理) (35)手撕LRU (36)反问
0 点赞 评论 收藏
分享
03-07 17:32
已编辑
中南大学 C++
momo_校招版:给佬跪了 我周末三场都有点嫌多了
0 点赞 评论 收藏
分享

创作者周榜

更多
关注他的用户也关注了:
牛客网
牛客网在线编程
牛客网题解
牛客企业服务