1 IO空间有限;虽说X86处理器的IO空间可以寻址4G;但是windows系统里给外设分配的IO空间共64KB;
所以就要求单个PCI设备若使用了IO空间,其大小不要超过256字节;
MEMORY空间则没有这个限制,受限于操作系统能够管理的内存大小;
2 在驱动程序里面访问IO空间,可以直接使用IO指令访问;
在驱动程序里面访问memory 空间,需要先将其物理地址(physical address)映射到虚拟地址(virtual address),然后才能访问;
3 memory 空间访问的时候可以支持burst, IO空间访问的时候只能一个一个访问,所以从性能上看,memory空间访问的性能要高于IO空间
|