当前位置: 技术问答>linux和unix
求助!!!想知道计算机可寻址空间与硬盘容量的关系!!!
来源: 互联网 发布时间:2017-03-04
本文导语: 本帖最后由 junnyskert 于 2012-06-25 11:21:05 编辑 现在的计算机大多数都是32位机,也就是一次处理数据的位数。但这是不是代表它可地址总线位数? 如果是的话,那32位地址线最多可寻址4GB的地址空间,但如今的硬盘容量...
如果是的话,那32位地址线最多可寻址4GB的地址空间,但如今的硬盘容量都上TB了,这是为什么????
如果32位不是地址总线位数的话,那如今的计算机都有多少根地址总线?最大可寻址多大的空间,这个空间是不是对应着硬盘容量的最大值???
还有为什么说80x86以上的处理器可寻址物理空间被限制为4GB呢?是不是物理内存最大只能为4GB??
希望有高手能指点一下,谢谢!!!
|
可寻址物理空间的确就是4G,这是由32位地址线决定的。
但是并不是说多少位机,就一定只有多少根地址线,比如8086的16位机,它就有20根地址线。但是,总的寻址空间还是上面那句话,是由地址线决定。
至于硬盘的话,它的机制大概是这样的。操作系统会存储一个硬盘的I/0地址,有时候就被映射到4G的空间中了。然后通过这个地址进入到硬盘的控制器。再把你需要读取的文件和文件对应的inode节点找到。Inode节点在硬盘的超级块中,又对应到硬盘中具体的地址,类似索引寻址一样。接着,硬盘控制器会取到对应的文件,传回给操作系统。
意思就是,寻址硬盘的时候,只要4G空间中的一个地址。至于硬盘中的某某文件地址,在操作系统4G空间寻址中是不当做地址的,只当做参数来传递给硬盘控制器。然后硬盘控制器,把这个参数转化为硬盘中的地址,最后存取文件。
但是并不是说多少位机,就一定只有多少根地址线,比如8086的16位机,它就有20根地址线。但是,总的寻址空间还是上面那句话,是由地址线决定。
至于硬盘的话,它的机制大概是这样的。操作系统会存储一个硬盘的I/0地址,有时候就被映射到4G的空间中了。然后通过这个地址进入到硬盘的控制器。再把你需要读取的文件和文件对应的inode节点找到。Inode节点在硬盘的超级块中,又对应到硬盘中具体的地址,类似索引寻址一样。接着,硬盘控制器会取到对应的文件,传回给操作系统。
意思就是,寻址硬盘的时候,只要4G空间中的一个地址。至于硬盘中的某某文件地址,在操作系统4G空间寻址中是不当做地址的,只当做参数来传递给硬盘控制器。然后硬盘控制器,把这个参数转化为硬盘中的地址,最后存取文件。
|
补充一下,多少位机。说的是CPU的ALU单元。跟地址线关系不大,只是为了对称,最好地址线数目和ALU一样。这样子ALU就能直接处理地址了。
现今大多数CPU是32位的,但也有64位的。32位机最大内存只能安装4g,大了的确就找不到了。因为地址线有限。
现今大多数CPU是32位的,但也有64位的。32位机最大内存只能安装4g,大了的确就找不到了。因为地址线有限。