ioctl Function

ioctl是设备驱动程序中对设备的I/O通道进行管理的函数。所谓对I/O通道进行管理,就是对设备的一些特性进行控制,例如串口的传输波特率、马达的转速等等。
ioctl经常是IO操作的杂货包(catchall),任何使用本章其他函数(如read,write…)表示的操作就需要ioctl终端(Terminal)IO就是本章最大的使用者(在chapter 18我们会看到POSIX.1已经用分离的函数替换了终端IO操作)

函数原型如下:

#include <unistd.h>
#include <sys/ioctl.h>

int ioctl(int fd, int requets, ...);

系统给不同的设备提供了各种各样的ioctl命令

CatgoryConstant namesHeaderNumber of ioctls
disk labelDIOxxxsys/disklabel.h6
file I/OFIOxxxsys/filio.h9
mag tape I/OMTIOxxxsys/mtio.h11
socket I/OSIOxxxsys/sockio.h60
terminal I/OTIOxxxsys/ttycom.h44

例如mag tape操作,允许我们倒带等操作,这是其余函数无法提供的功能。因此最简单地操作这些设备的方法就是使用ioctl

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

猎羽

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值