linux cpu运行模式,Linux上的32位,64位CPU操作模式
lscpu告诉您您的架构是i686(Intel 32位CPU),并且您的CPU支持32位和64位操作模式。您将无法安装x64构建的应用程序,因为它们是专门为x64体系结构构建的。
您的特定CPU可以处理i386或i686内置软件包。有多种方法可以验证您的体系结构和操作系统首选项。
您已经知道,可以使用命令lscpu。它可以很好地让您大致了解CPU的功能。
$ lscpu
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
CPU(s): 4
Thread(s) per core: 2
Core(s) per socket: 2
CPU socket(s): 1
NUMA node(s): 1
Vendor ID: GenuineIntel
CPU family: 6
Model: 37
Stepping: 5
CPU MHz: 1199.000
Virtualization: VT-x
L1d cache: 32K
L1i cache: 32K
L2 cache: 256K
L3 cache: 3072K
NUMA node0 CPU(s): 0-3
实际上,这是大多数工具(例如 lscpu用于显示)。我发现此输出有点不错,因为它向您显示了有关特定CPU的型号信息。它还会为您显示CPU可能具有的每个内核的一部分。
这是单核的输出:
$ cat /proc/cpuinfo
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 37
model name : Intel(R) Core(TM) i5 CPU M 560 @ 2.67GHz
stepping : 5
cpu MHz : 1466.000
cache size : 3072 KB
physical id : 0
siblings : 4
core id : 0
cpu cores : 2
apicid : 0
initial apicid : 0
fpu : yes
fpu_exception : yes
cpuid level : 11
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 popcnt aes lahf_lm ida arat tpr_shadow vnmi flexpriority ept vpid
bogomips : 5319.74
clflush size : 64
cache_alignment : 64
address sizes : 36 bits physical, 48 bits virtual
power management:
这是一个核心的每个部分的前3行:
$ grep processor -A 3 /proc/cpuinfo
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 37
--
processor : 1
vendor_id : GenuineIntel
cpu family : 6
model : 37
--
processor : 2
vendor_id : GenuineIntel
cpu family : 6
model : 37
--
processor : 3
vendor_id : GenuineIntel
cpu family : 6
model : 37
的输出/proc/cpuinfo还可以通过显示的各种标志告诉您CPU提供的体系结构类型。请注意上述命令中的这些行:
$ grep /proc/cpuinfo | head -1
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 popcnt aes lahf_lm ida arat tpr_shadow vnmi flexpriority ept vpid
结尾的标志_lm告诉您处理器支持“长模式”。长模式是64位的另一个名称。
此命令可用于确定构建内核以支持的平台。例如:
64位内核
$ uname -a
Linux grinchy 2.6.35.14-106.fc14.x86_64 #1 SMP Wed Nov 23 13:07:52 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux
32位内核
$ uname -a
Linux skinner.bubba.net 2.6.18-238.19.1.el5.centos.plus #1 SMP Mon Jul 18 10:07:01 EDT 2011 i686 i686 i386 GNU/Linux
该输出还可以使用开关,被细化了一下[-m|--machine],[-p|--processor]和[-i|--hardware-platform]。
这是上述相同系统的输出。
64位
$ uname -m; uname -p; uname -i
x86_64
x86_64
x86_64
32位
$ uname -m; uname -p; uname -i
i686
i686
i386
注意:还有一个简短版本uname -m,您可以将其作为独立命令运行arch。它返回与完全相同的东西uname -m。您可以arch在coreutils文档中阅读有关该命令的更多信息。
摘抄
arch打印机器硬件名称,等效于'uname -m'。
可能是分析硬件的最佳工具 hwinfo。此软件包可以直接从终端向您展示几乎所有您想要/需要的有关硬件的任何信息。当我需要系统主板上的某个芯片上的一些信息或需要了解PCI插槽中的板的版本时,这为我节省了数十倍的时间。
您可以针对计算机的不同子系统查询它。在我们的案例中,我们将研究cpu子系统。
$ hwinfo --cpu
01: None 00.0: 10103 CPU
[Created at cpu.301]
Unique ID: rdCR.a2KaNXABdY4
Hardware Class: cpu
Arch: X86-64
Vendor: "GenuineIntel"
Model: 6.37.5 "Intel(R) Core(TM) i5 CPU M 560 @ 2.67GHz"
Features: fpu,vme,de,pse,tsc,msr,pae,mce,cx8,apic,sep,mtrr,pge,mca,cmov,pat,pse36,clflush,dts,acpi,mmx,fxsr,sse,sse2,ss,ht,tm,pbe,syscall,nx,rdtscp,lm,constant_tsc,arch_perfmon,pebs,bts,rep_good,xtopology,nonstop_tsc,aperfmperf,pni,pclmulqdq,dtes64,monitor,ds_cpl,vmx,smx,est,tm2,ssse3,cx16,xtpr,pdcm,sse4_1,sse4_2,popcnt,aes,lahf_lm,ida,arat,tpr_shadow,vnmi,flexpriority,ept,vpid
Clock: 2666 MHz
BogoMips: 5319.74
Cache: 3072 kb
Units/Processor: 16
Config Status: cfg=new, avail=yes, need=no, active=unknown
再次,类似于/proc/cpuinfo此命令,将向您显示多核系统中每个单个核的组成。这是核心每个部分的第一行,仅供您参考。
$ hwinfo --cpu | grep CPU
01: None 00.0: 10103 CPU
Model: 6.37.5 "Intel(R) Core(TM) i5 CPU M 560 @ 2.67GHz"
02: None 01.0: 10103 CPU
Model: 6.37.5 "Intel(R) Core(TM) i5 CPU M 560 @ 2.67GHz"
03: None 02.0: 10103 CPU
Model: 6.37.5 "Intel(R) Core(TM) i5 CPU M 560 @ 2.67GHz"
04: None 03.0: 10103 CPU
Model: 6.37.5 "Intel(R) Core(TM) i5 CPU M 560 @ 2.67GHz"
这可能是告诉您的CPU向OS展示哪种体系结构的最明显的方法。利用getconf,您查询系统变量LONG_BIT。这不是环境变量。
# 64-bit system
$ getconf LONG_BIT
64
# 32-bit system
$ getconf LONG_BIT
32
另一个工具,功能类似于hwinfo。您可以查询有关底层硬件的几乎所有信息。例如:
# 64-bit Kernel
$ lshw -class cpu
*-cpu
description: CPU
product: Intel(R) Core(TM) i5 CPU M 560 @ 2.67GHz
vendor: Intel Corp.
physical id: 6
bus info: cpu@0
version: Intel(R) Core(TM) i5 CPU M 560 @ 2.67GHz
slot: None
size: 1199MHz
capacity: 1199MHz
width: 64 bits
clock: 133MHz
capabilities: fpu fpu_exception wp vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp x86-64 constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 popcnt aes lahf_lm ida arat tpr_shadow vnmi flexpriority ept vpid cpufreq
configuration: cores=2 enabledcores=2 threads=4
# 32-bit Kernel
$ lshw -class cpu
*-cpu:0
description: CPU
product: Intel(R) Core(TM)2 CPU 4300 @ 1.80GHz
vendor: Intel Corp.
physical id: 400
bus info: cpu@0
version: 6.15.2
serial: 0000-06F2-0000-0000-0000-0000
slot: Microprocessor
size: 1800MHz
width: 64 bits
clock: 800MHz
capabilities: boot fpu fpu_exception wp vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe x86-64 constant_tsc pni monitor ds_cpl est tm2 ssse3 cx16 xtpr lahf_lm
configuration: id=1
*-logicalcpu:0
description: Logical CPU
physical id: 1.1
width: 64 bits
capabilities: logical
*-logicalcpu:1
description: Logical CPU
physical id: 1.2
width: 64 bits
capabilities: logical
CPU操作模式?
一些命令报告说,看起来像32位CPU支持32位和64位模式。这可能会造成一些混乱和误导,但是如果您了解CPU的历史(特别是Intel),就会知道他们有使用其产品玩游戏的历史,其中CPU的指令集可能支持16位,但可以处理2 ^ 16以上的RAM。
这些CPU发生了同样的事情。大多数人都知道32位CPU只能寻址2 ^ 32 = 4GB RAM。但是有些版本的CPU可以解决更多问题。这些CPU通常会使用带有后缀PAE的Linux内核-物理地址扩展。将启用了PAE的内核与此硬件一起使用将允许您在32位系统上寻址多达64GB。
您可能会认为,然后为什么我需要64位体系结构?这些CPU的问题是单个进程空间限制为2 ^ 32,因此,如果您有一个大型仿真或计算程序,需要的RAM中的可寻址空间超过2 ^ 32,那么这对您没有帮助。接着就,随即。
看看P6微体系结构(i686)上的Wikipedia页面获取更多信息。
TL; DR-那么我的CPU架构到底是什么?
通常,由于上面的许多命令和方法正在松散地使用术语“体系结构”,因此可能会造成混淆。如果您对基础操作系统是32位还是64位感兴趣,请使用以下命令:
lscpu
getconf LONG_BIT
ame
另一方面,如果您想了解CPU的体系结构,请使用以下命令:
/ proc / cpuinfo
资讯网
sh
具体来说,如果您使用的是lshw,则需要查找显示“ width:64”或“ width:32”之类的字段,或者查找标志:
lm:长模式(x86-64:amd64,也称为Intel 64,即支持64位)
lahf_lm:长模式下的LAHF / SAHF
这两个标志的出现告诉您CPU是64位的。他们的缺席告诉您它是32位。
有关CPU标志的更多信息,请参见这些URL。
参考文献
手册页
文章:
linux cpu运行模式,Linux上的32位,64位CPU操作模式相关推荐
- linux内核学习之三:linux中的32位与64位
linux内核学习之三:linux中的"32位"与"64位" 在通用PC领域,不论是windows还是linux界,我们都会经常听到"32位" ...
- Sublime Text 2 - 性感无比的代码编辑器!程序员必备神器!跨平台支持Win/Mac/Linux,支持32与64位,支持各种流行编程语言的语法高亮、代码补全等...
Sublime Text 2 - 性感无比的代码编辑器!程序员必备神器!跨平台支持Win/Mac/Linux,支持32与64位,支持各种流行编程语言的语法高亮.代码补全等-- 语法高亮.代码提示补全. ...
- 32位uefi引导64位Linux,维护版win8pe(32位+64位+纯64位,支持BIOS+EFI)
此文件包的ISO格式,下载后解压即可得到ISO文件. 本合盘启动方式支持BIOS+32位EFI+64位EFI启动.写入方式支持量产,刻盘,B+,U+(不隐藏.普通隐藏.高端隐藏).最大化支持新老机型启 ...
- linux服务端 完美世界 下载,【网游单机架设】【完美世界之荣耀与新生151v101一键端】【32位+64位】【永久】...
2014-03-29 14-04-07.jpg (114.36 KB, 下载次数: 76) 2014-3-30 17:57 上传 2014-03-29 14-04-33.jpg (100.99 KB, ...
- 中文输入法 linux 下载64位,最新搜狗输入法linux版v2.2.0.0108 官方版(32位+64位)下载地址电脑版-锐品软件...
快速精准,更加出色!搜狗输入法linux版全新发布!提供了模糊拼音.最新词库.云端输入.自动纠错.多彩皮肤.长词联想.网址输入.简繁切换等功能,本站提供了32位+64位搜狗linux输入法下载,请根据 ...
- matlab 32和64,在32或64位matlab上运行?
32对64位的问题实际上是一个红色的鲱鱼.如果我理解正确,您需要确定需要哪组已编译的MEX文件,以便您可以适当地设置路径.为此,您可以使用mexext函数: >> help mexext ...
- jdk32位连不上oracle64位,64位 jdk 读取32位dll
执行上面的测试代码,发现使用 32 位的 JDK 通过配置的 testodbc 数据源 (32 位的驱动程序)能够正常的连接到 64 位的数据库,如下图所示. 这个场景并不完全真实,只是我个人的一个联 ...
- CPU、操作系统的32位与64位
我们经常听说操作32位和64位,今天就和大家分享一下32位和64位的知识! 一.Windows操作系统32位与6位的区别 32位.64位操作系统又叫Windows X86和Windows X64. 1 ...
- uefi怎么念_UEFI模式和32位64位系统安装的简单说明
UEFI模式和32位64位系统安装的简单说明 2018-11-23 最近见到了很多关于UEFI的说明,虽然这东西出来好久了,但是自己一直没有用上,有UEFI的系统上装系统牵扯到三个方面的问题! 第一: ...
- 在cmd指令看计算机位数,在.cmd中使用Windows命令来测试32位或64位并运行命令
我正在编写一个脚本,用于查找注册表值并将该值返回给Windows命令提示符屏幕,并将其添加到.txt文件中.我到了需要测试的位置,看看机器是32位还是64位,这样我才知道使用哪个命令来查找我在注册表中 ...
最新文章
- mysql数据库as表恢复_使用flashback database找回被误删除表空间
- python之while循环用法举例,break与continue的区别,格式化输出及运算符
- plsql job执行多个存储过程_spring-boot-micro-job一款分布式任务调度执行框架
- 【原】基础篇:第一篇,本节主要向大家介绍Ext的最基础的话题
- 建设IPTV电视系统是否有必要?
- C语言 回调函数 produce(arr,len,getRand)
- 获取进程或线程的ID以及句柄信息
- asp.net 在线 mp3,wma, avi
- 如何在Ubuntu 18.04上安装/卸载NodeJS
- Linux中yum使用教程,linux中关于yum使用
- 一例WINDOWS系统上的JAVA UI卡死
- 数据清理中,处理缺失值的方法
- mysql表的拆分,外键的添加,删除,级联操作
- ue小知识点 动画蓝图 ABP的 begin、init和Character的posses的先后
- Debian设置合上笔记本盖子不休眠
- 如何修复excel文件损坏
- 计算机编写代码简介,Vcomputer简介
- 2.1-2.15笔记
- “狼来了”的VR风,占领不了的客厅
- DM8 roll.dbf损坏修复