图解系统 硬件结构 CPU 是如何执行程序的? 磁盘比内存慢几万倍? 如何写出让 CPU 跑得更快的代码? CPU 缓存一致性 CPU 是如何执行任务的? 什么是软中断? 为什么 0.1 + 0.2 不等于 0.3? 操作系统结构 Linux 内核 vs Windows 内核 内存管理 为什么要有虚拟内存? malloc 是如何分配内存的? 内存满了,会发生什么? 在 4GB 物理内存的机器上,申请 8G 内存会怎么样? 如何避免预读失效和缓存污染的问题? 深入理解 Linux 虚拟内存管理 深入理解 Linux 物理内存管理 进程管理 进程、线程基础知识 进程间有哪些通信方式? 多线程冲突了怎么办? 怎么避免死锁? 什么是悲观锁、乐观锁? 一个进程最多可以创建多少个线程? 线程崩溃了,进程也会崩溃吗? 调度算法 进程调度页面置换磁盘调度算法 文件系统 文件系统全家桶 进程写文件时,进程发生了崩溃,已写入的数据会丢失吗? 设备管理 键盘敲入 A 字母时,操作系统期间发生了什么? 网络系统 什么是零拷贝? IO 多路复用:selectpollepoll 高性能网络模式:Reactor 和 Proactor 什么是一致性哈希? Linux命令 如何查看网络的性能指标? 如何从日志分析 PV、UV? 学习心得 操作系统怎么学? 画图经验分享