Chinaunix首页 | 论坛 | 博客
  • 博客访问: 619
  • 博文数量: 2
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 25
  • 用 户 组: 普通用户
  • 注册时间: 2020-03-20 13:50
文章分类
文章存档

2020年(2)

我的朋友
最近访客

分类: LINUX

2020-03-21 11:07:20

一.下面说下x86、x86_64以及AMD64
1.x86
    x86时指intel开发的一种32位指令集,从386时代开始,一直沿用至今,是一种cisc指令集,所有intel早起的CPU以及arm早起的CPU都支持这种指令集,intel官方文档里面称为IA-32。

2.x86_64
    x86_64是x86CPU开始迈向64位的时候诞生的,它有两种选择:1、向下兼容x86。2、完全重新设计指令集,不兼容x86。AMD横空插了一脚,比Intel率先制造出了商用的兼容x86的CPU,AMD称之为AMD64,抢了64位pc的第一桶金,得到了用户的认同。而Intel选择了设计了一种不兼容x86的全新64位指令集,称之为IA-64,但是比AMD晚了一步,而且IA-64也挺惨淡的,因为是全新设计的CPU,没有编译器,也不支持Windows(微软把intel给忽悠了,承诺会出相关版本,但迟迟未有未有)。后来不得不在时机落后的情况下也开始支持AMD64的指令集,但是换了个名字,叫x86_64,表示是x86指令集的64位扩展,大概是不愿意承认这玩意是AMD设计出来的。

3.小总结一下:
    也就是说实际上,x86_64、x64、AMD64基本是同一个东西,我们现在用的Intel/amd的桌面级CPU基本上都是x86_64,与之相对的arm,ppc等都不是x86_64。
    x86、x86_64主要的区别就是32位和64位的问题,x86中只有8个32位通用寄存器,eax,ebx,ecx,edx,ebp,esp,esi,edi。x86_64 把这8个通用寄存器扩展成了64位的,并且比x86增加了若干个寄存器。同样的MMX 的寄存器的位数和数量也进行了扩展。此处CPU扩展到64位后也能支持更多的内存了,等等许多好处。
    对于普通程序来说,CPU位数的扩展、寄存器数量的增加不会带来明显的性能提升,比如IE浏览器、Office办公这类的软件。特定的程序很能够充分利用64位CPU、更多的寄存器带来的优势,比如MMX除了能提升多媒体程序的性能,对矩阵,多项式,向量计算都能带来提升,更多的MMX寄存器、更大的寄存器字长都有利于SIMD指令的执行,能够提升CPU对数据的吞吐量(RISC指令集的CPU动不动就有数百个寄存器,可以有效的缓存中间计算结果,不需要把中间结果写入内存,从而减少内存访问次数,显著提升性能)。

二.有关Linux系统的指令
查看内核版本命令:
1.cat /proc/version
2.uname -r
3.uname -a
查看Linux版本:
1.lsb_release -a
2.cat /etc/issue
3.file /bin/cat
4.file /bin/bash
Linux内核版本信息说明:稳定版和开发版。Linux内核版本号有三个数字组成:r,x,y
r:目前发布的内核主版本
x: 偶数表示稳定版本;奇数表示开发版本。
y:错误修补的次数。
例如:4.19.0-6-amd64
r: 4,主版本号
x:19,此版本号。表示开发版
y:0,修订版本号,表示修改的次数,头两个数字合在一起可以描述内核系列。如开发版的4.19.0,它是4.19版内核系列。






阅读(157) | 评论(0) | 转发(0) |
0

上一篇:Debian系统日志

下一篇:没有了

给主人留下些什么吧!~~