加入收藏 | 设为首页 | 会员中心 | 我要投稿 拼字网 - 核心网 (https://www.hexinwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Linux > 正文

内核用户I/O应用程序开发

发布时间:2021-01-12 11:15:35 所属栏目:Linux 来源:网络整理
导读:我已经阅读了以下有关用户I / O的链接: http://www.hep.by/gnu/kernel/uio-howto/ 并遵循http://nairobi-embedded.org/uio_example.html. 我正在使用ivshmem设备将内存从主机映射到来宾(在QEmu中).我正在使用的客户端驱动程序是https://www.gitorious.org/n

我已经阅读了以下有关用户I / O的链接:
http://www.hep.by/gnu/kernel/uio-howto/

并遵循http://nairobi-embedded.org/uio_example.html.

我正在使用ivshmem设备将内存从主机映射到来宾(在QEmu中).我正在使用的客户端驱动程序是https://www.gitorious.org/nahanni/guest-code中的kernel_module / uio / uio_ivshmem.c.

我已成功共享多个guest虚拟机之间的内存,我也可以使用上面git存储库中的ivshmem-server从主机向guest发出中断.

但我无法弄清楚如何从客户“中断”注意到写入内存已完成.即向另一位客人发出信号,告知其应该阅读第一位客人所写的内容.

我究竟做错了什么?有没有办法使用UIO发送中断或者我只能接收?我怎么注意到我已经完成了写作/阅读?

最佳答案 好的,我现在已经弄明白为什么我不能发送中断了.

我确实尝试过使用测试应用程序,但正如你在这篇(http://lists.gnu.org/archive/html/qemu-devel/2014-08/msg05388.html)帖子中所读到的那样,内核中的一个补丁打破了uio_ivshmem.c.

这个补丁使ivshmem无法映射BAR0,后者用于发送中断. BAR2仍然很好,可用于共享数据,但中断不起作用.

(编辑:拼字网 - 核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!