看了这段汇编代码,我好困惑,请高手指教
时空隧道 2002-05-29 01:16:28 以下是在取LDT地址的一段代码.
push ebx
sgdt [esp-2]
pop ebx ;此处该是sgdt的地址吧
sldt ax ;取Ldt地址
and eax,0fff8h ;
add ebx,eax
mov eax,[ebx+2]
mov dl,[ebx+7]
shl edx,24
and eax,0ffffffh ;
or eax,edx ;eax存的是ldt地址
我有个问题是gdt中存放的是物理地址还是该进程的线性地址.如果是线性地址,那
mov eax,[ebx+2]也该是该进程的线性地址空间,难道全局描述符在每个进程的线性地址中都有一个拷贝.如果是物理地址.
mov eax,[ebx+2]肯定也不能访问到实际物理内存ebx+2中的内容呀.
请高手指点,感谢,不够请说明加分的方法.