蔚来 C++开发 一面(50mins)

蔚来是三个人一起面试 (1)论文情况 (2)海康测试详细询问做了什么 怎么去做测试的,shell脚本是怎么运行的,详细问了各种业务知识 (3)问了问安全引擎相关知识,现在应该是odex为啥你还是dex解析,中途换了一个比较懂的人详细问了问逆向的过程 (4)valgrind的检测方法,如何设计一个内存泄露检测的工具?从内存池角度分析 (5)基于什么目的做的项目 (6)Linux的底层剪裁有了解吗? (7)介绍一个c++11的东西,我选了lambda表达式 (8)qt如何在信号和槽注册里面不支持的格式 (9)针对项目里面说了一些多线程的内容,项目里如何实现多线程同步的,音视频上锁机制 (10)显示视频有没有跨线程,如何进行跨线程操作 (11)tcp/ip的了解程度,报文编写清楚吗 (12)局域网如何判断两个主机连接正常? (13)cmake了解多少 (14)软件系统性能怎么去关注 (15)Linux指令,怎么看cpu使用率,说了一点top指令相关内容,还有ps啥的 (16)wireshark抓包了解程度 (17)对公司的理解程度 反问 业务做什么?做can总线的,偏嵌入式,和网络关系比较大,和音视频关系不大。

前面面试官提到了一个内存泄露检测工具的制作,那您觉得应该从什么角度思考呢?网上很多资料自己去看。

面完隔天感谢信,主要感觉好像车企C++都对网络那部分要求掌握比较高,要针对性复习一下。

全部评论

相关推荐

技术栈:c++,shell,TCP/UDP,docker,cmake, 网络编程, 系统编程项目简介: 是一个基于 IO多路复用 的 安全可靠的 UDP 文本传输框架。 1. docker 模块: 使用 docker 构建整个 safe-udp 项目环境,通过 dockerfile 安装 glog、cmake 等依赖项,并使用 Shell 编写容器操作脚本,以实现项目构建流程的自动化和部署的便利性。2. UDP_Transport 模块:    - 封装应用层 UDP Data Segment: 序列号、确认号、ACK、FIN等字段;并封装 序列化/反序列化 接口供上层调用。  - 根据 RFC规范 加权计算 平滑 RTT 和超时重传 RTO ,并与 IO多路复用(select) 结合设置 超时逻辑,监听客户端的响应。  - 封装 Sliding Window 和 Buffer,跟踪和管理 发送/接收数据 包的缓冲区,并设置相应索引指针,处理接收到 ACK逻辑。  - 动态调节接收/拥塞窗口大小,自适应开启 慢启动、拥塞避免、拥塞发生、超时重传、快恢复 功能,并计算 cwnd、ssthresh 的值。  - 封装统计模块,统计慢启动、拥塞避免、超时重传 的数据包量和比率,反馈网络性能和行为,利于后续网络服务优化。  - 动态模拟 网络丢包和时延 状况, 校验 safe-udp 的可靠性和容错性(重传机制) 。3. 项目管理和构建: 使用 cmake 作为项目的构建系统,构建 udp_tansport 动态库,供第三方模块调用;并通过 git ,clang-format等工具,管理仓库代码。4. 功能测试和验证模块:构建 server、client 测试程序,验证safe-udp 可靠传输功能;并编写 diff.sh 脚本判断收发的文本内容是否完备          
点赞 评论 收藏
分享
评论
3
13
分享

创作者周榜

更多
牛客网
牛客企业服务