电子产品世界 » 论坛首页 » 企业专区 » STM32 » ioctl幻数

共3条 1/1 1 跳转至

ioctl幻数

高工
2019-03-05 13:39:46    评分

To decode a hex IOCTL code:


Most architectures use this generic format, but check 

include/ARCH/ioctl.h for specifics, e.g. powerpc 

uses 3 bits to encode read/write and 13 bits for size.


bits meaning 

31-30 00 - no parameters: uses _IO macro 

10 - read: _IOR 

01 - write: _IOW 

11 - read/write: _IOWR


29-16 size of arguments


15-8 ascii character supposedly 

unique to each driver


7-0 function #


下面这个解释要看清楚 

So for example 0x82187201 is a read with arg length of 0x218, 

character ‘r’ function 1. Grepping the source reveals this is:


#define VFAT_IOCTL_READDIR_BOTH _IOR(‘r’, 1, struct dirent [2])





管理员
2019-03-06 08:19:44    评分
2楼

谢谢楼主分享


专家
2019-03-07 10:51:56    评分
3楼

感觉有点高深啊


共3条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]