Module user_buffer

Module user_buffer 

Source
Expand description

用户态缓冲区

一般来说,用户态程序通过一段位于用户地址的缓冲区与内核进行数据交换 例如,系统调用接口通常传入指向用户缓冲区的指针和长度 这个模块提供了对这类缓冲区的抽象和操作方法

XXX: 目前的实现直接依赖于 RISC-V 特权级的 SUM 位来允许内核访问用户空间 未来可能需要改进为通过页表映射等方式实现更通用的用户空间访问

Structs§

UserBuffer
用户缓冲区结构体

Functions§

read_from_user
从用户空间读取数据
validate_user_ptr
验证用户空间指针是否有效
validate_user_ptr_mut
验证可写的用户空间指针是否有效
write_to_user
向用户空间写入数据