4、32/64位操作系统中32/64是什么意思?他与32/64cpu又是什么关系?
内存作为1个存储数据的存在, 有1个很重要的特性, 就是内存里的数据能被cpu直接访问
cpu能不能直接访问硬盘的数据呢, 不能。 只能通过把硬盘的数据先放到内存里, 然后再从内存里访问硬盘的数据
cpu每一次只能访问1个byte, 而不能单独去访问具体的1个小格子(bit)
32/64位cpu中32/64是什么意思?
所谓32位cpu就是1个时钟周期内能并行处理32位数据,也就是4个字节的数据, 64位以此类推。
时钟周期是计算机中最基本的、最小的时间单位。在一个时钟周期内,CPU仅完成一个最基本的动作。
下面我们来了解一下CPU的内部构造:
32cpu 地址总线是32位,代表cpu的寻址能力 2的32次方=4G 最大内识别4G内存条地址。32位cpu的数据总线是32位 一次性读取内存条4Byte的数据,内存条的保存数据最小单位是Byte 而不是Bit。
32位cpu 地址总线是32或者36根,数据总线也是32根。64位cpu 地址总线是40或64根,数据总线也是64根
详细地址:https://www.cnblogs.com/ITPower/p/13538996.html
64 位相比 32 位 CPU 的优势主要体现在两个方面:
- 64 位 CPU 可以一次计算超过 32 位的数字,而 32 位 CPU 如果要计算超过 32 位的数字,要分多步骤进行计算,效率就没那么高,但是大部分应用程序很少会计算那么大的数字,所以只有运算大数字的时候,64 位 CPU 的优势才能体现出来,否则和 32 位 CPU 的计算性能相差不大。
- 64 位 CPU 可以寻址更大的内存空间,32 位 CPU 最大的寻址地址是 4G,即使你加了 8G 大小的内存,也还是只能寻址到 4G,而 64 位 CPU 最大寻址地址是
2^64
,远超于 32 位 CPU 最大寻址地址的2^32
。
衡量一个cpu的指标:
1、主频
2、核数
3、线程数
64 位和 32 位软件,实际上代表指令是 64 位还是 32 位的:
- 如果 32 位指令在 64 位机器上执行,需要一套兼容机制,就可以做到兼容运行了。但是如果 64 位指令在 32 位机器上执行,就比较困难了,因为 32 位的寄存器存不下 64 位的指令;
- 操作系统其实也是一种程序,我们也会看到操作系统会分成 32 位操作系统、64 位操作系统,其代表意义就是操作系统中程序的指令是多少位,比如 64 位操作系统,指令也就是 64 位,因此不能装在 32 位机器上。
总之,硬件的 64 位和 32 位指的是 CPU 的位宽,软件的 64 位和 32 位指的是指令的位宽。
总线分为cpu片内总线,cpu片外总线。片内总线即芯片内部总线,指在CPU内部各寄存器、算术逻辑部件ALU,控制部件以及内部高速缓冲存储器之间传输数据所用的总线。
片外总线 指用来连接各种外设控制芯片,如主板上的I/O控制器(如硬盘接口控制器、软盘驱动控制器、串行/并行接口控制器等),和键盘控制器,包括外部地址线(XAB)、外部数据线(XMB)和外部控制线(XCB)。