Board logo

标题: DOS中断驻留程序中怎么调用出发中断的主程序中的函数? [打印本页]

作者: weishengshou     时间: 2010-7-6 10:51    标题: DOS中断驻留程序中怎么调用出发中断的主程序中的函数?

请教各位高手:
我写了两个程序:
1、一个dos程序,borland c++ 3.1开发
2、一个中断驻留程序。开发环境一致

在我的程序1中,调用了中断驻留,例如中断号1f。
现在的问题是:在中断中想使用程序1中的某个函数,例如foo1(int arg1,int arg2,char **arg3),我又不想直接把这个函数写进中断里面(这个函数触发了一些其他中断),想在执行中断的时候,也能调用程序一中的这个函数

没有多少思路,请大侠指点指点?
作者: netwinxp     时间: 2010-7-6 19:16
中断程序除了直接I/O和BIOS中断调用外连DOS的调用都有重入的危险,更何况是调用用户的程序!想让中断服务程序和用户程序“通讯”请利用寄存器传递。如果你认为该函数非用不可,那你最好放在中断里面,而不是让中断来调用客户程序。

如果你喜欢在中断调用用户程序,那你应该用windows,因为windows是酱紫设计的,但它的中断程序不会让你随便改。

[ Last edited by netwinxp on 2010-7-6 at 19:22 ]