有没有办法让ioctl()具有新的(自定义)命令

时间:2017-12-06 06:31:47

标签: linux linux-device-driver systems-programming nvme

我正在研究nvme-cli的测试工具(用c编写,可以在linux上运行)。

对于SSD验证目的,我实际上是在寻找一个自定义命令(例如I / O命令,写入然后再读取它,最后比较两个数据是否相同)

在用户空间中,我需要使用write命令(nvme_cmd_write)调用最少2 ioclt(),使用read命令(nvme_cmd_read)调用另一个ioclt()并比较两个缓冲区内容。

问题实际上是我希望并行发送此命令的时候。在块级别(使用ioclt()),我们无法将此命令放在不同的I / O提交队列中。

我们也可以从from collections import defaultdict def f(x, t): n = 0 result = defaultdict(int) for c in x: if c == t: n += 1 else: result[n] += 1 n = 0 result[n] += 1 del result[0] return result 发送一个自定义命令(nvme_cmd_write_compare),并在驱动程序级别有一个新模块来处理这个新命令。

由于我是这个nvme / ioctl()的新手,如果有任何错误请指正。

我想知道我们是否可以实现这一点。

0 个答案:

没有答案