我正在开发软件来控制嵌入式 ARM 系统上的 mmap 设备,但遇到了一些可用的调试和开发工具还不够的情况。即 valgrind 和高端螺纹分析仪等仪表工具不可用。
我想做的是在 x86 机器上编译我的代码,使用相同大小映射一个“虚拟”内存段,然后通过网络将这些读/写代理到嵌入式机器,然后可以相应地响应。
我意识到这可能需要一个客户端/服务器机制,并且速度会非常慢,但是拥有这个选项的好处将使 mmap 接口本身之外的机制(异步事件处理、线程管理)可用于使用 x86 开发工具的工具将是很有用。
我在一些用于模拟的 ASIC 开发中听说过这种技术,但从未使用过任何提供这种功能的东西。这里的关键是我想在两个平台上使用相同的代码,而不必重写一堆东西,或者必须编写一个包含任何硬件处理逻辑的内核模块。我想通过 mmap 将所有设备控制逻辑保留在用户区