Linux查看CPU及系统信息

FROM: http://hi.baidu.com/yilinghl/blog/item/5b17918b097839d4fc1f103f.html

 

CPU:

more /proc/cpuinfo

-------

文件会显示cpu的信息
processor 会从0开始记数 继续下去多个cpu
flags 如果有 ht 说明支持超线程技术
判断物理CPU的个数可以查看physical id 的值,相同则为同一个物理 CPU

附:

(超线程技术就是利用特殊的硬件指令,把两个逻辑内核模拟成两个物理芯片,让单个处理器都能使用线程级并行计算,进而兼容多线程操作系统和软件,减少了CPU的闲置时间,提高的CPU的运行效率。

采用超线程及时可在同一时间里,应用程序可以使用芯片的不同部分。虽然单线程芯片每秒钟能够处理成千上万条指令,但是在任一时刻只能够对一条指令进行操作。而超线程技术可以使芯片同时进行多线程处理,使芯片性能得到提升。
超线程技术是在一颗CPU同时执行多个程序而共同分享一颗CPU内的资源,理论上要像两颗CPU一样在同一时间执行两个线程,P4处理器需要多加入一个Logical CPU Pointer(逻辑处理单元)。因此新一代的P4 HT的die的面积比以往的P4增大了5%。而其余部分如ALU(整数运算单元)、FPU(浮点运算单元)、L2 Cache(二级缓存)则保持不变,这些部分是被分享的。
虽然采用超线程技术能同时执行两个线程,但它并不象两个真正的CPU那样,每个CPU都具有独立的资源。当两个线程都同时需要某一个资源时,其中一个要暂时停止,并让出资源,直到这些资源闲置后才能继续。因此超线程的性能并不等于两颗CPU的性能。
英特尔P4 超线程有两个运行模式,Single Task Mode(单任务模式)及Multi Task Mode(多任务模式),当程序不支持Multi-Processing(多处理器作业)时,系统会停止其中一个逻辑CPU的运行,把资源集中于单个逻辑 CPU中,让单线程程序不会因其中一个逻辑CPU闲置而减低性能,但由于被停止运行的逻辑CPU还是会等待工作,占用一定的资源,因此Hyper- Threading CPU运行Single Task Mode程序模式时,有可能达不到不带超线程功能的CPU性能,但性能差距不会太大。也就是说,当运行单线程运用软件时,超线程技术甚至会降低系统性能,尤其在多线程操作系统运行单线程软件时容易出现此问题。
)

___________________

geowang@geowang-desktop:~$ more /proc/cpuinfo 
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model   : 23
model name : Intel(R) Core(TM)2 Quad CPU   Q8200 @ 2.33GHz
stepping : 7
cpu MHz   : 2333.063
cache size : 2048 KB
physical id : 0
siblings : 4
core id   : 0
cpu cores : 4
apicid   : 0
initial apicid : 0
fpu   : yes
fpu_exception : yes
cpuid level : 10
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 lm constant_ts
c arch_perfmon pebs bts rep_good nopl pni monitor ds_cpl est tm2 ssse3 cx16 xtpr
sse4_1 lahf_lm
bogomips : 4666.12
clflush size : 64
cache_alignment : 64
address sizes : 36 bits physical, 48 bits virtual
power management:

processor : 1
vendor_id : GenuineIntel
cpu family : 6
model   : 23
model name : Intel(R) Core(TM)2 Quad CPU   Q8200 @ 2.33GHz
stepping : 7
cpu MHz   : 2333.063
cache size : 2048 KB
physical id : 0
siblings : 4
core id   : 1
cpu cores : 4
apicid   : 1
initial apicid : 1
fpu   : yes
fpu_exception : yes
cpuid level : 10
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 lm constant_tsc arch_perfmon pe
bs bts rep_good nopl pni monitor ds_cpl est tm2 ssse3 cx16 xtpr sse4_1 lahf_lm
bogomips : 4666.16
clflush size : 64
cache_alignment : 64
address sizes : 36 bits physical, 48 bits virtual
power management:

