面试时间:2009面试职位:北京威盛-linux驱动研发分享时间:2011-03
- 面试经历:
- 面试当天早上到北京,上午面世via,晚上的车回大连。在同学宿舍无聊啊,也没有mm陪,咱也写一个面经吧,哈哈。我应聘的是 linux driver development这个职位。
约好9点,大概9:15的样子被喊过去,面试我的是一个高高瘦瘦的特斯文的gg,给人的感觉还是很nice的。不过不知道我的试卷去了哪里,找不到,还好有成绩记录,看到那个gg写在我的简历上,40分哈哈,我心想,居然了还有面世机会。先是就简历问,问我作过的那份实习相关的咚咚,我作的是一个视频系统的porting吧,他就问我那块板子的处理器架构,然后问我移植的难点,问题,以及如何解决的。俺一一作了回答。
接着问我对linux内核方面的东西,这是俺地强项,我就跟他说,内核对于写驱动是如何的重要,如果不懂内核肯定写不出高质量的安全的驱动程序,同时也暗示via是大公司,有的driver是要加入kernel的。应该招聘对内核比较懂得人做 driver,这位gg问我知道via哪些driver被加入了内核,寒一个,不知道。
接着问我2.6内核和2.4内核的区别,俺回答,差别太大了,从服务器应用到嵌入式应用几乎都作了重大的改进,服务器方面现在可以支持32颗cpu,嵌入式方面由于改进了的调度算法和可抢占内核,使得系统的相应能力大幅度提高。他接着问进程调度方面有哪些重大改进,我又介绍了一下o(1)调度算法,同时赞了一下2.6内核改进的驱动模型。这一段感觉答得还是不错的,聊得时间也挺长的,这个gg说我的经历还是蛮适合他们公司的,呵呵。
接着写了两个小程序:一个是在a.h里面定义一个整形变量,并且在b.c和c.c中include这个头文件,我一看他在头文件中定义变量就指出这样定义是不可以的,这个gg说是不可以,那么会在什么地方出现问题,编译还是在连接,有点晕竟然回答在编译的时候,后来在给他分析问什么会是在编译的时候出现问题时发现应该是在连接的时候进行符号解析出现重复的变量定义错误,立马改正,好好gg这个时候比较肯定我的分析。另外一道题就是分析static这个关键词了,老掉牙的问题了,呵呵,不罗嗦了。接下来就是拿了一段关于mpeg方面的英文介绍让我翻译一下,也比较简单。我在翻译的时候偷偷的在看他写对我的面试评价,好像提到c语言了,hoho。
中间让我出去了几分钟,可能是在写面世评语吧,我就等了几分钟,然后带我去了另一个房间是他的主管,一个好像对技术不是那么在行,可能是大boss,另外一个看起来应该是个技术很强的人,不过不nice。
对我从大连跑到北京面世赞赏了一番,我晕。并且问我有没有和同学一道过来,还特意帮我查了一下他们部门在大连就我一个人过来面试,又说我不容易,ft。
还是让我介绍项目相关的东西。又被我带着扯到内核了,问了我一些相关的问题,又是2.6的和2.4的差别,包括两种内核的定时时钟的精度,2.4的10ms,2.6的1ms都是基本的东西,又问我如何定时小于1ms,我说这个只能用循环了,但是那位技术gg似乎认为用循环并不适宜,我告诉他我就知道这种方法,他也没有告诉我更好的办法,ft。还问了内核中的自旋锁方面的东西,我就介绍了一下自旋锁的发展史,比较了一下semaphore和自旋锁的差。中间那个大boss居然说我40 分相当高了,而且技术gg似乎也点头称是。不知道平均分如何。
最后又问我会不会脚本编程,会不会automake,我只好老实回答只用过make,c语言用的比较不错。
还问有没有研究过framebuffer,我说没有用过,不过原理有所了解,应该很简单,就是将显卡内存映射到用户空间,对映射内存的读写就是操作显卡内存,可以显著的提高效率,技术gg在我说的过程中说了好几个是是,呵呵。
最后那个大boss问我有没有得过什么奖项或者引以为豪的项目经历。唉,俺啥奖都没有得过,引以为豪的项目经历说得还是与他们职位无关的,技术gg说我在自己的专业领域可能作的会更出色,ft,俺是学机电的。这样就结束了,呵呵大boss还是很友善的,起身握手送别,连称不错不错,呵呵。并且告诉我一个星期内给消息,我晚上可以回大连了。
ps:在附近上班的一个哥们中午请我吃饭的,吃饭回来的路上,风沙那个大阿。我说北京真是不及在大连生活舒服,他说最好把这些软件公司都搬到大连去,去大连上班比较好。呵呵 - 面试官提的问题:
- 先是就简历问,问我作过的那份实习相关的,问我那块板子的处理器架构,然后问我移植的难点, 接着问我对linux内核方面的东西;接着问我2.6内核和2.4内核的区别; 最后又问我会不会脚本编程,会不会automake,我只好老实回答只用过make,c语言用的比较不错。?
有用(0) 面试难度:难度一般的面试 应聘途径:网络招聘