【问题标题】:shared mem betwwen kernel/user space and select内核/用户空间和选择之间的共享内存
【发布时间】:2018-06-08 22:28:15
【问题描述】:

我有一些在 FreeBSD 和 Linux 上运行的特定硬件。

我必须做一个用户空间应用程序,它将使用内核/用户空间应用程序之间的共享内存与驱动程序一起工作。 我的应用程序确实从用户空间对共享内存进行了繁忙轮询。 有什么想法可以使用一种机制,例如选择睡眠并获得共享内存更改的通知(购买驱动程序)?

我不想实现一些像netlink这样的通信,因为select的想法是休眠,如果有事情发生就唤醒,保持清醒并继续处理数据,而不需要向内核提供更多的IPC。 然后,当它完成时,应用程序可以再次调用 select 并再次等待。

谢谢。

【问题讨论】:

    标签: linux select shared-memory freebsd


    【解决方案1】:

    您正在寻找 FreeBSD 上的 kqueue(2) 接口。 在 Linux 上有 inotify/epoll。

    【讨论】:

      猜你喜欢
      • 2012-03-02
      • 2011-12-16
      • 1970-01-01
      • 2016-10-12
      • 1970-01-01
      • 2016-08-14
      • 2015-12-12
      • 1970-01-01
      • 2015-06-04
      相关资源
      最近更新 更多