嗨,我正在学习linux设备驱动程序编程,并且在读写设备文件时陷入了困惑。
首先,我们在驱动程序中打开设备文件,并通过访问该设备文件执行读取和写入操作。我的困惑是,当我们将任何数据从用户空间传递到内核空间时,该数据将驻留在哪里。表示此设备文件如何传输数据以及我们正在传输的任何数据,将其存储在设备文件本身中。 就像在C程序中,如果我们正在向文件中写入任何内容,它将存储在文件中。
然后,当我们将任何数据写入内核空间时,内核将如何处理该数据。意味着如果我们有一个 string reverse的c程序,那么这个反转操作是由内核完成的。
我的困惑可能是一个愚蠢的问题,但要求澄清一下。 预先感谢