关于中断服务程序与进程的关系的问题!
请问,小弟在写中断服务程序时碰到一个问题,以前在51上开发因为不牵扯操作系统,所以中断服务程序比较好写,所有代码都在一起,需要数据传递的话用个全 局变量即可,在linux上我看到的是“处理程序不能向用户空间发送或接收数据,因为它不是在任何进程的上下文中执行的”(linux设备驱动中文第二版 第286页第5行),也就是在产生中断时无法访问当前进程中的变量,不管是全局还是局部变量,因为是在用户空间,而中断服务在内核空间运行。
现在问题是如果在用户程序中调用request_irq函数申请中断,注册中断服务程序,如果我在该中断服务程序中调用了用户程序中的一个全局变量,执行 时还能访问到么?另外这种在用户空间申请中断的方式能否行的通?没看到有资料说可以在用户程序中申请中断的,都是在驱动中。
BTW:我有个同事在DOS上开发过中断,他说可以用上面的方式,在用户程序中申请中断,注册中断服务程序,然后访问用户程序中的全局变量进行数据传递,不知道DOS系统是怎么实现这种方式的?感觉这样好像有问题!
谢谢