iTOP-STM32MP157开发板应用层和内核层传递数据

我们的应用层和内核层是不能直接进行数据传输的。我们要想进行数据传输,要借助下面的这两个函数。

static inline long copy_from_user(void *to, const void __user * from, unsigned long n)

static inline long copy_to_user(void __user *to, const void *from, unsigned long n)

用户空间-->内核空间,如下图所示:

iTOP-STM32MP157开发板应用层和内核层传递数据_第1张图片

函数 : copy_from_user(void *to, const void __user *from, unsigned long n)

参数 : to 目标地址(内核空间)

参数 : from 源地址(用户空间)

参数 : n 将要拷贝数据的字节数

返回值 : 成功返回 0,失败返回没有拷贝成功的数据字节数

功能 : 将用户空间数据拷贝到内核空间

内核空间-->用户空间,如下图所示:

iTOP-STM32MP157开发板应用层和内核层传递数据_第2张图片

函数 : copy_to_user(void __user *to, const void *from, unsigned long n)

参数 : to 目标地址(用户空间)

参数 : from 源地址(内核空间)

参数 : n 将要拷贝数据的字节数

返回值 : 成功返回 0,失败返回没有拷贝成功的数据字节数

功能 : 将内核空间数据拷贝到用户空间

更多内容B站关注:北京迅为STM32MP157开发板

你可能感兴趣的:(单片机,嵌入式硬件)