应用层调用驱动层的两个问题
1是应用层的一个程序要开机就启动,应该如何做呢?linux有类似于dos下的autoexec.bat的东西吗?
2是如何做一个应用程序的轮询检测一下中断啊?简单说就是"应用层如何检测中断"+"应用层如何定时"啊?
麻烦诸位老大帮忙.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
1是应用层的一个程序要开机就启动,应该如何做呢?linux有类似于dos下的autoexec.bat的东西吗?
2是如何做一个应用程序的轮询检测一下中断啊?简单说就是"应用层如何检测中断"+"应用层如何定时"啊?
麻烦诸位老大帮忙.
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(8)
应用层能直接获取中断吗?
不是驱动层靠request_irq()的句柄去获取,而是做进应用程序里面.
驱动采用阻塞模式,调用interruptible_sleep_on,当应用程序读取设备的时候便会自动阻塞。在中断处理函数中调用wake_up_interruptible可唤醒应用程序。
就是说我应该把应用程序设成开机启动,但是启动后直接进入休眠状态,然后在驱动层获取到中断的时候再去唤醒这个应用程序是吗?
这个函数具体怎么用啊?麻烦了.
very thanks~
1是应用层的一个程序要开机就启动,应该如何做呢?linux有类似于dos下的autoexec.bat的东西吗?
你可以写到 /etc/rc.local
这个就相当于autoexec.bat
对你的第二个问题,你可以考虑一下:利用中断驱动IO,驱动读写数据 ,应用层轮巡来读写驱动!比起应用层定时的检查驱动在原理上我个人认为比较合理些。
感谢楼上二位,我去试试二楼的方法。
3楼,轮询的花应该用哪个函数?应用层定时扫描中断号进行处理应该就是“轮询”吧?
那实际就是分成两个问题:一个是定时休眠定时启动,一个是读取硬件中断号的interrupt是否有更新。对吗?
那具体应该怎么做啊?用什么方法可以做到?我查了一下但是没太查到,有具体例子吗?
既然是中断为什么还要去轮询检查呢