就是象DOS时的INT的东西。98下VXD用VTOOLS开发包,也有EXEC_VXD_INT相对应。那么2000或XP下到底还有没有软件中断呢?如果有对应的函数是什么呢?大家帮帮我吧,急用啊
回复(17) 2004-01-16 15:44 来自版块 - 内核编程
表情
hummingbird哇,楼上这位火气好大(2004-02-13 13:05)
Kerry80你的狗驱动是什么样的?注册了中断服务吗? VDDSimulateInterrupt是用来在模拟Dos的VM中用的(2004-02-13 09:44)
wowocock建议不要用调用门之类的方法进RING0,我测试过,同样的代码,在调用门方法的时候,很容易使系统崩溃,而驱动本身则没这个问题,可能微软做了手脚,除非你生成并采用自己的RING0 CS,而不是系统的08H。(2004-02-11 12:59)
hummingbird楼上的,什么是调用门,说一下啊,NT下就是没有类似EXEC_VXD_INT这样的东西啊(2004-02-11 11:01)
bmyyyud试试改用调用门!不必非用int(2004-01-26 14:11)
RED_springwin9x的EXEC_VXD_INT是用来调实模式的dos和bios中断。如果用INT X指令调的就是保护模式的中断。两个不一样的。 NT下面不知道是否提供象EXEC_VXD_INT这样的服务。 好像没有吧 :D(2004-01-18 13:01)
wowocockXP里INT 15H有自己的用途,你不能使用,可以使用INT 20~30H中的中断,这里的空的IDT项,可以添加你自己的处理函数。。。。(2004-01-17 10:11)
hummingbird做什么用?是这样,我们做了一块ISA板,为这块板这驱动,另外还有个设备,这个设备不是我们做的,有个看门狗,这个看门狗的触发是我们自己的设备驱动来做,而响应处理,是看门狗自己的事。 至于代码,根本就只有条件满足时调用软件一行。软中断号是15h,整个东西就是这样。平台我们用的是嵌入...(2004-01-17 08:43)
wowocock问题是你做什么用?把代码拿出来看看吧。。。。。(2004-01-16 19:46)
cool-net我也断了,到现在才很连上。 首先你得弄明白你要调用的软中断是不是有效的(大多数就一个iret),而且,NT下面的中断号已经不是原来DOS的那些了,9x和NT还不一样,具体情况我手头没资料,也说不上哪个中断号是干什么的,但调用方式一定是用int或into.(2004-01-16 18:38)

返回顶部