1. 程式人生 > >Linux下如何檢視CPU型號、個數、核數、邏輯CPU數、位數、發行版本、核心資訊、記憶體、伺服器生產廠家

Linux下如何檢視CPU型號、個數、核數、邏輯CPU數、位數、發行版本、核心資訊、記憶體、伺服器生產廠家

【原文連結】:http://blog.csdn.net/mdx20072419/article/details/7767809

http://blog.chinaunix.net/uid-22425237-id-3496577.html

-------------------------------------------------------------------------------------------------------------------------------------------------------------

# 總核數 = 物理CPU個數 X 每顆物理CPU的核數 
# 總邏輯CPU數 
= 物理CPU個數 X 每顆物理CPU的核數 X 超執行緒數 # 檢視物理CPU個數 cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l # 檢視每個物理CPU中core的個數(即核數) cat /proc/cpuinfo| grep "cpu cores"| uniq # 檢視邏輯CPU的個數 cat /proc/cpuinfo| grep "processor"| wc -l

 檢視CPU資訊(型號)
cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c

 檢視各個物理CPU上面封裝的邏輯處理器(即超執行緒後的CPU)個數


cat /proc/cpuinfo | grep siblings 

檢視內 存資訊
# cat /proc/meminfo


-------------------------------------------------------------------------------------------------------------------------------------------------------------

檢視邏輯CPU個數:

#cat /proc/cpuinfo |grep "processor"|sort -u|wc -l
24

檢視物理CPU個數:

#grep "physical id" /proc/cpuinfo|sort -u|wc -l                   
2

#grep "physical id" /proc/cpuinfo|sort -u                   
physical id     : 0
physical id     : 1

檢視CPU核心數:

#grep "core id" /proc/cpuinfo|sort -u|wc -l                   
8

 

檢視每個物理CPU核心個數:

#grep "cpu cores" /proc/cpuinfo|uniq
cpu cores       : 6

每個物理CPU上邏輯CPU個數:

#grep "siblings" /proc/cpuinfo|uniq
siblings        : 12

判斷是否開啟了超執行緒:

如果多個邏輯CPU的"physical id"和"core id"均相同,說明開啟了超執行緒

或者換句話說

 邏輯CPU個數 > 物理CPU個數 * CPU核心數   開啟了超執行緒

 邏輯CPU個數 = 物理CPU個數 * CPU核心數   沒有開啟超執行緒

一次性查詢所有資訊:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 #!/bin/bash physicalNumber=0 coreNumber=0 logicalNumber=0 HTNumber=0 logicalNumber=$(grep"processor"/proc/cpuinfo|sort-u|wc-l) physicalNumber=$(grep"physical id" /proc/cpuinfo|sort-u|wc-l) coreNumber=$(grep"cpu cores" /proc/cpuinfo|uniq|awk-F':''{print $2}'|xargs) HTNumber=$((logicalNumber / (physicalNumber * coreNumber))) echo"****** CPU Information ******" echo"Logical CPU Number  : ${logicalNumber}" echo"Physical CPU Number : ${physicalNumber}" echo"CPU Core Number     : ${coreNumber}" echo"HT Number           : ${HTNumber}" echo"*****************************"

執行結果:

#./cpuinfo  
****** CPU Information ******
Logical CPU Number  : 24
Physical CPU Number : 2
CPU Core Number     : 6
HT Number           : 2
*****************************


-------------------------------------------------------------------------------------------------------------------------------------------------------------

檢視當前作業系統核心資訊
# uname -a

Linux redcat 2.6.31-20-generic #58-Ubuntu SMP Fri Mar 12 05:23:09 UTC 2010 i686 GNU/Linux

檢視當前作業系統發行版資訊

#cat /etc/issue
Ubuntu 9.10 /n /l

1) 登入到伺服器執行 lsb_release -a ,即可列出所有版本資訊,例如: [email protected]:/proc> lsb_release -a
LSB Version:    core-2.0-noarch:core-3.0-noarch:core-2.0-ia32:core-3.0-ia32:graphics-2.0-ia32:graphics-2.0-noarch:graphics-3.0-ia32:graphics-3.0-noarch
Distributor ID: SUSE LINUX
Description:    SUSE LINUX Enterprise Server 9 (i586)
Release:        9
Codename:       n/a 注:這個命令適用於所有的linux,包括Redhat、SuSE、Debian等發行版。

