嵌入式岗位
- 硬件工程师/电子工程师
- 单片机开发/STM32开发
- C++开发/QT开发
- BSP驱动开发
- Linux应用开发
需要掌握的知识
C 语言:《C和指针》
数据结构
文件IO:《UNIX环境高级编程》
多并发:《UNIX网络编程》
- 进程管理、进程相关命令、进程相关API、守护进程
- 线程、线程的同步与互斥、进程间通信
网络编程:《TCP/IP详解卷一:协议》
- 网络基础、TCP编程、并发服务器、UDP编程、IO多路复用
- TCP/IP协议原理、广播、组播、本地通信
C++:《C++高质量编程指南》《C++ Primer》《C++ 编程思想》
C++和C的差异部分:
1. C到C++
2. 类与对象
3. 组合、继承、多态
4. 异常
5. 模板
6. STL标准库模板
7. 多线程
8. 网络开发
底层:《深入理解计算机系统》《Linux内核完全剖析》《Linux内核设计与实现》
内核精通一两个模块