微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Linux中断处理用户空间

Linux中,在用户空间代码而不是内核空间中处理设备中断的选项有哪些?

解决方法

经验告诉您可以为几乎任何PCI适配器编写稳定的用户空间驱动程序.在内核中只需要一些复杂性和一个小代理层. UIO是朝这个方向迈出的一步,但是如果要正确处理用户空间中断,那么UIO可能还不够,例如,如果设备不支持UIO所依赖的PCI-spec的中断禁止位.

请注意,进程唤醒延迟是几微秒,所以如果您的实现需要非常低的延迟,那么用户空间可能会拖动它.

如果我要实现一个用户空间驱动,那么我将把内核的ISR减少到一个disable& ack&唤醒用户空间”操作,处理唤醒过程中的中断,然后重新启用中断(当然,通过写入从用户空间进程映射的PCI内存).

原文地址:https://www.jb51.cc/linux/401621.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