inb
在 Linux 中使用、inl
、 和inw
访问内核空间的用户空间示例有哪些?
答案1
inb
,outb
朋友们并不用于内核↔用户空间通信,它们用于读取和写入特定于平台的IO端口。
这些功能的典型用途是与串行或并行端口(以及连接的设备)直接交互,而无需一路创建特定的内核设备驱动程序。
X 服务器还可以使用它们与视频(或可能的输入设备)硬件进行低级通信。
要从用户空间使用这些调用,需要做两件事:
Linux I/O 端口编程迷你 HOWTO将引导您完成基本知识,最后有一个简单的示例程序*。
请注意,使用此端口的程序直接与这些端口后面的任何硬件(或固件)进行通信。内核不会验证或以其他方式干扰这些调用。因此,误用它们可能会导致严重的问题。小心轻放。
*您需要#include <stdlib.h>
并 替换<asm/io.h>
为<sys/io.h>
才能编译。