ARM体系结构下面内存和io映射区别.docxVIP

  • 2
  • 0
  • 约4.46千字
  • 约 5页
  • 2021-10-30 发布于天津
  • 举报
PAGE PAGE # ARM 体系结构下面内存和 i/o 映射区别 在 S3C2410 的 Linux 里面,全部都会做 phy-virt 的映射。映射方式中的一种是静态映射, ioremap 是动态映射。在静态映射之后,仍然可以通过 ioremap 动态映射,也就是一个 IO 物 理地址可以映射到多个虚拟地址。 关于 IO 与内存空间: 在 X86 处理器中存在着 I/O 空间的概念, I/O 空间是相对于内存空间而言的,它通过特 定的指令 in 、 out 来访问。端口号标识了外设的寄存器地址。 Intel 语法的 in、 out 指令格式 为: IN累加器,{端口号|DX} OUT {端口号|DX},累加器 目前,大多数嵌入式微控制器如 ARM 、PowerPC 等中并不提供 I/O 空间,而仅存在内 存空间。 内存空间可以直接通过地址、 指针来访问, 程序和程序运行中使用的变量和其他数 据都存在于内存空间中。 即便是在 X86 处理器中,虽然提供了 I/O 空间,如果由我们自己设计电路板,外设仍 然可以只挂接在内存空间。 此时, CPU 可以像访问一个内存单元那样访问外设 I/O 端口,而 不需要设立专门的 I/O 指令。因此,内存空间是必须的,而 I/O 空间是可选的。 inb 和 outb: 在 Linux 设备驱动中,宜使用 Linux 内核提供的函数来访

文档评论(0)

1亿VIP精品文档

相关文档