小编Hol*_*mes的帖子

为什么linux在异常处理程序的序言中将数据段设置为__USER_DS

我正在尝试阅读Linux源代码(2.6.11)

在异常处理程序中,在entry.s,error_code:

movl $(__USER_DS), %ecx
movl %ecx, %ds
movl %ecx, %es
Run Code Online (Sandbox Code Playgroud)

我不知道为什么在这里加载用户数据段.由于它应该进入在内核模式下运行的异常处理程序代码,因此选择器应该是__KERNEL_DS.

我检查了其他版本的代码,他们在这个地方也做了同样的事情.

linux data-segment exceptionhandler

5
推荐指数
1
解决办法
214
查看次数

标签 统计

data-segment ×1

exceptionhandler ×1

linux ×1