华为OD 嵌入式开发工程师面经(二面)

自我介绍,我这次除了介绍简历上的内容,并且还说了一下我的优劣势。劣势我不太会讲,说了我这人比较慢热(不清楚是不是减分项),然后面试问的问题就比较深入了,问了Tcp的拥塞机制,还有重传,以及窗口大小是如何制定的等等,我答的的比较模糊,因为我之前用的LwIP协议栈将这些以及实现的有一套自己的超时和重传机制,至于滑动窗口问题我回答了传输时是如何确定的,面试官又问我那这个窗口是如何创建的,我这里确实不知道,说了是握手是定义的,然后补充确实不是很清楚,这个问题就算结束了,之后又问了ARM的中断管理,有几种中断状态,我不知道。就答非所问了一下操作系统概述上的中断管理机制那一套,这个问题也很快结束了,最后面试官让我 设计一个OTA升级程序,可以不重启就升级,我当时非常疑惑,stm32如何做到不重启,也就是不影响用户使用就升级系统,我之前项目是是一个BootLoader区,一个app区,怎么样都要跳转的。(后来想了一下那需要实现一个文件系统吧,像linux那样,万物皆文件),最后我回答了一个AB区交替升级的方案,但还是没有绕过重启的问题(最起码还是思考了的),最后只能说stm32上没见过有这种方案,之后还是手撕代码环节,题目是五子棋判赢,输入期盘2维数组,输出白赢黑赢还是都没赢,这个难度明显高了一个台阶,依然是30分钟,这次我没有全写出来,主要是判断4个方向上是否存在5子相同的子函数实现没想到,最后面试官让我解释了一下,我把没有实现的部分讲一下解题的思路,我叙述了一番,基本达到要求了,面试官又问我有没有想到什么算法,我就说了下遍历邻接节点,但是如何固定一个方向没想到合适的方法,所以选用了暴力的方法一个一个点来试了,对方给我说,其实可以用一个广度优先遍历就行了(???我面试完想了很久也没弄明白怎么实现的),我这次面试结束后,发觉ARM还有网路基础这块还是差的很多。

全部评论

相关推荐

头像
不愿透露姓名的神秘牛友
04-29 16:15
华勤 热设计 14000815 硕士985
点赞 评论 收藏
转发
头像
不愿透露姓名的神秘牛友
04-29 16:13
汇川 热设计 38W 硕士985
点赞 评论 收藏
转发
点赞 9 评论
分享
牛客网
牛客企业服务