zoukankan      html  css  js  c++  java
  • (转)内存和外设的统一编址及独立编址

    独立编址和统一编址在程序上有什么区别,比如访问一个pci外设时,独立编址的地址时怎么样的,统一编址又是怎么样的?都说x86时冯诺依曼体系结构,是独立编址的;arm是harvard结构,是统一编址的,但是区别在那呢?这个编址是虚拟地址(mmu之上的地址)还是物理地址?

        回答:地址是针对内存和外设而言(都是指物理地址)!

    独立编址:内存和外设分开独立编址(它们的地址原则上可以有重合区域);因为独立,所以内存编址可以从0~N,外设编址也可以从0~N;

    统一编址:就是内存和外设的编址放到一起来规划,被外设用了的地址就不能给内存了,反之亦然!  比如:给外设分配地址0~N,那么内存就不能使用0~N了,只能使用N~M!

          针对PCI设备的访问,独立编址和统一编址的的区别在于:独立编址访问外设有专门的I/O指令(比如:x86的in/out等指令),而统一编址对外设的访问和都内存的访问指令可以是一样的(这样使用起来更方便)!

  • 相关阅读:
    蚂蚁和木杆问题
    计算二进制中1的个数(转)
    strlen源码剖析(转)
    bashrc
    smb.conf配置文件(Centos)
    配置VNC+PuTTY+SSH Tunnel访问Linux
    标题: BASH最常见的激活模式
    KMP算法
    字符串中单词逆序
    Java中堆内存和栈内存详解
  • 原文地址:https://www.cnblogs.com/goyier/p/3573695.html
Copyright © 2011-2022 走看看