内存映射 I/O 是一种允许使用中央内存 (RAM) 与外围设备通信的技术。端口映射 I/O 使用端口(带有特殊的汇编指令)通过数字端口进行通信。
一种方法相对于另一种方法的优势是什么?
最佳答案
正如克苏鲁所说,
- 内存映射 I/O 允许写入/读取 I/O 设备端口与读取/写入普通内存相同(使用相同的机器代码/asm)
但有一个缺点:
- 您为内存映射的 I/O 设备占用了物理内存地址空间(想想 32 位 Windows 无法访问 PC 上的所有 4G RAM)
因此,使用端口映射 I/O 方法的一个优点是您可以为 I/O 设备提供单独的地址空间,并且可以使用整个内存寻址范围来访问内存。
编辑:这是您问题的更完整答案:hardware ports to memory addresses
关于内存映射 I/O 与端口映射 I/O,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15371953/