阅读:1994回复:3
一蝶小菜,请品尝
请问 #pragma alloc_text(INIT,DriverEntry) 有什么作用?
驱动程序里有很多函数要放在指定的代码、数据段吗?怎么知道那些函数应放在那个段呢? (!+@)x |
|
|
沙发#
发布于:2001-07-02 13:03
#pragma alloc_text(INIT, XXXXXX)
该语句将XXXXXX函数放入INIT段。当函数返回后,系统将释放掉它占用的内存,以节省内存。 由于 DriverEntry 只是在 Driver 装载初始化时运行一次,以后不再需要,所以可以放入INIT段。 #pragma alloc_text(PAGE, XXXXXX) 语句把XXXXXX函数的代码放到可分页内存中。 如果函数确定不会被CPU执行在高于PASSIVE_LEVEL的IRQL上时,就可以放入PAGE段。 如果函数有可能被CPU执行在高于PASSIVE_LEVEL的IRQL上时,就必须放到非分页内存中。 |
|
板凳#
发布于:2001-07-02 17:26
thanks a lot!
|
|
|
地板#
发布于:2001-07-03 08:11
#pragma alloc_text(PAGE, XXXXXX)
可为什么我把中断服务历程也page了,即放到了分页内存,也没出错呢??? |
|