Linux下/dev/mem和/dev/kmem的区别

转载 2015年07月06日 19:37:09

Linux下/dev/mem和/dev/kmem的区别:

/dev/mem: 物理内存的全镜像。可以用来访问物理内存。

/dev/kmem: kernel看到的虚拟内存的全镜像。可以用来访问kernel的内容。

作用:

前者用来访问物理IO设备,比如X用来访问显卡的物理内存,或嵌入式中访问GPIO。用法一般就是open,然后mmap,接着可以使用map之后的地址来访问物理内存。这其实就是实现用户空间驱动的一种方法。

后者一般可以用来查看kernel的变量,或者用作rootkit之类的。参考1和2描述了用来查看kernel变量这个问题。

后者可以读取自己的程序空间4G空间的值。

[总结] Linux下/dev/mem和/dev/kmem的区别及作用

区别: /dev/mem: 物理内存的全镜像。可以用来访问物理内存。 /dev/kmem: kernel看到的虚拟内存的全镜像。可以用来访问kernel的内容。 作用: ...
  • happygongzhuo
  • happygongzhuo
  • 2011年11月01日 23:31
  • 1542

应用程序中对/dev/mem和/dev/kmem设备文件的访问

Linux下/dev/mem和/dev/kmem的区别: /dev/mem: 物理内存的全镜像。可以用来访问物理内存。 /dev/kmem: kernel看到的虚拟内存的全镜像。可以用来访问ker...
  • dumgeewang
  • dumgeewang
  • 2012年07月17日 18:16
  • 4422

/dev/mem and /dev/kmem

直接来自:man mem NAME        mem, kmem, port - system memory, kernel memory and system ports DESC...
  • robertsong2004
  • robertsong2004
  • 2015年01月21日 21:05
  • 576

使用/dev/kmem读取内核变量的值

调试嵌入式Linux内核时,可能需要查看某个内核变量的值。/dev/kmem正好提供了访问内核虚拟内存的途径。现在的内核大都默认禁用了/dev/kmem,打开的方法是在 make menuconfig...
  • pk_20140716
  • pk_20140716
  • 2015年07月12日 17:04
  • 607

/dev/mem /dev/kmem

通过2个文件,可以分别直接访问操作系统实际物理地址和虚拟地址内容,当然随着带来高风险,访问不当,有可能操作系统崩溃。...
  • zkylqh123
  • zkylqh123
  • 2012年03月27日 23:29
  • 406

dev/kmem 和dev/mem的区别

dev/kmem和dev/mem的区别在于dev/kmem 只能mmap kernel的low memory,而/dev/mem 可以映射4G范围内的memory dev/kmem的mmap实现如下...
  • tiantao2012
  • tiantao2012
  • 2016年08月10日 10:54
  • 183

linux /dev/mem 和 /dev/kmem区别

/dev/mem: 物理内存的全镜像。可以用来访问物理内存。 /dev/kmem: kernel看到的虚拟内存的全镜像。可以用来访问kernel的内容。 作用: 前者用来访问物理IO设备...
  • hunanchenxingyu
  • hunanchenxingyu
  • 2014年05月22日 00:36
  • 765

dev/mem的使用

使用 hexedit /dev/mem 可以显示所有物理内存中的信息。 运用mmap将/dev/mem map出来,然后直接对其读写可以实现用户空间的内核操作。 以下是我写的一个sample ...
  • wanglongwang201209
  • wanglongwang201209
  • 2013年10月10日 16:25
  • 959

Linux下/dev/mem和/dev/kmem的区别

来自 http://blog.csdn.net/williamwanglei/article/details/8636564 Linux下/dev/mem和/dev/kmem的区别: ...
  • jackjones_008
  • jackjones_008
  • 2014年12月15日 17:17
  • 525

linux下/dev/mem分析

dev/mem: 物理内存的全镜像。可以用来访问物理内存。 /dev/kmem: kernel看到的虚拟内存的全镜像。可以用来访问kernel的内容。 /dev/mem 用来访问物理IO设备,...
  • skyflying2012
  • skyflying2012
  • 2013年05月15日 15:22
  • 6506
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Linux下/dev/mem和/dev/kmem的区别
举报原因:
原因补充:

(最多只允许输入30个字)