嵌入式暑期实习总结及高通面经(已oc)

中大厂有嵌入式相关的岗位基本都报了,一直到四月底才有几个面试。
有面试:cvte,海康威视,景嘉微,零跑,高通;
其中就cvte和高通oc了。海康八股准备不充分挂了,零跑电话面面试官一个劲的夸我优秀,结果后面也没啥消息。
最终决定去高通了,具体流程看上贴,面不在多,有一个就行
高通面筋网上是真的少,基本找不到几个,遂记录一下,高通面筋:
6、linux内核空间和用户空间的通讯方式
7、为什么中断不能睡眠
8、内核的内存分配方式(伙伴系统、slab等等)
9、kmalloc最小内存分配,预期分配128字节实际多少?
10、define和const区别,分别什么时候生效?
11、了解大小端吗,大小端的区别?
12、cache一致性?
13、cache的三级缓存知道吗?
14、堆栈区别?
15、介绍一下DMA?具体原理是什么?
16、虚拟地址到物理地址的转换?
17、MMU的具体工作流程?页表大小?
18、进程的上下文具体指什么?
19、char const* p有什么特点?地址变吗?
20、Static、volatile的作用?
21、结构体和联合体的区别?c语言位段了解吗?
22、Define和typedef的区别?
23、C语言函数里面如何定义多个名字相同的变量?变量作用域?比如for里面进行定义变量?
24、c的函数的入参是存放在哪里?所有入参都是栈吗?
25、栈是系统哪里分配的?
26、c语言位段了解吗?
27、define宏为什么要加括号?
28、锁的类型有哪些?
29、系统调用用户态到内核态会发生什么?
30、linux进程通讯方式?
31、linux内核如何获取用户态pid?
32、linux内核调度机制?
33、linux驱动第一个被执行的函数如何实现?为什么有了__init和__exit就会去执行对应的函数?
34、32位的linux的虚拟内存空间的分布情况?高端内存映射区是什么?他的地址是什么?
35、用户态堆栈在系统调用时会发生什么变化吗?
36、Arm v8 有多少个寄存器?有几种模式?异常等级有几种?工作模式有哪些?arm上电复位后进入哪种模式?
37、知道哪些调试方法?gdb调试怎么调用函数?怎么设置打印16位的变量?怎么跟踪变量,变量值改变时自动提示?如何设置断点?死机重启怎么调试?
38、知道trace调试吗,知道怎么用吗?
39、Linux操作系统的三大块了解吗?
40、现在让你开展一个项目,主要负责生物语言识别,你该怎么开展,需要考虑哪些因素?
英文问题:
1、什么时候毕业?
2、毕业了什么时候能到岗?
3、有那么多候选人,给我几个理由让我把offer给你?#面试问题记录#

还有很多基础问题就没写了
全部评论
佬,你这问题我几乎一个都答不上来
4 回复 分享
发布于 05-15 00:57 福建
你这些问题我看完就已经汗流浃背了
2 回复 分享
发布于 05-24 23:50 山东
oc高通太强了
1 回复 分享
发布于 05-22 00:18 安徽
佬,有项目拷打吗
1 回复 分享
发布于 05-20 10:04 广东
接offer
1 回复 分享
发布于 05-15 02:00 浙江
请问一下oc后多久收到的offer
点赞 回复 分享
发布于 06-19 21:16 四川
英文是第二轮美国人问的嘛
点赞 回复 分享
发布于 06-05 16:20 北京
可以八股多点,期待你的秋招面经
点赞 回复 分享
发布于 05-20 21:32 山东
接offer
点赞 回复 分享
发布于 05-17 13:00 浙江
点赞 回复 分享
发布于 05-14 17:42 安徽

相关推荐

