系统调用的完整旅程:一行代码如何跨越用户态和内核态的鸿沟

一行代码的千里之行 当你写下 write(1, "Hello, World!\n", 14) 这行代码时,你实际上正在发起一场跨越两个世界的旅行。这行代码将穿越CPU的特权级边界,从你熟悉的用户空间进入神秘的内核空间,完成一次完整的系统调用。 ...

15 min · 7243 words

虚拟内存管理的底层机制:从页表遍历到TLB优化的完整技术解析

引言 当你在Linux系统中执行top命令时,看到的VIRT和RES两列数字之间往往存在巨大差异。一个简单的Chrome浏览器进程可能显示VIRT为10GB,而RES仅有200MB。这种差异的背后,是操作系统在硬件支持下构建的一套精巧机制——虚拟内存管理。 ...

15 min · 7069 words