This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

armv8上面开着mmu怎么样才能是虚拟地址和物理地址一样的

大家好,armv8上面,我想开着mmu,但是虚拟地址和物理地址又是一样的,这个怎么样才能实现。

谢谢。

Parents
  • 这个比较好实现,设置TLB描述表项的物理地址即可,具体方法如下:

    以1MB一级页表为例,设:

       unsigned int page_table[4096]={0}

       unsigned int va=0xC000 0000  <---虚拟地址

       unsigned int pa=0x4000 0000    <--物理地址

    设置

      page_table[va>>20].pa=pa & 0xfff0 0000

     page_table[va>>20].pa表示对应表项的pa字段

    表项的低20位为该TLB描述符属性,参照手册

Reply
  • 这个比较好实现,设置TLB描述表项的物理地址即可,具体方法如下:

    以1MB一级页表为例,设:

       unsigned int page_table[4096]={0}

       unsigned int va=0xC000 0000  <---虚拟地址

       unsigned int pa=0x4000 0000    <--物理地址

    设置

      page_table[va>>20].pa=pa & 0xfff0 0000

     page_table[va>>20].pa表示对应表项的pa字段

    表项的低20位为该TLB描述符属性,参照手册

Children
No data