1.简历自我介绍2.技术面(面试官全程1h问的都是实操经验,没有八股文,问题比较开放-因人而异)●离职原因?为何没有骑驴找马?(行业低迷下寻求个人进一步发展+家人生病的时机)●iic协议时序是怎么样的?是如何启动的,如何结束,如何确定ACK和NACK?(scl高时,sda由高变低; scl高时 sda由低变高;第九个时钟-拉低sda即为ACK,拉高则为NACK)●是如何仲裁的?(比如多个从机的仲裁)--这个我说不出来--慌的一批!!(现在想是不是线与逻辑?)●在linux操作系统和MCU上,如何查找内存故障相关的问题?(MCU讲了如何JLINK调试工具+寄存器打印和保存+栈回溯,LINUX上讲了如何gdb+coredump,后面也提及了strace工具)(他问了gdb如何去执行和调试coredump和使用过程?我记不起来了...顿时感觉药丸了)●用过哪些操作系统(UCOS,LINUX,NUTTX,RTT),在实时操作系统上用过或者做过哪些工具?(我说到了单片机上用示波器去拉低拉高io查看耗时情况,然后自己对应的位置设立flag查看调用情况,第三方工具没用过---感觉不是对方想听到的答案)●阅读过内核哪一部分的代码?(我说我-以前看内核视频的适合,每个部分都看过源码,现在有点久远了)●如何解决程序瓶颈问题?(我讲到了top,free指令,还有perf工具)●如何解决内存溢出类似的内存问题(我提到了人工检查--释放和申请成对,mcu利用调试工具和栈回溯,然后Linux上的valgrind工具);●描述下最有印象的一次项目经历?(讲了一下给别人解决bug的一次项目经历)●自己感觉比较擅长或希望哪一个方向?(我说-按照公司方向走,反说公司开发得看看自己怎么选择?我mcu或者linux方向的应用开发皆可-如果两者还有选择的话,我选linux方向-希望在这方面更加深入成长--后来感觉给自己埋了一个雷)说一下内核那几个子系统--内存管理,进程管理,网络管理,文件系统,进程间通信,驱动等对哪个比较熟悉?(我选了网络--因为开发的时候有用到了●有无linux开机优化的经验-讲一讲?(我说有过将47s开机启动完善到20内的经历:说了几个比如ssh的优化,rcS内复位的优化,将很多内核操作后置的行为-●比如加载文件系统、ko模块,启动UI的优化等等)●如何优化开机启动-比如给任务优化到5s--给思路!(属实没有研究过内核启动的必要条件,说不太出来---面试官安慰说-没关系。)●网络传输如果发生丢帧或者延时和卡顿,怎么办--给解决思路?(我提及了这个接入交换机或者路由器-通过抓包工具来查,提及了两个工具wireshark和tcpdump,来分析到底是网络风暴/拥塞,发送方发出数据帧慢了还是错了,还是接收方收的慢还是收错了还是他应答的慢了,来定位)●网络的可调参数有哪些?(这真的到了盲区了,我一开始说的是TCP的socket,bind,listen函数里面的参数,他说不是这个,我有点懵,后来反应了--应该是TCP流程的那一套参数:比如建立连接的参数-SYN Retry(SYN 重传次数)、SYN Timeout(SYN 超时时间)数据传输参数:TCP Window Size(TCP 窗口大小)、Max Segment Size(MSS,最大段大小)、TCP Congestion Control Algorithm(TCP 拥塞控制算法)连接关闭参数:FIN Wait Time(FIN 等待时间)、Time - Wait State Duration(TIME - WAIT 状态持续时间)、Keepalive Time(保活时间)只有这个收发缓存是我用过的:Receive Buffer Size(接收缓冲区大小) 和 Send Buffer Size(发送缓冲区大小)我后来AI查的,但是没想到。。。药丸的感觉越来越重)●最后问了下:MTU的含义?即最大传输单元(Maximum Transmission Unit)●●反问阶段:我想问下这个岗位的定位是怎么样的?说是给其他团队兜底的存在!其他团队解决不了的他们来解决!所以不需要懂得太广,要懂得深刻!沉默了--没其他问题了!上述应该是80%+的问题,可能有个别遗漏,全程一个小时,语速和节奏中等偏快!●--面完总体感觉:我回答的不够深入,感觉不够完美,难过!--
豁达的小鲸鱼反对画饼:太强了佬
查看19道真题和解析
点赞 评论 收藏
分享
评论
37
210
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务