檢視cpu型號

cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
2  Intel(R) Core(TM)2 Duo CPU     P8600  @ 2.40GHz
(看到有2個邏輯CPU, 也知道了CPU型號)

檢視cpu執行模式

# getconf LONG_BIT

32

(說明當前CPU執行在32bit模式下, 但不代表CPU不支援64bit)

檢視cpu是否支援64bit

# cat /proc/cpuinfo | grep flags | grep ' lm ' | wc -l

2

(結果大於0, 說明支援64bit計算. lm指long mode, 支援lm則是64bit)

檢視cpu資訊概要(昨天看aix的時候剛發現的,在ubuntu上竟然也有~):

#lscpu

Architecture:          i686                            #架構686
CPU(s):                2                                   #邏輯cpu顆數是2
Thread(s) per core:    1                           #每個核心執行緒數是1                 
Core(s) per socket:    2                           #每個cpu插槽核數/每顆物理cpu核數是2
CPU socket(s):         1                            #cpu插槽數是1
Vendor ID:             GenuineIntel           #cpu廠商ID是GenuineIntel
CPU family:            6                              #cpu系列是6
Model:                 23                                #型號23
Stepping:              10                              #步進是10
CPU MHz:               800.000                 #cpu主頻是800MHz
Virtualization:        VT-x                         #cpu支援的虛擬化技術VT-x(對此在下一博文中解釋下http://hi.baidu.com/sdusoul/blog/item/5d8e0488def3a998a5c272c0.html)
L1d cache:             32K                         #一級快取32K(google了下,這具體表示表示cpu的L1資料快取為32k)
L1i cache:             32K                          #一級快取32K(具體為L1指令快取為32K)
L2 cache:              3072K                      #二級快取3072K

最後來個大而全的:

#cat /proc/cpuinfo

processor    : 0
vendor_id    : GenuineIntel
cpu family    : 6
model        : 23
model name    : Intel(R) Core(TM)2 Duo CPU     P8600  @ 2.40GHz
stepping    : 10
cpu MHz        : 800.000
cache size    : 3072 KB
physical id    : 0
siblings    : 2
core id        : 0
cpu cores    : 2
apicid        : 0
initial apicid    : 0
fdiv_bug    : no
hlt_bug        : no
f00f_bug    : no
coma_bug    : no
fpu        : yes
fpu_exception    : yes
cpuid level    : 13
wp        : yes
flags        : fpu 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 nx lm constant_tsc arch_perfmon pebs bts pni dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 xsave lahf_lm ida tpr_shadow vnmi flexpriority
bogomips    : 4788.60
clflush size    : 64
power management:

processor    : 1
vendor_id    : GenuineIntel
cpu family    : 6
model        : 23
model name    : Intel(R) Core(TM)2 Duo CPU     P8600  @ 2.40GHz
stepping    : 10
cpu MHz        : 800.000
cache size    : 3072 KB
physical id    : 0
siblings    : 2
core id        : 1
cpu cores    : 2
apicid        : 1
initial apicid    : 1
fdiv_bug    : no
hlt_bug        : no
f00f_bug    : no
coma_bug    : no
fpu        : yes
fpu_exception    : yes
cpuid level    : 13
wp        : yes
flags        : fpu 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 nx lm constant_tsc arch_perfmon pebs bts pni dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 xsave lahf_lm ida tpr_shadow vnmi flexpriority
bogomips    : 4787.96
clflush size    : 64
power management:

補充,linux下通過c獲取CPU個數資訊

#include<stdio.h>
#include<unistd.h>

int main()
{
int cpu_num;

cpu_num = sysconf(_SC_NPROCESSORS_CONF);
printf("_SC_NPROCESSORS_CONF=%d/n",cpu_num);

cpu_num = sysconf(_SC_NPROCESSORS_ONLN);
printf("_SC_NPROCESSORS_ONLN=%d/n",cpu_num);

return 0;
}

/* 
* - _SC_NPROCESSORS_CONF
*       The number of processors configured.

* - _SC_NPROCESSORS_ONLN
*       The number of processors currently online (available).
*/


