独立编址,统一编址:
X86:支持内存空间,IO空间,独立编址。 ARM,MIPS,PowerPC只支持内存空间,即统一编址。
IO端口和IO内存:对于X86系统区别很大,例如,网卡接口,可以连接在IO的这一组地址总线上,也可以连接在内存的这一组地址总线上,就可分别出现IO端口和IO内存的区别。
IO端口:当一个寄存器或内存位于IO空间时,称之为IO端口。
IO端口的操作:申请,访问,释放
申请:struct resource * __request_region(struct resource *parent, resource_size_t start, resource_size_t n, const char *name, int flags)
申请完以后,可以在/proc/ioports下面看到端口的占用情况。
访问:static inline int inb(unsigned long i) //读字节端口(8位) static inline