processor : 2
vendor_id : GenuineIntel
cpu family : 6
model   : 23
model name : Intel(R) Core(TM)2 Quad CPU   Q8200 @ 2.33GHz
stepping : 7
cpu MHz   : 2333.063
cache size : 2048 KB
physical id : 0
siblings : 4
core id   : 2
cpu cores : 4
apicid   : 2
initial apicid : 2
fpu   : yes
fpu_exception : yes
cpuid level : 10
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 lm constant_tsc arch_perfmon pe
bs bts rep_good nopl pni monitor ds_cpl est tm2 ssse3 cx16 xtpr sse4_1 lahf_lm
bogomips : 4666.18
clflush size : 64
cache_alignment : 64
address sizes : 36 bits physical, 48 bits virtual
power management:

processor : 3
vendor_id : GenuineIntel
cpu family : 6
model   : 23
model name : Intel(R) Core(TM)2 Quad CPU   Q8200 @ 2.33GHz
stepping : 7
cpu MHz   : 2333.063
cache size : 2048 KB
physical id : 0
siblings : 4
core id   : 3
cpu cores : 4
apicid   : 3
initial apicid : 3
fpu   : yes
fpu_exception : yes
cpuid level : 10
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 lm constant_tsc arch_perfmon pe
bs bts rep_good nopl pni monitor ds_cpl est tm2 ssse3 cx16 xtpr sse4_1 lahf_lm
bogomips : 4666.18
clflush size : 64
cache_alignment : 64
address sizes : 36 bits physical, 48 bits virtual
power management:

--------

 

查看系统:

uname -a

一般64的系统都会带有X86_64 ,而32位的都不带,一般是i386或者i686等。

geowang@geowang-desktop:~$ uname -a
Linux geowang-desktop 2.6.27-9-server #1 SMP Thu Nov 20 22:56:07 UTC 2008 x86_64 GNU/Linux

 

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

ubuntu系统

方法一

在终端中执行下列指令:

cat /etc/issue

可以查看当前正在运行的 Ubuntu 的版本号。其输出结果类似下面的内容:

Ubuntu 7.04 /n /l

方法二

使用 lsb_release 命令也可以查看 Ubuntu 的版本号,与方法一相比,内容更为详细。执行指令如下:

sudo lsb_release -a

将输出结果:

Distributor ID: Ubuntu
Description: Ubuntu 7.04
Release: 7.04
Codename: feisty

今天看Ubuntu cookbook的一篇文章,提到如何查看Ubuntude版本,觉得不是很全面,我再来补充和分析一哈子,呵呵!

文章中提到方法一是查看/etc/issue文件中的内容,可以看到版本号。这里要澄清的一个问题是,/etc/issue的作用主要是在本机登录时,在登录提示之前显示相关的字符信息。/etc/issue.net显示远程登录时的信息。当然一般的提示信息都包含系统版本,但是,如果别人改成自己的个性提示,那就麻烦了。所以我不推荐用这种方法查看系统版本。/etc/issue文件中包含一些换码符,它们由agetty解释,所有的换码符必须紧跟于一个反斜线(/)的后面,比如/d将插入当前时间。

b   插入当前行的波特率
d   插入当前日期
s   插入操作系统的名称
l   插入当前tty的名称
m   插入计算机的体系结构id,如i486
n   插入计算机的节点名,即hostname
o   插入计算机的域名
r   插入内核的版本
t   插入当前时间
u   插入当前登陆的用户数
U   插入1 user 或者 N users,N是当前登陆的用户数
v   插入当前操作系统的版本


还有一个方法是使用lsb_release命令,个人觉得这种方法比较好。直接看一下怎么使用这个命令了。查了一下,网上关于这个命令的详细介绍根本没有,过两天我来写一个好了。

第三种方法是使用uname。uname和lsb_release的区别在于前者主要是显示系统的整个信息,后者只是显示版本信息(但是比uname详细)。直接uanme -a,关于这个命令的介绍很多,就不多说了。

 

 

各种平台查看cpu信息指令

SUN :

psrinfo -v

/usr/platform/sun4u/sbin/prtdiag

HP-UX :

dmesg | grep processor

top

ioscan -fnC processor

SAM -->; Performance Monitors -->; System Properties -->;

 

AIX:

prtconf

$ lsdev -Cc processor

proc0 Available 00-00 Processor

proc1 Available 00-01 Processor

 

$ lsattr -El proc0

frequency 375000000 Processor Speed False

smt_enabled false Processor SMT enabled False

smt_threads 0 Processor SMT threads False

state enable Processor state False

type PowerPC?_POWER3 Processor type False

Linux:

cat /proc/cpuinfo

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值