ReactOS中Ring 3的API是如何进入Ring0的?

Moderators: Lone_Rifle, unlinux

Post Reply
joshua0137
Posts: 2
Joined: Wed Mar 30, 2011 9:52 am

ReactOS中Ring 3的API是如何进入Ring0的?

Post by joshua0137 » Thu Nov 22, 2012 5:18 am

阅读了一些网文,有说使用 int 0x2E的,也有说使用sysenter指令的,但我搜ROS的源码都没发现。
哪位高手知道的话告诉一声,谢谢!

hto
Developer
Posts: 2193
Joined: Sun Oct 01, 2006 3:43 pm

Post by hto » Sat Nov 24, 2012 3:31 am

ReactOS uses sysenter (function KiFastSystemCall in dll/ntdll/dispatch/i386/dispatch.S) if available (see PspLookupKernelUserEntryPoints in ntoskrnl/ps/psmgr.c). Otherwise, it uses int 0x2E (KiIntSystemCall).

See also stuff in ntoskrnl/ntdll.S, ntoskrnl/include/sysfuncs.h, include/asm/asm.inc, include/asm/syscalls.inc

joshua0137
Posts: 2
Joined: Wed Mar 30, 2011 9:52 am

Re: ReactOS中Ring 3的API是如何进入Ring0的?

Post by joshua0137 » Tue Dec 11, 2012 2:03 am

谢谢你的回答,有空我按照你给的路径看一下代码

Post Reply

Who is online

Users browsing this forum: No registered users and 3 guests