注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

AlexYoung

做好大家都必须要做的事,发展自己感兴趣的事,结束圣人所不齿的事...

 
 
 

日志

 
 

Linux 32位 vs 64位  

2012-08-31 00:02:36|  分类: Linux学习 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

      所谓16位、32位、64位等术语有时指总线宽度,有时指指令宽度(在定长指令集中),而在操作系统理论中主要是指内存寻址的宽度。如果内存的寻址宽度是16位,那么每一个内存地址可以用16个二进制位来表示,也就是说可以在64KB的范围内寻址。同样道理32位的宽度对应4GB的寻址范围,64位的宽度对应16 Exabyte的寻址范围。内存寻址范围并非仅仅是对操作系统而言的,其他类型的软件的设计有时也会被寻址范围而影响。但是在操作系统的设计与实现中,寻址范围却有着更为重要的意义。 在早期的16位操作系统中,由于64KB的寻址范围太小,大都都采用“段”加“线性地址”的二维平面地址空间的设计。分配内存时通常需要考虑“段置换”的问题,同时,应用程序所能够使用的地址空间也往往有比较小的上限。 在32位操作系统中, 4GB的寻址范围对于一般应用程序来说是绰绰有余的,因而,通常使用一维的线性地址空间,而不使用“段”。

      64位计算与32位计算的最大区别在于“寻址能力”和“数据处理能力”。举一个简单的例子:一个5位的小计算器能够计算的最大数字范围是“99,999”,对于日常计算家用、买菜这样的工作应该够用了,但是对于银行、商场、科研、设计等需要处理“大量”、“复杂”数据的场合这样的计算器显然不能胜任,需要10位甚至12位的计算器。64位计算平台基于64位长的“寄存器”,提供比32位更大的数据带宽和寻址能力。面对今天日益复杂的应用程序和日益庞大的数据量,64位服务器的普及应用愈来愈迫切。

      如果你的“支持64位”指支持64位的可执行文件或者“支持64位内存寻址”,那么很显然,一个32位的操作系统无法支持64位的可执行文件,由于硬件的限制也不支持64位虚拟内存殉职。

  如果你的“支持64位”指支持64位计算,那么这取决于你的应用程序,操作系统并不能干涉应用程序进行64位的计算。

  如果你的“支持64位”指文件系统等支持64位寻址、64位时间,那么答案是肯定的,*BSD在上个世纪就已经采用64位时间和文件系统编址了。

  最后,FreeBSD提供了64位版本(对于x86架构的amd64/em64T平台而言,amd64),这个版本支持前面所有的“64位”



  评论这张
 
阅读(423)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017