前端之家收集整理的这篇文章主要介绍了
从linux内核访问物理内存,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我们可以通过一些内核
代码访问任何物理内存吗?因为,我写了一个只有init_module和exit_module的设备驱动,
代码如下.
int init_module(void) {
unsigned char *p = (unsigned char*)(0x10);
printk( KERN_INFO "I got %u \n",*p);
return 0;
}
和一个虚拟的exit_module ..问题是当我做lsmod时计算机挂起..
怎么了?我应该得到一些访问mem位置的许可吗?
亲切的解释..我是初学者!
要访问实际物理内存,您应该使用phys_to_virt
函数.如果是io内存(例如PCI内存),则应仔细查看ioremap.
这个整个主题是非常复杂的,如果你是一个初学者,我会建议一些内核/驱动程序开发书/文档.
原文链接:https://www.f2er.com/linux/393610.html