2014阿里实习生面试感想

本来就对a公司很感兴趣,但是又觉得自己的水平还不够,不过还是特别想尝试下。

来到面试现场,虽然自己想面内核方向的,但看到被分到C++组,C++就C++吧。走到第一位面试官前面坐下,直接出了两道题,一道排序再加二分查找,另一道删除字符冲中的重复的字符,比较简单,但限时十分钟。之后简单的介绍了自己的学习情况和知识领域,我说了linux,内核,体系结构之类的,那面试官有点尴尬,说他部门应该没有类似的岗位,那我就说可以问我些C++,之后就是多态,重载,隐藏,模板类等基础知识,比较容易,之后面试官说可以联系适合我方向的面试官问我,然后出来,等着,还蛮开心的,觉得非常的人性化,因为这次上海站招的是C++和java方向的,就我这个二逼说了要面内核,其实也是因为看到网申的主页上说那里有非常厉害的内核团队。之后一工作人员开始翻面试官的名单,只找到一个稍微接近的有做过一些linux相关的面试官。之后开始第二次面试,前面主要是正常的聊聊天,后面扯到内核,然后讲启动过程,一讲出bootloader,面试官打断希望详述bootloader具体做了什么,然后我开始回答在第一阶段要进行部分硬件的初始化,面试官打断,问为什么要初始化,具体要初始化哪些,我回答了像存储器之类的,像一些arm里面有stepping stone,只有4KB,要将阶段2的代码搬移到sdram里面,追问为什么设定4KB,为什么不做的大一点直接跑,我是从成本了速度的角度回答的,接着说会拷贝内核到flash里面,追问有哪些flash,区别,哎,弄得我都觉得再面试嵌入式软件开发了,回答完,追问在内核启动过程中,你如果要去做攻击会从哪些地方入手,这个攻击是说要获得root权限,要从哪方面考虑,这个我真的是闷了,经过很多提示,大致说改变启动的地址,改变映射之类的,但我真的不是很清楚,回答的不好,接着看到我简历里面会GDB调试,问我GDB调试的原理,程序在断点处停下来我是知道的,利用软中断,隐约记得有个ptrace的追踪函数,产生子进程之类的,追问那如何实现查看那些变量或者改变这些变量,既然是用进程间追踪那是如何传递这些值的?是用些进程间通信吗?这个答不出来,实在没这么深入的去思考过。之后问了调试调试符号表,全局符号表,这些还能答,主要涉及程序链接的过程,在linux下生成的可执行文件的组成。之后谈到对linux内核源码的理解和认识,在过程中我提到linux的有些东西特别让人感叹,包括将很多不同的体系结构和CPU之类的纳入统一的框架中,比如中断,VFS,这两个我都彻底详述了下,面试官谈了他自己的理解,觉得我的想法只是半对,他觉得是因为linux内核抓住了计算机的本质,抓住了计算机最核心的东西,它本身做起来并不是为了包容一切,当时我就觉得很赞同他的想法,我从外围的东西去思考,认识到的都是些现象的东西,却没有抓住最核心的东西。之后就是人生规划啊,最害怕的事啊,性格优势和缺陷啊之类的。

       一直以来都觉得自己思考些东西还是满深入的,但经历过这次面试让我觉得自己对计算机或者内核的了解还太表层,阿里的面试官的知识广度和深度都让我很吃惊,我觉得他们需要的不仅仅是对语言的或者内核的了解,更在乎的是一种极其强烈的探索精神,这次面试其实也暴露出我的这些缺陷,但还是感到很开心,感觉见到高山的感觉!

     这次被拒是肯定的,但一点都没有影响我对阿里的向往,下次再战!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值