我有一个分配内存的内核模块,我想与用户进程共享此内存。在正常模式下,我们只能使用:mmap,/ proc,shmem等,但在单用户模式下,对于嵌入式设备,是不是有办法共享一个简单的指针?
答案 0 :(得分:2)
“单用户模式”是用户空间定义的约定。它对内核没有意义;所有相同的规则都适用于“普通模式”。
如果要从用户空间访问内存 - 任何内存,则需要以某种方式将该内存映射到进程中。在特殊文件或设备节点上使用SELECT date, COALESCE(SUM(i.total_in), 0) AS `total income`
FROM ( SELECT ADDDATE(('2017-01-01'),ROW-1) AS date
FROM ( SELECT @row := @row + 1 AS ROW
FROM (SELECT 0 UNION ALL SELECT 1
UNION ALL SELECT 3 UNION ALL SELECT 4 UNION ALL
SELECT 5 UNION ALL SELECT 6 UNION ALL SELECT 6
UNION ALL SELECT 7 UNION ALL SELECT 8 UNION ALL
SELECT 9) t,(SELECT 0 UNION ALL SELECT 1 UNION ALL
SELECT 3 UNION ALL SELECT 4 UNION ALL SELECT 5
UNION ALL SELECT 6 UNION ALL SELECT 6 UNION ALL
SELECT 7 UNION ALL SELECT 8 UNION ALL SELECT 9) t2,
(SELECT @row:=0) r ) n WHERE n.row <= ( SELECT DATEDIFF(MAX(LAST_DAY('2017-01-01')), MIN('2017-01-01')) FROM
`income`)+ 1) dt LEFT JOIN `income` i ON dt.date = i.`date_income`GROUP BY dt.date;
是最自然的方法。
答案 1 :(得分:1)
伪sysfs文件系统(/sys
)旨在实现此目的(将内核数据公开给用户空间)。您也可以从用户空间写入这些数据结构。