我面临一个非常奇怪的问题。我越过编译过的qemu,并在nexus 6p上运行它。问题是我与/ dev / jpeg2进行了二进制通信。所以当我使用
strace ./mybinary
它显示所有二进制调用的ioctl。 在这种情况下,它们是
MSM_JPEG_IOCTL_RESET
MSM_JPEG_IOCTL_HW_CMD
MSM_JPEG_IOCTL_GET_HW_VERSION
但是当我在做
qemu -strace ./mybinary
我actullay又增加了一些ioctl。
MSM_JPEG_IOCTL_EVT_GET
MSM_JPEG_IOCTL_RESET
MSM_JPEG_IOCTL_HW_CMD
MSM_JPEG_IOCTL_GET_HW_VERSION
MSM_JPEG_IOCTL_EVT_GET_UNBLOCK
据我所知,在二进制文件中调用ioctl时会将其传递给qemu。我阅读了有关qemu中ioctl的源代码,但还没有找到qemu添加ioctls的单一方法。因此,我怀疑二进制文件是否可以检测到qemu或其他内容。谁能给我一些想法为什么会这样?谢谢!