【问题标题】:Writing data to a device from user space从用户空间向设备写入数据
【发布时间】:2013-07-02 23:57:59
【问题描述】:

假设我有一个内存映射设备连接到我的处理器,从用户空间写入该设备的最快方法是什么?令我困惑的是,通常处理器使用回写缓存,因此当您更改某些内存位置时,它不需要反映在物理内存中(在这种情况下映射到设备)。一些设备驱动程序专家可以解释这是如何工作的吗?

我有兴趣为此目的使用用户级设备驱动程序。而且我希望写入速度快,因为在计算机上运行的应用程序不需要等待太多,只需几个周期。

【问题讨论】:

    标签: c linux x86 linux-device-driver device-driver


    【解决方案1】:

    最快的方法如下。

    1. 使用 mmap 将设备地址空间映射到用户空间。用户空间的读写操作直接进入设备。
    2. 设置 mmu 以防止缓存。您还可以使用缓存刷新指令来刷新缓存。

    【讨论】:

      猜你喜欢
      • 2016-02-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-03-01
      • 1970-01-01
      • 1970-01-01
      • 2013-02-03
      相关资源
      最近更新 更多