问题标签 [ioctl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2748 浏览

linux - Linux 中的 NetBSD 的 FIONSPACE ioctl 等价物是什么?

我正在使用 Linux 2.6.38 (fc14)。获取套接字文件描述符(例如 TCP 套接字)上可用空间量的 ioctl 标志是什么?我发现 NetBSD 有 FIONREAD、FIONWRITE 和 FIONSPACE 用于此类相关目的。但是,我只能在 Linux 中使用 FIONREAD。

0 投票
1 回答
1385 浏览

expect - 在 C++ 进程中调用“expect”脚本

我使用expect/spawn 实现了一个shell,并从远程服务器向SCP 文件发送命令,该服务器在需要时自动发送密码。

该脚本在 UNIX 终端上运行良好。

尽管如此,我还是尝试通过 C++ 进程来使用这个脚本。它已被 system() 甚至 popen() 函数调用但没有成功。返回此错误:“ioctl(raw): I/O error” 有人可能有任何线索吗?

这是我的脚本:

0 投票
2 回答
3666 浏览

python - 有没有办法知道 Python 套接字中有多少数据可以接收?

我发现我必须使用 ioctl。这里有类似的问题:

我的问题是:

  1. Python 中的 FIONREAD 等价物是什么?如何调用 sock.ioctl() 来获取可用的字节数?
  2. 如果我在 Windows 上使用 Python 2.5 会怎样?socket.ioctl 是 2.6 版中的新内容。
0 投票
2 回答
1068 浏览

linux - 如何将 IOCTL 从 i2c-dev.c 转发到适配器驱动程序 (i2c-rt3352.c)

我正在为 SOC 编写 I2C 适配器驱动程序。该适配器现在存在于系统中,RTC 驱动程序通过 .master_xfer 使用它。

我想通过 /dev/i2c 从应用程序发送 IOCTL。我已经加载了 i2c_dev 和所有模块。发送 IOCTL 后,我得到以下信息:

i2cdev_ioctl 方法不会将 I2C_RDWR IOCT'L 发送到我的适配器驱动程序。如何将这些 IOCTL 转发到 i2c-rt3352.c ?

0 投票
2 回答
4324 浏览

windows - 如何加载和启动windows驱动程序?

嗨,我有一个简单的驱动程序 helloworld.sys,里面有一些打印语句,如 kdprint(“加载成功”)等。现在我需要加载驱动程序并启动服务。怎么做..??提前致谢

0 投票
1 回答
2830 浏览

c - 替换 ioctl() 函数

我正在为小型微控制器应用程序开发设备驱动程序 I/O 模型,使用 POSIX 作为接口设计的指南。我实现ioctl()了一种控制驱动程序/硬件参数的方法——例如 UART 波特率、I2C 从机地址等。

我注意到 POSIX:2008 列出ioctl()<stropts.h>作为obsolescent。与设备驱动程序通信的推荐替代机制是什么?

0 投票
1 回答
113 浏览

c - pty 手册页疑问/问题

man pty说……

为什么这样?这些操作是如何处理的linux

0 投票
1 回答
2077 浏览

c - Linux 等效于 I_PUSH

这个问题与pty终端数据包模式TIOCPKT有关

linux启用方式是什么packet modeI_PUSH传入ioctl函数时我找不到工作。

0 投票
1 回答
843 浏览

network-programming - 在 FreeBSD 上使用 IP 枚举所有网络接口

我的应用程序需要列出机器上的所有网络接口及其 IP、IPv4 和 IPv6。

我可以使用 ioctl(SIOCGIFCONF) 获取所有带有 IPv4 IP 的接口,但我也需要 IPv6 IP。

在 Linux 上,这些可以从 /proc/net/if_inet6 获得,但我在 FreeBSD 上从哪里获得它们?

0 投票
1 回答
582 浏览

linux - 用户进程如何访问我的模块加载的字符设备

我正在尝试将系统调用动态加载到内核中(无需重新启动内核并对其进行编译),以尝试(一旦在内核模式下)写入用户进程的内存。

(我知道有一种方法可以使用 ptrace 接口执行此操作,但这不是一个选项。)

我知道这样做的唯一方法是加载一个模块。为了允许用户与之通信,我被告知使用字符设备(应该在 /dev/ 中,对吗?)。我成功加载了一个。我的问题是我不知道用户进程如何在没有系统调用的情况下访问它。(有人告诉我使用 ioctl) 谁能展示一个用户进程如何调用我的模块加载的 ioctl ?

谢谢, 夏