/proc/目录
/proc/ 目录显示的是该系统的硬件信息,一共有:
cpu 有关信息
cpu有关信息记录在/proc/cpuInfo中,内容很多,我们可以简单查看我们需要的信息;
物理CPU数(physical id)
主板上实际插入的cpu数量,可以数不重复的 physical id 有几个
CPU核心数(cpu cores)
单块CPU上面能处理数据的芯片组的数量,如双核、四核等
逻辑CPU数:
一般情况下,
逻辑CPU=物理CPU个数×每颗核数 #不支持超线程技术或没有开启次技术
逻辑CPU=物理CPU个数×每颗核数 *2 #表示服务器的CPU支持超线程技术(简单来说,它可使处理器中的1 颗内核如2 颗内核那样在操作系统中发挥作用。这样一来,操作系统可使用的执行资源扩大了一倍,大幅提高了系统的整体性能)
下面对cpuInfo进行相应解释
processor :系统中逻辑处理核心数的编号,从0开始排序。
vendor_id :CPU制造商
cpu family :CPU产品系列代号
model :CPU属于其系列中的哪一代的代号
model name:CPU属于的名字及其编号、标称主频
stepping :CPU属于制作更新版本
cpu MHz :CPU的实际使用主频
cache size :CPU二级缓存大小
physical id :单个物理CPU的标号
siblings :单个物理CPU的逻辑CPU数。siblings=cpu cores [*2]。
core id :当前物理核在其所处CPU中的编号,这个编号不一定连续。
cpu cores :该逻辑核所处CPU的物理核数。比如此处cpu cores 是4个,那么对应core id 可能是 1、3、4、5。
apicid :用来区分不同逻辑核的编号,系统中每个逻辑核的此编号必然不同,此编号不一定连续
fpu :是否具有浮点运算单元(Floating Point Unit)
fpu_exception :是否支持浮点计算异常
cpuid level :执行cpuid指令前,eax寄存器中的值,根据不同的值cpuid指令会返回不同的内容
wp :表明当前CPU是否在内核态支持对用户空间的写保护(Write Protection)
flags :当前CPU支持的功能
bogomips:在系统内核启动时粗略测算的CPU速度(Million Instructions Per Second
clflush size :每次刷新缓存的大小单位
cache_alignment :缓存地址对齐单位
address sizes :可访问地址空间位数
power management :对能源管理的支持
查询系统有几颗物理CPU
cat /proc/cpuinfo | grep “physical id” |sort |uniq|wc -l
查询系统每颗物理CPU的核心数
cat /proc/cpuinfo | grep “cpu cores” | uniq
每颗物理CPU核心是否启用超线程技术。
如果启用此技术那么,每个物理核心又可分为两个逻辑处理器
cat /proc/cpuinfo | grep -e “cpu cores” -e “siblings” | sort | uniq
如果cpu cores数量和siblings数量一致,则没有启用超线程,否则超线程被启