信锐技术(1面)

1.main函数在执行之前都干了什么

2.为什么要使用平衡二叉树,怎么就平衡了,平衡了为什么就速度快呢

3.使用管道和套接字有什么信号是一定要处理的

4.进程通信方式

5.hash冲突怎么解决

6.hash一直冲突怎么解决

7.malloc一次能申请多大的内存控制

8.为什么有虚拟内存,进程使用虚拟内存好处

9.虚拟内存和物理内存是怎么映射的

10.linux中内存水线是什么
11.为什么两个结构体里面的成员是一样的,但是使用sizeof的时候大小不一样

12.一个Int 一个double,32位系统他怎么对齐

13.strcpy的缺陷

14.strncpy安全吗

15.什么是僵尸进程

16.怎么避免僵尸进程

17.使用管道和套接字有什么信号是一定要处理的
18.浏览器中输入URL会涉及到什么报文(给他讲了一遍输入url到显示界面的过程)

19.为什么握手是3次 挥手4次

20.C语言编译过程(4个阶段)

21.C++内存模型

22.堆和栈的区别

23.linux启动过程
24.实习具体都干了啥,说了封装数据模块 (一直追问,怎么封装的,你封装的应该比较底层了,有啥原则)

25.你怎么设计一个项目,或者设计一个模块(说了软件设计的6的原则)

26.遇到的困难,怎么解决的(我说了那个音视频同步,摄像头25帧,设置了60帧,然后一直追问怎么弄的,怎么检测出来问题的)
全部评论

相关推荐

基本上都是在聊天,问各种思路,八股文不多。感觉时间过的很快,一下50分钟过去了。把一个基础问题说错了,不知道结果咋样了,再然后就是他是纯C++公司,大部分时间问我linux内核的东西1.你和照片长的不像 (我说商家P图的)2.自我介绍3.研究的什么方向,解释了很久,我的算法了啥的(我研究的是操作系统混合任务关键算法)4.有没有发论文,有没有啥成果(我说sci正在审稿,然后发了软著)5.对linux了解多少,对linux内核或者Linux系统哪里比较熟悉(我说内核驱动还有系统开发都比较熟悉,然后问更熟悉那个,我就说了现在是应用方面吧)6.问我linux内核驱动是怎么设计的(我说有3种方式,普通传统的软硬不分离一起写古老的版本,然后平台设备模型,还有设备树)7.你认为3种方式哪种好,(分别分析了优缺点,然后说最后一种好,也有可扩展性啥的)8.你觉得可扩展性是什么,怎么做到,你有什么优点9.设备树怎么就和软件匹配上了(我说了设备树本质就是个文本文件通过里面的属性匹配的,包括of_match_table啥的)10.又问设备树是怎么兼容那么多硬件平台的,写一个i2c设备驱动流程11.项目遇到了哪些问题,怎么解决的,怎么找到的,哪个项目学到的最多,为什么(我说的很详细,摄像头帧数不匹配啥的,排查是看手册,中间还考虑了av_compare_ts的函数api,查看了他们的返回值了,还试了修改缓冲区了啥的等等,最后就是查手册看到的那个参数,,,甚至还问怎么想到的看这个)12.场景题:假如客户端和服务器连接好着,过了几天突然服务器坏了,你觉得是哪里的问题怎么排查(我说了查看网络,查看日志,检测数据,管理软件,重启等方法)13.然后他就说假如日志看不懂,别的也没问题,我怎么还知道这个进程到底死没死(我就说了ps  top htop等命令可以看)14.然后接着问,假如我还想知道,这个进程他都有什么状态(我说了有运行态,停止态等,在PS命令里面的表现就是一个R T 等等大写字母表示)15.假如处于运行,怎么查看他在跑什么逻辑(我说这个我不是特别了解,就是一般也是通过命令查看,具体命令没记住)16.函数内部静态局部变量,和全局静态变量的区别17.如果他们都作为返回值会有什么问题,(然后我说了半天局部的会有问题,但是他好像没听懂以为我说的全局的,然后问我那局部的呢,我就又说了一遍局部的,因为作用域的问题可能函数调用完了就释放了,中间还扯了半天static的特点啥的,,但是算起来全局作为返回值应该是说错了,,)
点赞 评论 收藏
分享
评论
点赞
1
分享

创作者周榜

更多
牛客网
牛客企业服务