进程管理
进程和线程
什么是进程,线程,彼此有什么区别
多进程、多线程同步(通讯)的方法
互斥锁和条件变量
项目相关:多线程支持多输入
多进程、多线程的优缺点
用户线程和内核线程的区别
父进程、子进程的关系以及区别
什么时候用进程,什么时候用线程
进程线程的状态转换图 什么时候阻塞,什么时候就绪
什么是进程上下文、中断上下文
一个进程可以创建多少线程,和什么有关
孤儿进程、僵尸进程、守护进程的概念
基本概念
正确处理僵尸进程的方法
并发,同步,异步,互斥,阻塞,非阻塞的理解
什么是线程同步和互斥
并发,同步,异步,互斥,阻塞,非阻塞的理解
线程同步与阻塞的关系?同步一定阻塞吗?阻塞一定同步吗?
内存管理
内存管理相关
概念
进程的空间模型
堆和栈的区别
什么是堆,栈,内存泄漏和内存溢出?
虚拟内存,虚拟地址与物理地址的转换
内存管理方式
内存碎片
cache替换算法
其它
Linux内核相关
用户空间与内核通信方式有哪些?
系统调用的作用
内核态,用户态的区别
Bootloader 内核 根文件的关系
为什么需要BootLoader
Linux内核同步方式总结
为什么自旋锁不能睡眠而在拥有信号量时就可以?
Bootloader多数有两个阶段的启动过程:
linux下检查内存状态的命令
Linux内核的组成
系统调用read()/write(),内核具体做了哪些事情
其它操作系统相关常见问题
大小端的区别以及各自的优点,哪种时候用
一个程序从开始运行到结束的完整过程(四个过程)
死锁的原因、条件 创建一个死锁,以及如何预防
硬链接与软链接的区别
中断和异常的区别
中断怎么发生,中断处理大概流程
计算机中,32bit与64bit有什么区别
Linux 操作系统挂起、休眠、关机相关命令
网络编程
TCP UDP
TCP、UDP的区别
TCP为什么是可靠连接
TCP、UDP的优缺点
TCP UDP适用场景
典型网络模型,简单说说有哪些
三次握手、四次挥手
什么是三次握手
什么是四次挥手
为什么三次握手中客户端还要发送一次确认呢?可以二次握手吗?
为什么服务端易受到SYN攻击?
为什么客户端最后还要等待2MSL?
为什么建立连接是三次握手,关闭连接确是四次挥手呢?
socket编程
项目相关:mjpg-streamer客户端
排序算法
硬件相关
单片机常见题
请说明总线接口UART、I2C、SPI、USB的异同点(串/并、速度、全/半双工、总线拓扑等)
总线比较
什么是异步串口和同步串口
I2C时序图
CPU内部结构
波特率是什么,为什么双方波特率要相同,高低波特率有什么区别
IO口工作方式:上拉输入 下拉输入 推挽输出 开漏输出
扇区 块 页 簇的概念
CPU 内存 虚拟内存 磁盘/硬盘 的关系
ROM RAM的概念浅析
ARM结构处理器简析
arm和dsp有什么区别
简述处理器在读内存的过程中,CPU核、cache、MMU如何协同工作?画出CPU核、cache、MMU、内存之间的关系示意图加以说明