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方法
我写过一个例程,见附件。里面还有用户态的测试程序。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
启帆信息
2024-11-19 广告
2024-11-19 广告
启帆信息是英伟达中国区代理商,原厂授权代理,提供全面的软件技术解决方案以及NVIDIA以太网产品、交换机等产品,欢迎前来咨询!...
点击进入详情页
本回答由启帆信息提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询