整个系统调用的过程可以总结如下: 1. 执行用户程序(如:fork)
2. 根据glibc中的函数实现,取得系统调用号并执行int $0x80产生中断。 3. 进行地址空间的转换和堆栈的切换,执行SAVE_ALL。(进行内核模式) 4. 进行中断处理,根据系统调用表调用内核函数。 5. 执行内核函数。 6. 执行RESTORE_ALL并返回用户模式 了解系统调用的实现及调用过程,我们可以根据自己的需要来对内核的系统调用作修改或添加。
本版积分规则 发表回复 回帖并转播 回帖后跳转到最后一页
QQ咨询|关于我们|Archiver|手机版|小黑屋|( 辽ICP备15012455号-4 ) Powered by 期权论坛 X3.2 © 2001-2016 期权工具网&期权论坛 Inc.
下载期权论坛手机APP