当前位置:  技术问答>linux和unix

X86下linux虚拟地址向物理地址的转换

    来源: 互联网  发布时间:2016-05-09

    本文导语:  大家都知道,用C语言的取地址符&得到的通常是一个虚拟地址,那么在Linux下如何能通过这个虚拟地址来得到它实际指向的物理地址呢? 如果实现一个系统调用来得到这个物理地址,有哪些可能涉及到的函数或寄存器什么的...

大家都知道,用C语言的取地址符&得到的通常是一个虚拟地址,那么在Linux下如何能通过这个虚拟地址来得到它实际指向的物理地址呢?
如果实现一个系统调用来得到这个物理地址,有哪些可能涉及到的函数或寄存器什么的呢?
谢谢.

|
这个涉及到你的CPU体系结构的MMU实现,还要看你的虚拟地址是在那个段的如果是kseg0,大部分体系结构是虚拟地址-0x80000000就是物理地址,如果是kuseg地址就不好说了,需要查看TLB表对其的映射,在arch目录下找到你的CPU体系结构,比方说i386,这个目录下就有一个mm的目录,里面有具体体系结构MMU的实现,每个体系结构涉及的寄存器也不一样,查看CPU手册可以知道他们具体是怎么映射和管理的

|
回去仔细看或者这两本书,看四遍以上,然后再来提问

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 云计算时代,现场见证IBM Power虚拟机对决X86物理机
  • Solaris 9是否有x86版本?免费吗?
  • S8 for X86怎么安装呀?
  • solaris8 for x86的支持那些网卡?谢了!
  • X86下使用C、C++
  • 有没有AIX for x86虚拟机
  • X86引导启动程序 我的OS第一帖
  • 我可以在机器上同时装win98,2000,linux,freeBSD,solaris x86吗?
  • solaris9 x86如何安装?必须要从软盘启动吗?
  • 小声的问一句,有没有能装在x86上的unix操作系统
  • 编程技术其它 iis7站长之家
  • Solaris for X86 和Solaris for Sparc主要区别在哪?
  • MacOS有没有X86平台上的版本?
  • x86(大雪), 谢谢你指点wget, 请进!
  • 关于mac os x86的问题,如何进入图形界面。
  • solaris8 for x86(intel)那里有的下
  • 请问哪有solaris x86 下载
  • 我想装Solaris for X86 能用软盘引导吗?
  • solaris 8 for x86能用 u盘哇?
  • solarsi10(x86)中如何安装Sundance ST201网卡?
  • i386的和x86的盘还有什么区别么?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3