/ dev / mem和/ dev / kmem不存在?

时间:2012-08-31 03:03:21

标签: android linux linux-kernel

如果有人能解释为什么这两个文件不存在,我将不胜感激? Android内核的虚拟内存空间和物理空间如何没有2个文件?

编辑: 我有Android 2.3.7(Cyanogen mod),2个文件不存在: enter image description here

EDIT2: 我检查了运行ICS的三星Galaxy S3,存在2个文件

2 个答案:

答案 0 :(得分:6)

/dev/mem(c:1:1)和/dev/kmem(c:1:2)设备节点只是Linux内核中drivers/char/mem.c向用户空间公开的API 。内核本身直接管理内存而不使用这些设备节点,通常用户空间也不需要它们。

/dev只是一个目录(传统上)包含设备节点,这些节点是特殊的“文件”; /dev中可用的内容与内核提供的内容之间没有严格的关系。 (有udevmdev等工具可以在/dev中创建和销毁设备节点以响应内核事件,但这些工具并不总是在硬件相对固定的嵌入式环境中使用。如果您愿意,您可以尝试创建这些节点以使用mknod进行交互(这可以在任何地方生活,而不是在/dev中)。但是,内核可能已配置CONFIG_DEVKMEM=n,在这种情况下,这些设备无法正常工作。

答案 1 :(得分:1)

它们存在于我的手机上。

enter image description here

由于权限

,Android上的大多数文件浏览器都无法看到这些文件