8

内存映射 I/O 是一种允许使用中央内存 (RAM) 与外围设备通信的技术。端口映射 I/O 使用端口(带有特殊的汇编指令)通过数字端口进行通信。

一种方法相对于另一种方法的优势是什么?

4

1 回答 1

14

正如克苏鲁所说,

  • 内存映射 I/O 允许写入/读取 I/O 设备端口,就像读取/写入普通内存一样(使用相同的机器代码/asm)

但有一个缺点:

  • 您为内存映射的 I/O 设备耗尽了物理内存地址空间(想想 32 位 Windows 无法访问 PC 上的所有 4G RAM)

因此,使用端口映射 I/O 方法的一个优点是您有一个单独的 I/O 设备地址空间,您可以使用整个内存寻址范围来访问内存。

编辑:这是您问题的更完整答案:硬件端口到内存地址

于 2013-03-12T21:17:39.460 回答