首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >strace打印声音ioctl

strace打印声音ioctl
EN

Stack Overflow用户
提问于 2013-03-12 18:56:01
回答 1查看 1.4K关注 0票数 1

我的策略往往会混淆一些ioctl值(我确信SNDRV ioctls不能很好地识别...)

如何识别正确的ioctl值?

下面是一个小示例:

$ strace aplay -l

代码语言:javascript
运行
复制
...
fcntl64(4, F_SETFD, FD_CLOEXEC)         = 0
ioctl(4, UI_DEV_CREATE, 0xbfaa6e74)     = 0
close(4)                                = 0
...

那个UI_DEV_CREATE是一个SNDRV_CTL_IOCTL_CARD_INFO

(另一个例子)

代码语言:javascript
运行
复制
ioctl(4, USBDEVFS_CONTROL or USBDEVFS_CONTROL32, 0xbfaa6f94) = 0
ioctl(4, UI_DEV_CREATE, 0xbfaa71f0)     = 0
ioctl(4, 0x80045530, 0xbfaa73ac)  

USBDEVFS_CONTROL是一个SNDRV_CTL_IOCTL_PVERSION,我真的不知道0x80045530的宏扩展是什么……

谢谢:)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-03-12 21:52:51

正如您在Documentation/ioctl/ioctl-number.txt中看到的,值0x55 ('U')由几个子系统使用。strace不知道设备文件属于几个子系统中的哪一个,并且可能无法识别某些较新的ioctl代码。

最新的strace版本了解SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15359277

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档