我正在尝试阅读Linux源代码(2.6.11)
在异常处理程序中,在entry.s,error_code:
movl $(__USER_DS), %ecx movl %ecx, %ds movl %ecx, %es
我不知道为什么在这里加载用户数据段.由于它应该进入在内核模式下运行的异常处理程序代码,因此选择器应该是__KERNEL_DS.
我检查了其他版本的代码,他们在这个地方也做了同样的事情.
linux data-segment exceptionhandler
data-segment ×1
exceptionhandler ×1
linux ×1