说明:此文为粉丝提供的腾讯 C++ 后端开发的实习生面试面经。
Linux
- Linux 进程调度算法
- Linux 进程地址空间分布
- Linux 内存管理方法、页面置换算法、逻辑地址和物理地址的转换
- 在一台内存为 2G 的机器上,malloc(20G)会怎么样?new 20G 呢?
- 进程和线程的区别,进程间通信方式
- 解释孤儿进程,僵死进程,惊群效应
- IO 模型,Select、Epoll 和 Poll 的区别
- ET 和 LT 的区别,需要注意什么
计算机网络
- TCP 三次握手四次挥手状态图,对应的 POSIX API,为什么要三次握手,两次可以吗?
- TIME_WAIT 的作用
- TCP 和 UDP 区别,TCP 如何保证可靠性,对方是否存活(心跳检测)
- 流量控制,拥塞控制
- SYN Flood 攻击
- HTTP 状态码
- Libevent 如何处理 IO 事件,信号事件,和定时事件
数据结构
- 布隆过滤器
- 智能指针
- hash 表解决冲突的方法
- 红黑树性质
- redis 中的数据结构
- 跳表插入删除过程
编程题
- 判断大小端,int 的大端转小端
- 去掉字符串开头和末尾的空格
- 大数相