Posts
All the articles I've posted.
-
进程调度算法详解:从FCFS到多级反馈队列
从 FCFS 到多级反馈队列的六种调度算法演进,MLFQ 通过边运行边学习的动态优先级实现通用系统的最佳调度。
-
进程、线程、协程——三者的本质区别与适用场景
进程是资源分配的最小单位,线程是 CPU 调度的最小单位,协程在用户态调度实现极致轻量的并发模型。
-
虚拟内存与物理内存——操作系统最优雅的"骗局
虚拟内存通过 MMU 加页表加 TLB 加缺页中断让每个进程拥有独占内存的幻觉,同时实现隔离与高效利用。
-
线程间通讯方式:五种同步机制的原理与选型
线程间通讯的本质挑战不是传递数据而是安全地访问共享内存,五种同步机制各有适用临界区长度。
-
用户态和内核态:CPU权限隔离的底层原理
CPU 通过 Ring 0/3 硬件特权级实现用户态与内核态隔离,系统调用是跨越特权级的唯一合法桥梁。
-
死锁的四个条件与银行家算法
死锁是四个条件同时满足的必然结果,破坏任一条件即可免疫,资源有序分配是最常用的工程实践。
-
操作系统内存不足处理:从kswapd到OOM Killer的完整链条
从缺页中断到 kswapd 后台回收再到 OOM Killer 的完整内存回收递进链条,揭示了 Linux 内存管理的层层兜底机制。
-
堆和栈的区别——不只是"一个快一个慢
从内存布局到分配原理全面对比堆与栈:栈由编译器自动管理高效有序,堆由程序员手动管理灵活但易碎片。