2019年秋招嵌入式Linux面经

楼主在找嵌入式Linux相关工作期间,发现相比互联网职位的面经,嵌入式Linux的面经简直少的可怜😤,趁着国庆节回顾并分享一下我的秋招历程。
此外希望各位大佬给点建议,如何选择offer呀~

1. 华为(实习通过、2019.9.9优招一面挂)

华为是开始考虑找工作就一直想要去的公司,因为一直想要跳出嵌入式这个圈子的话,华为基本是我的唯一选择了(因为华为可以报操作系统开发工程师,不想继续做嵌入式的我觉得很不错)。从三月份的实习招聘开始到六月份的优招、九月份的最终面试,准备华为的面试基本贯穿了我的整个秋招,结果最终在优招面试第一面挂,这种情况让我感到很受挫,幸好后面坚持投简历面试,现在拿到了还算不错的offer。

· 实习面经

实习招聘时候的华为还是以前那个华为,一共两面。

第一面聊了四十分钟左右,首先自我介绍balabala,然后开始怼Linux相关的问题,进程线程的区别、CFS调度、红黑树等等,都是基本的问题。之后面试官出了几个简单的题目,用宏定义实现全年有多少秒,讲讲快速排序的思路,如何找出一个链表有没有环。一面的问题大概就是这样。

第二面就很平常,自我介绍,几个技术问题,几个HR类型问题。记不太清楚了,比较简单吧。

这里还想说一下,因为实习时候做过华为的笔试,所以后面的面试就不需要做笔试题目了,但是因为实习笔试时间很早,当时也没有刷letcode,所以当时题目做的比较烂,得分比较低。因为优招面试时候第一面会回顾笔试,我怀疑直接挂掉有这个因素。

笔试题目情况:第一题是实现简单计算器。我用python库函数eval直接输出,这个在面试操作系统开发工程师的时候比较减分~~~;

第二题是给定一长串大小写字母组合,找出所有的蛇形字符串并按顺序输出。这个题目我应该是通过80%的用例,用两个数组分别统计了每个字母出现的次数,构造为蛇形字符串输出,但是缺少了排序环节。

第三题没有做,所以我的实习笔试做的真是稀烂~~~,以后想去华为的人笔试一定要好好准备了,笔试只有一次机会做到完美。

· 优招面经

今年是华为的优招秋招改革的一年,所以流程上面有些混乱。从五六月份开始,和我联系的hr学姐就开始安排优招面试,这个时候还是按照往年的流程,面试两轮就可以通过。我因为实习面试通过了,所以只在五月底视频面试了一次作为终面,比较轻松愉快的通过了,HR学姐告诉我等待就好。

到了八月份时候,通知我优招通过了,但是后面可能会有加面试(这个时候感觉到改革了,,,),于是我开始刷letcode,自己太懒,只是刷了基本的题目(letcode 的专项练习)。

优招一面持续了五十分钟,流程很清晰,首先是自我介绍,之后面试官回顾了我的笔试题目,因为第一题用python写的,这个时候感受到了面试官的不开心,只问了第二题思路以及为什么没有百分百通过。之后问了很多Linux内核的东西(进程线程区别、内存管理系统、IPC机制、文件系统等等),这些问题基本都答上来了,当然只是纸上谈兵。接着面试官开始找题,拿着一叠纸大概找了一分钟🙃,出了一道letcode中等难度的题目——切割回文字符串(找出所有的切割方案并输出),一看到这个题目我就知道不会做。。。自己太菜了😪。因为用C语言写,我开始花费很长时间在想怎么存储结果,,真的很麻烦。大概做了二十分钟,确实做不出来就结束了,面试官问了问我的思路,我没有讲出分治,自然就挂掉了。据说如果没有做出来但是思路讲对了也是有机会通过的。

