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等指令),而统一编址对外设的访问和都内存的访问指令可以是一样的(这样使用起来更方便)!

  • 相关阅读:
    JavaScript事件处理
    JavaScript模拟"类"的三种方法
    非构造函数的继承和拷贝
    构造函数的继承
    vim开发环境
    socket之非阻塞
    网络编程
    多线程
    消息队列
    信号
  • 原文地址:https://www.cnblogs.com/goyier/p/3573695.html
Copyright © 2011-2022 走看看