问题遇到的现象和发生背景
我使用 应用程序1(进程1),通过mmap将EIM的物理地址映射出来,但是用 应用程序2(进程2) 直接访问这块地址会报错:segment fault.
我想知道如何能使 应用程序2(进程2) 直接访问应用程序1(进程1) mmap出来的地址。
我的解答思路和尝试过的方法
1:直接访问,应用程序1(进程1)映射完毕将虚拟内存首地址通过共享内存发送给应用程序2(进程2),然后 应用程序2(进程2)通过共享内存得到这个首地址并访问,报错:segment fault
2:同时open eim的设备符,同时映射,失败,应用程序1(进程1)open 了eim的设备符后,应用程序2(进程2)无法open了,报错:提示eim设备符已经被open
3:应用程序1(进程1)open eim设备符,应用程序1(进程1)mmap地址,能得到虚拟地址的首地址。同时操作 应用程序2(进程2)mmap,报错,得到首地址为 十六进制8个F
我想要达到的结果
应用程序1(进程1)映射的虚拟地址,我希望 应用程序2(进程2)也能够访问。