sujunjie 发表于 2004-9-16 14:45:21

门描述符

请问:#define _set_gate(gate_addr,type,dpl,addr) \
__asm__ ( "movw %%dx,%%ax\n\t" \
"movw %0,%%dx\n\t" \
"movl %%eax,%1\n\t" \
"movl %%edx,%2" \
: \
: "i" ((short) (0x8000+(dpl<<13)+(type<< 8 ))), \
"o" (*((char *) (gate_addr))), \
"o" (*(4+(char *) (gate_addr))), \
"d" ((char *) (addr)), "a" (0x00080000))

这段LINUX 0.11 MAIN.C里的代码怎么理解? %0,%1是否代表参数?
何为门描述符?
多谢。

sd_2001 发表于 2004-10-17 20:17:35

这是gcc混合汇编的特殊语法。

形式如下:

__asm__(
"汇编代码"
:"输出参数限制"
:"输入参数限制"
)

详细的内容,有前辈的贴子,

http://www.linuxfans.org/nuke/modules.php?name=Forums&file=viewtopic&t=77339

有关门描述符的问题, 还是找本保护模式编程的书看一下.
页: [1]
查看完整版本: 门描述符