个人2022秋招知识点总结、C++/Linux

个人求职方向涉及了嵌入式、后端基础架构、Linux系统层开发(内核)。拿到了大厂的offer,具体我就不透露了。
之前一直看牛客老哥们的面经分享,所以我也整理了一些我认为比较重要的C++和Linux的知识点给大家参考。
秋招结束,完结撒花

C++

  • makefile问题,如果你的岗位是Linux下的C++,这个务必要会,并且要真正敲过一遍
  • 常量与引用
  • 右值引用有什么用
  • 转发、完美转发、万能引用、std::move
  • 结构体对齐,如何设置和取消结构体对齐
  • 函数参入传入过程,什么是寄存器传参和内存传参
  • 堆、栈。各自保存什么?栈保存的哪些东西?
  • 内存分为几个段
  • 虚函数表,虚函数指针,虚函数各自放在哪个段中
  • 空类大小是多少,空结构体大小是多少
  • 什么是多态,如何实现的?
  • RTTI和RAII是什么
  • 智能指针:为何不用auto_ptr?有哪些弊端?shared_ptr如何设计的?是否线程安全?
  • STL相关
    • sort如何设计的
    • map和unordered_map底层实现
    • 自己实现一个vector
  • #define和const区别
  • #define和inline区别
  • NULL和nullptr区别
  • const与constexpr区别
  • __attribute__关键字
  • C如何调用C++,C++如何调用C
  • struct和class区别
  • 编译过程
  • gdb使用
  • 初始化列表与构造函数区别
  • 函数指针如何指向类的静态方法和动态方法
  • 如何暴露static函数
  • 临时对象销毁时机,可能引发的问题
  • 重载操作符
  • C++关键字
  • asmlinkage关键字
  • 萃取、元编程
  • 不用final如何设计不能被继承的类
  • 无锁编程如何实现
  • void (*f[3])(int)是什么意思
  • int(*fun())()是什么意思
  • 函数传参和返回值,调用哪个构造函数?
  • 编译器默认生成的4个成员函数
  • C++11和C++14新特性
  • 一个容器能用上 for( : )循环,需要做什么
  • 多重继承的问题,如果使用多重继承,那么二义性如何解决?
  • 析构函数为什么要是虚函数,构造函数为什么不能是虚函数
  • 静态多态和动态多态
  • 如果用空指针调用成员函数,会怎么样
  • 什么是类型安全
  • 数组名也是指针,那么它和指针有什么不一样?可能造成什么问题?
  • 为什么dynamic_cast需要类中有虚函数?
  • 抽象类和普通类区别,如何定义抽象类?
  • 如何实现无锁队列
  • 深拷贝、潜拷贝
  • 模板全特化、偏特化
  • 如何在mian函数之前,之后,运行特定的代码
  • 如何定位段错误、如何定位内存泄漏
  • 如何实现一个内存池?

Linux&操作系统

  • MAN手册使用
  • Linux信号、不可忽略的信号
  • 进程同步机制、线程同步机制
  • 进程调度算法、线程调度机制
  • CFS完全公平调度、时间片轮转调度
  • 进程调度、线程调度的区别与损耗对比
  • 进程退出的几方式
  • 陷入内核态的途径有哪些
  • 进程状态模型、Linux几种进程状态
  • 僵尸进程、孤儿进程、守护进程等
  • 缺页中断发生的时机,处理办法(kmalloc会发生缺页中断吗、vmalloc会发生缺页中断吗)
  • 死锁必要条件
  • 内存管理问题(段、页、段页式、slab、ptmalloc)
  • fork、vfork、clone以及写时拷贝
  • Linux 5种IO模型
  • Linux 文本处理三剑客awk、grep、sed
  • Linux 重定向、软连接、硬链接、inode
  • Linux 7种文件类型
  • 常用命令考查(vim、ls、cd、pwd、df、top、ps)
  • 系统调用过程(以read为例)
  • 中断过程、判别中断+各种锁的使用情况,以及可能出现的问题
  • malloc申请40G、0字节 分别会发生什么
  • 虚拟内存(MMU、TLB)
  • Linux 信号实现机制
  • 利用/proc目录计算CPU利用率
  • select、poll、epoll特点、区别

总结

每个问题面试官都有可能深挖,这样光背诵八股文是完全不够的。每个问题最好问自己三个问题:

  1. 为什么要这样用?你会怎么设计?
  2. 这样的好处有哪些,缺点有哪些,特点有哪些,适合做什么。
  3. 是否在实际项目中用过?

以上三个问题只是非常典型的深入下去的问题,如果没有准备,一看就知道你是背诵的,没有实际经验。

差不多就这么多啦!!!

#面经##C/C++##学习路径#
全部评论
求一个c++的详解。😊
2 回复 分享
发布于 2021-09-23 19:31
点赞 回复 分享
发布于 2021-09-23 20:08
牛客的帖子永远都是,收藏大于点赞
点赞 回复 分享
发布于 2021-09-23 21:01
真的牛牛皮皮
点赞 回复 分享
发布于 2021-09-23 21:13
强啊
点赞 回复 分享
发布于 2021-09-23 22:14
厉害啊真的膜拜,我也过了大厂,但是没有楼主这么精通
点赞 回复 分享
发布于 2021-09-28 19:10
M
点赞 回复 分享
发布于 2021-10-01 18:56

相关推荐

1. 嵌入式实现多任务处理?2. 在STM32中配置ADC进行模拟信号采集?3. UART通信中的数据帧结构是什么样的?4. 嵌入式实现看门狗定时器?5. 在RT-Thread中使用消息队列进行任务间通信?6. SPI与I2C的时序特征有哪些不同?7. 嵌入式实现动态内存分配?8. 在STM32中配置定时器进行周期性中断?9. 嵌入式实现任务优先级调度?10. 在FreeRTOS中实现任务的延时功能?11. 嵌入式处理外部中断?12. 在STM32中使用DMA进行数据传输?13. 嵌入式实现低功耗睡眠模式?14. 在RTOS中使用互斥量保护共享资源?15. 嵌入式实现串口通信协议?16. 在STM32中配置GPIO引脚的复用功能?17. 实现数据的CRC校验?18. 嵌入式在FreeRTOS中实现任务的优先级继承?19. 进行固件版本管理?20. 嵌入式在STM32中配置PWM输出信号?21. 实现实时数据监控?22. 在RT-Thread中使用事件组进行任务同步?23. 嵌入式实现网络通信协议栈?24. 在STM32中使用外部存储器(如SD卡)?25. 实现数据采集的滤波算法?26. 嵌入式在FreeRTOS中实现软件定时器?27. 进行系统时钟的精确配置?28. 嵌入式在STM32中配置和使用CAN总线?29. 进行设备驱动的开发?30. 在RT-Thread中实现内存池的管理?答案整理在面经中  c++/嵌入式面经专栏-牛客网 https://www.nowcoder.com/creation/manager/columnDetail/MJNwoM
点赞 评论 收藏
分享
评论
48
289
分享
牛客网
牛客企业服务