2.大疆(深圳嵌入式offer

大疆的面试给人感觉很舒服,会提前发邮件沟通时间,两轮电话面,一轮现场面试安排的都很恰当。

后来才知道大疆的心理测评和笔试刷人比较多,这里讲一下笔试的东西,笔试内容都是很基础的知识,但是范围很广,需要平时的积累,找到一个链接:https://blog.csdn.net/weixin_42060900/article/details/99229518,讲的很全了。

一面

问了很多简历上面点的东西,围绕项目问了很多比较底层处理器相关知识、通信接口、RTOS的很多问题,简单列举一些:I2C SPI接口、处理器组成架构、嵌入式操作系统的任务调度、中断管理体系、时间片机制等等,过去很久了记得不清楚,总体比较简单。

二面

二面和一面的差别不大,因为我有讲向英飞凌的一款处理器移植操作系统经验,就主要问了我如何移植操作系统,需要注意什么要点以及英飞凌处理器的特点。最后问了几个HR类型问题。

终面

终面在上海,终面技术相关的东西很少了,主要是看综合素质吧。一共问了二十多分钟,没有自我介绍,列几个问题:你为什么觉得你适合这个岗位、你的优点是什么,缺点呢?、最近读的一本书是什么,大概这样~~~

在终面结束两周之后收到了邮件,完全按照流程行事,很棒!


3. ARM中国(深圳secure/IoT部门 offer

一直做嵌入式相关的工作,对ARM相信都很熟悉,但是对ARM中国却不怎么了解。我去听了他们的宣讲会,简单介绍一下,ARM中国现在是中资控股(感觉算半个外企?),据说今年扩张招的人比较多。他们的业务很广,有芯片、安全、开源软件、GPU、VPU等等,感觉他们的技术水平很高,进去应该有比较好的学习机会,只是目前的规模比较小。

ARM中国一共面试了有四轮,第一面是现场面试,后面有三轮电话面试。

第一面

首先自我介绍,之后主要围绕简历问答,面试官对我项目里面发挥的作用与项目的整体框架比较感兴趣,之后就是一些语法问题、操作系统移植等等,比较轻松愉快,面试官告诉我回去等电话。

第二、三、四面

第二面开始全都是电话面,第二面比较难,问了接近一个小时,自我介绍结束之后开始怼各种技术细节。问题:在移植操作系统时候遇到过什么问题、Cortex M系列处理器支持什么异常,英飞凌处理器架构与ARM有什么区别、加密算法(不懂)、Cache和MMU的作用,编码时候需要考虑什么、如何设置MMU的页表等等,不得不说做安全的人提出的问题比较难的,我估计他已经留情了。。。

第三面开始主要围绕简历提问,结合一些基础知识,之后电话里出了很多题目:如何实现长度2048bit的数字加法、如何优化2048bit数字的乘法、还有几个题目直接列代码~~~很多题目想不起来了,印象深的是这几个。对了,volatile、static关键字简直必问,每次面试都有🤣。

int m = 5;
m = m++ > 5;//问m的值是多少

struct temp {
    char tt;
    int data[0];
};
//问sizeof(temp)等于多少,还问了一个这个结构体成员赋值的问题,记不清楚了。

第四面比较短,接近半小时。还是自我介绍(emmmm),之后直接怼问题,被问的有点懵。题目:可执行文件的开头32字节作用是什么、ARM处理器支持的处理器状态、列出ARM的寄存器、MSP与PSP、FP寄存器是什么、操作系统移植的难点(任务上下文save和restore)、英飞凌处理器相关东西等等。。这个面试官比较直接,开始被问的几个问题当时没想起来。

在国庆前一晚接到了HR电话,ARM中国的面试结束~~~

4. intel


5. 地平线


6. 中兴



未完待续~~~~

#Arm中国##大疆##华为##地平线##秋招##嵌入式工程师##面经#
全部评论
建个群 
1 回复
分享
发布于 2019-10-15 20:58
大佬牛批,顶起来
点赞 回复
分享
发布于 2019-10-17 00:00
阿里巴巴
校招火热招聘中
官网直投
感谢大佬分享经验!
点赞 回复
分享
发布于 2019-10-17 15:45
arm给老哥基本月薪多少?
点赞 回复
分享
发布于 2019-10-19 10:49
楼主做驱动还是应用开发啊
点赞 回复
分享
发布于 2019-10-20 14:28
大佬最终去了哪?
点赞 回复
分享
发布于 2019-10-26 16:02
大佬是本科还是研究生啊,啥专业的
点赞 回复
分享
发布于 2020-07-03 01:16
大佬arm面试是全程英文吗
点赞 回复
分享
发布于 2020-09-15 16:22
老哥几场面试间隔多久吖,时间线友么
点赞 回复
分享
发布于 2022-09-22 19:17 湖北

相关推荐

1.解释一下栈和队列的概念。2.数组和链表有什么区别?3.请解释一下 static、validate、const 这些关键字的作用。4.如何去除字符串中的空格?5.如何合并两个链表并保持顺序?6.请说明蓝牙芯片在产品中的作用。7.什么是蓝牙软件成品模式?8.请介绍一下蓝牙协议栈的架构和分层。9.比较蓝牙协议栈和网络协议栈的架构。10.蓝牙芯片是否基于 Linux 或其他常用架构?11.描述一下蓝牙软件的软件架构。12.什么是 event-driven 类型的软件架构?13.请解释函数指针和指针函数的区别。14.请用简单的代码示例表示函数指针。15.请用简单的代码示例表示指针函数。16.操作系统任务切换的关键是什么?17.请介绍您的项目,包括难点和解决方法。18.在函数中定义一个大数组,是直接定义还是使用 malloc 分配内存?19.函数中使用 static 定义的变量存在于哪个区域?20.请解释 DMA 是什么?21.SPI 有几种模式?22.请解释进程间通信中锁和同步的概念。23.当一个低优先级进程获取到锁时,高优先级进程会怎样?24.如何解决优先级反转问题?25.在用户态开发中,如何定位程序跑飞或出现段错误?26.程序分成哪几个段?27.堆和栈有什么区别?28.请说明如何使用中断方式代替查询方式。29.请解释 UART 的奇偶校验。30.请介绍队列、栈和二叉树。31.如何确定多个线程的执行顺序?32.请解释 Linux 中线程的调度方式。33.你了解整个 SPI 通信过程吗?上述问题 已经整理到面经中,面经地址在下方!!  c++/嵌入式面经专栏-牛客网 https://www.nowcoder.com/creation/manager/columnDetail/MJNwoM
点赞 评论 收藏
转发
29 156 评论
分享
牛客网
牛客企业服务