找回密码
 加入计匠网
搜索
热搜: BIOS ACPI CPU Windows
查看: 18060|回复: 7

PCI的配置空间、I/O空间、内存空间的具体区别

[复制链接]
发表于 2008-6-24 17:34:40 | 显示全部楼层 |阅读模式
请帮忙解释一下三者之间的区别,并且它们的访问机理有何不同,谢谢了
发表于 2008-6-24 23:28:50 | 显示全部楼层
计算机的几种重要资源,建议看看计算机结构方面的书籍.+ J- C; X' B! R# u( E6 I  v; B
软件资源其中主要有:
+ Y( U9 Q$ i1 M' h6 p4 n+ B1、Memory
, z( i4 Q: s. R7 K# X* u2、IO$ Y; ?9 t$ m1 v( r- o7 `
3、IRQ! U- N) e3 ?0 D; P* {9 p. n) B
4、DMA
+ Y% x' N1 V3 c) s7 ]
- x/ A" I6 M( I1 w你所指的几个:
0 w9 h! n9 p" l; }7 f  _1、PCI配置空间,是指PCI Device上的一些寄存器,如果你看过ISA计算机架构以及不方便配置架构,就会知道这是主要来干吗用的。0 y4 L, x1 `9 f+ |0 Q9 C& N0 r
2、I/O空间,X86为计算机各类设备提供64K的IO端口供Device使用,其中一路发展过来,很多端口都已经为某一功能而固定。; q1 ], A9 N1 ~/ H0 ?: t# w6 ^; v
3、内存空间就是只你的计算机所能支持的Memory最大寻址范围。包括你的物理内存,也包括各类memory mapping IO和各Device的Memory地址映射空间,当然这些空间都配置在你的计算机所支持的最大寻址范围内。
回复

使用道具 举报

 楼主| 发表于 2008-6-25 09:53:36 | 显示全部楼层

回复 2# 的帖子

多谢南狼大哥!
1 j9 l2 U$ d0 s1 R7 f, i2 U如果针对于一个PCI device来讲,系统bios 会向PCI配置空间的基地址寄存器填写一个值,以此来告诉pci device系统为其分配了一段内存地址(当然是CPU未用到的),当上层程序要访问该段地址的数据时,那么就会转向访问pci device 的mmio寄存器,是这样的吗?
回复

使用道具 举报

发表于 2008-6-25 10:12:54 | 显示全部楼层
建议多看PCI Device和Host的spec.每种平台会有些不一样,你刚指的配置空间的基地址,不知道你是指IO地址还是Memory地址,当为memory地址时,大致情况如你所述。
回复

使用道具 举报

 楼主| 发表于 2008-6-25 15:08:18 | 显示全部楼层

我指的是memory地址

多谢了,南狼大哥,以后还望多多指教啊
回复

使用道具 举报

发表于 2008-6-26 17:16:11 | 显示全部楼层
bini老是在第一时间内回答问题!
回复

使用道具 举报

 楼主| 发表于 2008-6-27 13:23:12 | 显示全部楼层

呵呵,欢迎老兄也指点一二啊

原帖由 kelvinklee 于 2008-6-26 17:16 发表
& h, e% a: m6 y# k( U/ g& o) f' Mbini老是在第一时间内回答问题!
回复

使用道具 举报

发表于 2011-5-26 22:27:18 | 显示全部楼层
怎么访问PCI的内存空间和I/O空间呢
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 加入计匠网

本版积分规则

Archiver|手机版|小黑屋|计匠网

GMT+8, 2026-4-25 03:29 , Processed in 0.051676 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表