[视频作者] 代码会说话
[视频时长] 26:29
[视频类型] 校园学习
1. 应用程序通过调用 C 库的包装函数来发起系统调用 2. 包装函数负责将函数复制到指定的寄存器用于传参 3. 系统调用编号需要放在 (%rax) 寄存器(所有系统调用进入内核方式相同) 4. 包装函数执行系统调用中断指令 `syscall`(或 `sysenter` ,32 位对应为 `int 0x80`) 5. 处理器产生中断从用户太切换到内核态 6. 中断处理程序 (`arch/x86/entry/entry_64.S`) 开始执行. 7. 调用系统返回值保存在 %rax