全站数据
8 4 2 0 5 8 1

int中断如何进入内核

小旭考研 | 简单学习,快乐成才!         
问题更新日期:2024-10-31 21:26:06

问题描述

int中断如何进入内核希望能解答下
精选答案
最佳答案

int中断,这样进入内核:

应用程序调用系统调用,最终都是syscall,syscall实际上是发出一个int 80的软中断,并给出系统调用号。

内核响应80中断,调入syscall中断处理函数,然后调用GET_THREAD_INFO(%ebp),获取thread_info结构体,就拿到了内核栈空间。

此时已经进入内核栈,保存应用程序栈空间,返回时恢复使用。

后续根据系统调用号进入不同的处理函数进行处理。