linux中ioremap和mmap的区别
展开全部
你不是已经说了区别
ioremap是将物理地址转换为虚拟地址
mmap是将设备内存线性地址映射到用户地址空间
linux的线程只能访问虚拟地址,不管是不是内核,ioremap应用,比如有个寄存器地址是0xe8000000
你要用ioremap映射后,才能访问地址0xe8000000。这两个地址是不同的,mmu会帮你搞定,对你是透明的
mmap在内核我用过ops中的mmap方法
我写过一个例程,见附件。里面还有用户态的测试程序。
ioremap是将物理地址转换为虚拟地址
mmap是将设备内存线性地址映射到用户地址空间
linux的线程只能访问虚拟地址,不管是不是内核,ioremap应用,比如有个寄存器地址是0xe8000000
你要用ioremap映射后,才能访问地址0xe8000000。这两个地址是不同的,mmu会帮你搞定,对你是透明的
mmap在内核我用过ops中的mmap方法
我写过一个例程,见附件。里面还有用户态的测试程序。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询