0

我想修改我的程序,以确保我的 linux 系统可以让我的 C 应用程序 100% 不间断地访问我的并行端口。

我的程序中已经有以下语句:

if (ioperm(0x378,3,1) ==-1){printf("Access denied");return -1;}
...
outb(data,0x378);

本质上,我请求许可,然后对端口进行直接 I/O,但它看起来不像直接 I/O,因为有时当我使用它时,会在某个地方写入额外的错误字节(我猜是中断信号),这是抛出我自制的程序员关了。

linux 手册建议使用 iopl 函数,所以在上面的语句之间我添加了:

if (iopl(3) ==-1){printf("Error");return -1;}

但 iopl() 没有任何区别。

是否有某种函数可以用于 C,只允许我的程序访问并行端口,并且只有在我的程序终止后才允许所有其他人访问它?

4

0 回答 0