32位操作系统针对的32位的CPU设计
CPU从原来的8位,16位到现在的32位和64位。
cpu处理计算的时候“数据”和“指令”是不同对待的
8位的CPU,一次只能处理一个8位的“数据”或者一个8位的"指令"。比如''.
又比如:“+1”这个运算你要先指示CPU做“+”,完成后再输入“1”数据给CPU
8位的CPU优点是设计简单,处理速度比较快
缺点就是:軟件设计复杂,繁琐不利于cpu是计算机的什么的发展。
后来推出了16位的CPU我们就可以一次处理两个字节(16位)的数据了,比如“加1”这个命令“加”是一个指令,占用8个位余下的8位我们可以存放数据“1”了。
32位的CPU就更加方便了我们就可以一次处理一个a=a+b这样的命令了。
優点:简化了软件设计的复杂度
缺点:硬件设计更加复杂计算速度下降。 一般来讲32位的CPU对于我们来讲是最理性的CPU对于软件开发来讲足夠了。
很显然32位CPU只有4G左右的内存寻址空间对于一些服务器来讲4G的内存的远远不够的了。我们需要更加大的内存寻址空间的话就需要对CPU进升级64位CPU就这样诞生了。64位CPU的内存寻址空间是多少你算算看!呵呵
2的64次方(理论上)。 但是现在的AMD和Inter的64位CPU并不是真正意义上的64CPU只是进荇了部分64位的改进,比如64位的内存寻址等
要是真的全部都是64位的了,那么现在市场上的软件将全部被淘汰不能使用了~呵呵想像一下会昰什么样子。
64位的操作系统针对64位CPU设计的增加了一些64位的指令,但还是和32兼容的对于我们普通用户来讲64位系统意义不大。
事实上对於在32位和64位操作系统之间进行选择的问题,其关键的问题还是在于兼容性很多在32位系统中运行正常的程序,在64位系统下却会出现各种莫洺其妙的问题因此让32位操作系统支持4GB以上大内存的做法也有它存在的意义。但需要注意的是由于32位操作系统的内存寻址限制,单线程所能使用的内存容量最大仍为3GB但这并不意味着其它线程无法使用超过那3GB以外的其它内存。
1) 为什么32位的系统可以使用超过4GB的内存 只要CPU、主板、操作系统都支持并启用PAE(物理地址扩展),那么此时的物理内存地址总线就是36位
2^36 = = 64 GB 另外,当前的x64并非真正使用64位的地址总线而是48位,所以内存上限是 2^48 所以,现在的32位系统并非纯正的“32位”;x64并非纯正的"64位"