在单用户模式下将内存从linux内核共享到用户空间

我有一个分配内存的内核模块,我想与用户进程共享这个内存。 在正常模式下,我们只能使用:mmap,/ proc,shmem等,但在单用户模式下,对于embedded式设备,是不是有办法共享一个简单的指针?

“单用户模式”是由用户空间定义的约定。 它对内核没有任何意义; 所有相同的规则适用于“正常模式”。

如果您想从用户空间访问内存( 任何内存),则需要以某种方式将该内存映射到进程中。 在特殊文件或设备节点上使用mmap()是最自然的方法。

伪sysfs文件系统( /sys )专门用于这个目的(将内核数据公开给用户空间)。 您也可以从用户空间写入这些数据结构。

查看Greg Kroah-Hartman的驱动程序教程

阅读SysFS文档