嵌入式面试必刷题单大揭秘
本篇为收集的技术面的面经以及自己经历的补充
共分为两部分
- 第一部分,网络上汇总的面经.
- 第二部分,鄙人亲自经历的面经汇总.(持续更新)
所有问题均很重要 排名不代表重要性
第一部分:进程与线程
基础概念
- 什么是进程?
- 什么是线程?
- 进程和线程有什么区别?
- 为什么线程要共享进程地址空间?
- 线程共享进程的哪些资源?
- 线程不共享哪些资源?
- 进程为什么需要独立地址空间?
多进程 / 多线程
- 多进程的优点是什么?
- 多进程的缺点是什么?
- 多线程的优点是什么?
- 多线程的缺点是什么?
- 多进程和多线程的使用场景分别是什么?
- 什么时候使用多进程?
- 什么时候使用多线程?
进程通信 IPC
- 什么是 IPC(进程间通信)?
- Linux 常见的 IPC 方式有哪些?
- 管道(Pipe)是什么?有什么特点?
- 管道可以用于哪些进程通信?
- 什么是命名管道(FIFO)?
- 消息队列是什么?
- 信号(Signal)是什么?
- 共享内存是什么?
- 为什么共享内存是最快的 IPC?
- 信号量(Semaphore)是什么?
- Socket 是否可以用于进程通信?
线程同步
- 什么是线程同步?
- 什么是线程互斥?
- 线程同步和线程互斥有什么区别?
- 常见的线程同步方式有哪些?
- 什么是互斥锁(Mutex)?
- 什么是条件变量(Condition Variable)?
- 什么是读写锁(Read Write Lock)?
- 什么是信号量(Semaphore)?
- 什么是自旋锁(Spinlock)?
- 什么是线程本地存储(TLS)?
并发相关概念
- 什么是并发(Concurrency)?
- 什么是并行(Parallelism)?
- 什么是同步(Synchronous)?
- 什么是异步(Asynchronous)?
- 什么是互斥(Mutex)?
- 什么是阻塞(Blocking)?
- 什么是非阻塞(Non-blocking)?
- 同步一定是阻塞的吗?
- 阻塞一定是同步的吗?
进程内存模型
- 什么是进程地址空间?
- 进程的内存结构有哪些部分?
- 什么是连续空间模型?
- 什么是分段模型?
- 什么是分页模型?
- 什么是段页式内存管理?
- 为什么操作系统采用分页机制?
进程 / 线程状态
- 进程有哪些状态?
- 什么是就绪状态(Ready)?
- 什么是运行状态(Running)?
- 什么是阻塞状态(Blocked)?
- 进程什么时候会进入阻塞状态?
- 阻塞状态什么时候会转为就绪状态?
父进程与子进程
- 什么是父进程?
- 什么是子进程?
- fork() 的作用是什么?
- fork() 调用后发生了什么?
- 父进程和子进程的返回值分别是什么?
- 父进程和子进程的地址空间关系是什么?
- 父进程和子进程共享哪些资源?
上下文
- 什么是进程上下文(Process Context)?
- 什么是线程上下文(Thread Context)?
- 什么是中断上下文(Interrupt Context)?
- 进程上下文切换发生在什么时候?
- 中断上下文和进程上下文有什么区别?
线程数量
- 一个进程最多可以创建多少线程?
- 线程数量受哪些因素限制?
- 为什么线程过多会降低性能?
特殊进程
- 什么是孤儿进程?
- 什么是僵尸进程?
- 什么是守护进程?
- 僵尸进程是如何产生的?
- 僵尸进程有什么危害?
- 如何避免僵尸进程?
守护进程
- 什么是守护进程?
- 守护进程有哪些特点?
- 如何创建一个守护进程?
- 为什么守护进程要调用 setsid()?
僵尸进程处理
- wait() 系统调用的作用是什么?
- waitpid() 和 wait() 的区别是什么?
- 如何正确回收子进程资源?
第二部分 C/C++ 面试题
- C 和 C++ 的主要区别是什么?
- C++ 为什么支持面向对象编程?
- 什么是类和对象?
- 什么是继承?
- 什么是多态?
- 什么是函数重载?
- 什么是运算符重载?
- 什么是模板(Template)?
- 什么是异常处理(Exception)?
- C++ 为什么需要命名空间(namespace)?
- C++ 的引用是什么?
- 引用和指针有什么区别?
- C++ 有哪些类型转换方式?
更多问题可以看指南,有详细的解答和示例。
嵌入式软件工程师面试完全指南
面经一共32篇文章,12w+字数,包含全部最新的面试必问考点,4.7w+同学学习,3300+订阅,非常适合在找工作面经薄弱的同学,销量即是口碑,提前订阅提前享受,持续更新中。
原帖链接:https://www.nowcoder.com/creation/manager/columnDetail/MJNwoM