Linux下獲得CPU個數一個簡單方法就是檢視/proc/cpuinfo檔案。看出現processor字樣的行數是多少條,即有多少個邏輯CPU(包括多核,超執行緒)。
因此cmd下輸入下面命令即可:
cat /proc/cpuinfo | grep processor | wc -l
因此c++程式中很自然的想到使用strstr函式查詢processor關鍵詞出現次數即可。

檢視伺服器型號(或者是生產廠家):
      #dmidecode | grep "Product Name"  
      Product Name: PowerEdge R710
      Product Name: 0VWN1R

#dmidecode -t system


檢視網絡卡資訊:
      #dmesg | grep -i eth 
      Broadcom NetXtreme II Gigabit Ethernet Driver bnx2 v1.9.3 (March 17, 2009)
      eth0: Broadcom NetXtreme II BCM5709 1000Base-T (C0) PCI Express found at mem d6000000, IRQ 106, node addr a4badb28c33d
      eth1: Broadcom NetXtreme II BCM5709 1000Base-T (C0) PCI Express found at mem d8000000, IRQ 114, node addr a4badb28c33f
      eth2: Broadcom NetXtreme II BCM5709 1000Base-T (C0) PCI Express found at mem da000000, IRQ 122, node addr a4badb28c341
      eth3: Broadcom NetXtreme II BCM5709 1000Base-T (C0) PCI Express found at mem dc000000, IRQ 130, node addr a4badb28c343
      cnic: Added CNIC device: eth0
      cnic: Added CNIC device: eth1
      cnic: Added CNIC device: eth2
      cnic: Added CNIC device: eth3
      bnx2: eth0: using MSIX
      ADDRCONF(NETDEV_UP): eth0: link is not ready
      bnx2i: iSCSI not supported, dev=eth0
      bnx2i: iSCSI not supported, dev=eth0
      bnx2: eth0 NIC Copper Link is Up, 1000 Mbps full duplex
      ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
      eth0: no IPv6 routers present
      process `sysctl' is using deprecated sysctl (syscall) net.ipv6.neigh.eth0.base_reachable_time; Usenet.ipv6.neigh.eth0.base_reachable_time_ms instead.

相關推薦

如何在linux 檢視裝置 型號,屬性

系統# uname -a # 檢視核心/作業系統/CPU資訊# head -n 1 /etc/issue # 檢視作業系統版本# cat /proc/cpuinfo # 檢視CPU資訊# hostname # 檢視計算機名# lspci -tv # 列出所有PCI裝置# l

Linux如何檢視CPU型號個數邏輯CPU位數發行版本核心資訊記憶體伺服器生產廠家

【原文連結】:http://blog.csdn.net/mdx20072419/article/details/7767809 http://blog.chinaunix.net/uid-22425237-id-3496577.html ---------------

Linux作業系統檢視CPU型號個數邏輯CPU位數發行版本核心資訊記憶體伺服器生產廠家

Linux下的CPU資訊全部都在/proc/cpuinfo這個檔案中,可以直接開啟看。  # 總核數 = 物理CPU個數 X 每顆物理CPU的核數 # 總邏輯CPU數 = 物理CPU個數 X 每顆物理CPU的核數 X 超執行緒數 判斷是否開啟了超執行緒: 如果多個邏輯CP

linux檢視CPU個數執行模式以及是否支援超執行緒技術

1.檢視物理CPU個數 #cat /proc/cpuinfo |grep "physical id"|sort |uniq|wc -l 執行結果:1 2.檢視邏輯CPU個數 #cat /proc/cpuinfo |grep "processor"|wc -l 執行結果:

Linux檢視CPU記憶體和硬碟型號及相關資訊命令

smartctl version 5.33 [i386-redhat-linux-gnu] Copyright (C) 2002-4 Bruce Allen Home page is http://smartmontools.sourceforge.net/ === START OF INFORMATION

Linux檢視記憶體型號主機板硬碟等等

首先檢視是否安裝了dmidecode工具 [[email protected] ~]# dmidecode Linux 檢視記憶體的插槽數,已經使用多少插槽.每條記憶體多大: [[email protected] ~]# dmidecode|grep -

linux檢視CPU記憶體磁碟資訊,資料夾資訊,GPU資訊

1、檢視CPU資訊 # 總核數 = 物理CPU個數 X 每顆物理CPU的核數  # 總邏輯CPU數 = 物理CPU個數 X 每顆物理CPU的核數 X 超執行緒數 # 檢視物理CPU個數 cat /proc/cpuinfo| grep "physical id"| sort| uniq| w

LINUX檢視CPU記憶體使用率的命令

1.top 使用許可權:所有使用者 使用方式:top [-] [d delay] [q] [c] [S] [s] [i] [n] [b] 說明:即時顯示process的動態 d :改變顯示的更新速度,或是在交談式指令列( interactive command)按s

linux檢視cpu記憶體和硬碟大小

轉載至:http://blog.sina.com.cn/s/blog_535aa0930100ltz8.html 查cpu #dmesg |grep -i xeon CPU0: Intel(R) Xeon(R) CPU           E5520  @ 2.27G

Linux檢視CPU記憶體佔用率

我們經常需要檢視CPU和記憶體佔用率,否則一旦存在情況很快就會有IDC(或客戶)找上門,Linux上檢視資源使用情況有多種命令可以參考,CPU、記憶體、IO、NETWORK等資源使用情況都可以通過某些命令查詢到,本文只說CPU/記憶體及簡單的問題追蹤方法。一、top檢視Linux資源佔用情況top命令可以檢視

linux檢視最消耗CPU記憶體的程序

1.CPU佔用最多的前10個程序:  ps auxw|head -1;ps auxw|sort -rn -k3|head

Linux檢視檔案和資料夾佔用記憶體大小刪除日誌 命令

轉:https://www.cnblogs.com/lixuwu/p/5944062.html 閱讀目錄 1 Linux下檢視檔案和資料夾大小 2 刪除系統日誌等 3 實踐 場景:在sts中執行自動部署時候maven提示No space left on d

linuxLinux檢視CPU型號,記憶體大小,硬碟空間的命令(詳解)

1 檢視CPU 1.1 檢視CPU個數 # cat /proc/cpuinfo | grep "physical id" | uniq | wc -l 2 **uniq命令:刪除重複行;wc –l命令:統計行數** 1.2 檢視CPU核數 # cat /proc/c

Linux檢視可執行檔案動態庫的ELF頭等資訊

      用法: readelf <option(s)> elf-file(s)       作用: 和Windows下的PE檔案類似,ELF檔案是linux系統下可執行檔案、動態庫檔案、靜態庫檔案的標準格式。有時候我們需要檢視ELF檔案的頭資訊,或者動態庫檔

linux檢視核心版本gcc版本作業系統多少位等引數

1. 檢視linux版本 cat/etc/issueLinaro 12.07 \n \l 2. 檢視核心版本 1)cat/proc/versionLinux version 2.6.38-13-generic([email protected]) (gcc version 4.5.2 (Ubunt

linux檢視硬碟資訊硬碟分割槽格式化掛載及swap分割槽

df 命令參看硬碟資訊 -T選項, 檢視檔案系統型別 centos6檔案系統是ext4,因為設計較早,對於現今動輒上T的海量資料處理,效能較低。centos7檔案系統是xfs,適用於海量資料。這兩種

Linux檢視CPU型號,記憶體大小,硬碟空間的命令(詳解)

感謝有奉獻精神的人 轉自:http://www.jb51.net/article/97157.htm 1 檢視CPU 1.1 檢視CPU個數 # cat /proc/cpuinfo | grep "physical id" | un

Windows/Linux 檢視ApacheMysqlPHP版本

做程式開發,我們免不了要知道開發環境下的Apache、Mysql、PHP版本,下面就三項在Windows和Linux下如何進行版本檢視進行展開。 1、Apache (1) Windows檢視Apache版本: 使用命令:httpd -v   (2) Linux

linux檢視程序啟動執行的時間

可通過ps 來檢視,通過引數 -o 來檢視 例: ps -eo pid,tty,user,comm,lstart,etime | grep init 引數說明: pid:程序ID tty:

linux檢視cpu物理個數邏輯個數

hadoop@chw-desktop3:~$ cat /proc/cpuinfo processor : 0 vendor_id : GenuineIntel cpu family : 15 model : 2 model name : Intel(R) Pentium(