阅读:1095回复:6
问问题咯,关于"Zw"和"Nt
2K下”Zw“开头的函数的实现其实就是用int 2eh去调用”Nt“开头的,而int 2eh是一个从ring3到ring0的中断门。问
1,”Zw“和”Nt“的真实参数和功能及返回是一样的哈? 2,在ring0也可以调用”Zw“的哈? 3,”Zw“其实就是给”Nt“裹了一个可以给ring3调用的皮而已的哈? ntoskrnl还有很多什么”Ps“”Rtl“开头的哈,那些不是用int 2eh调用的,但也在ntdll.dll里有它们的皮,对不对哈? 或者说ntdll就是ntoskrnl的一个ring3的皮,对不对哈? [编辑 - 6/26/02 by Koms Bomb] |
|
|
沙发#
发布于:2002-06-26 15:53
大兄弟,看我的ExAllocatePool帖子,急啊
|
|
|
板凳#
发布于:2002-06-26 15:51
ZW*的函数可在Native API中找到的
------------------------------------------------------------------------- 有一半多的Native API未在ntoskrnl.exe导出。 可我怎知道有什么NT*函数呢? ------------------------------------------------------------------------------ 从导出表中搜呗。在softice中用exp ntoskrnl!看 |
|
地板#
发布于:2002-06-26 15:09
ZW*的函数可在Native API中找到的
可我怎知道有什么NT*函数呢? |
|
地下室#
发布于:2002-06-26 12:12
ntdll.dll导出的Zw*与Nt*实际指向同一函数。2000下此类函数利用int2e进入ring0,由KiSystemService分发服务。
http://www.driverdevelop.com/forum/html_15137.html?1025064700 ntoskrnl.exe导出的Nt*是为内核程序准备的,他们没有外包装,一开始就是函数的实现;Zw*进行了包装,它们的实质是用int2e重进入内核(对NT/2000而言),让KiSystemService分发,最后一般仍会进入同名的Nt*函数(若有的话)。 |
|
5楼#
发布于:2002-06-26 10:15
大兄弟,我都知道,但我问的问题我不知道 |
|
|
6楼#
发布于:2002-06-26 10:07
2K下”Zw“开头的函数的实现其实就是用int 2eh去调用”Nt“开头的,而int 2eh是一个从ring3到ring0的中断门。问 Zw:Misc... Nt:Nt Native... Rtl:something are marcos,something are function calls. |
|
|