/proc文件系统(一):cpuinfo
0. 前言
/proc 文件系统是一个伪文件系统,它只存在内存当中,而不占用外存空间。
它以文件系统的方式为内核与进程提供通信的接口。用户和应用程序可以通过/proc得到系统的信息,并可以改变内核的某些参数。
由于系统的信息,如进程,是动态改变的,所以用户或应用程序读取/proc目录中的文件时,proc文件系统是动态从系统内核读出所需信息并提交的。
root@jimmy-vm:/proc# ll /proc/
dr-xr-xr-x 9 root root 0 11月 28 20:09 <pid>/
......
dr-xr-xr-x 2 root root 0 11月 30 16:53 acpi/
dr-xr-xr-x 5 root root 0 11月 30 16:53 asound/
-r--r--r-- 1 root root 0 11月 30 16:53 buddyinfo
dr-xr-xr-x 4 root root 0 11月 30 16:53 bus/
-r--r--r-- 1 root root 0 11月 30 16:53 cgroups
-r--r--r-- 1 root root 0 11月 30 16:53 cmdline
-r--r--r-- 1 root root 0 11月 30 16:53 consoles
-r--r--r-- 1 root root 0 11月 30 16:53 cpuinfo
-r--r--r-- 1 root root 0 11月 30 16:53 crypto
-r--r--r-- 1 root root 0 11月 30 16:53 devices
-r--r--r-- 1 root root 0 11月 30 16:53 diskstats
-r--r--r-- 1 root root 0 11月 30 16:53 dma
dr-xr-xr-x 2 root root 0 11月 30 16:53 driver/
-r--r--r-- 1 root root 0 11月 30 16:53 execdomains
-r--r--r-- 1 root root 0 11月 30 16:53 fb
-r--r--r-- 1 root root 0 11月 30 16:53 filesystems
dr-xr-xr-x 5 root root 0 11月 30 16:53 fs/
-r--r--r-- 1 root root 0 11月 30 16:53 interrupts
-r--r--r-- 1 root root 0 11月 30 16:53 iomem
-r--r--r-- 1 root root 0 11月 30 16:53 ioports
dr-xr-xr-x 57 root root 0 11月 30 16:53 irq/
-r--r--r-- 1 root root 0 11月 30 16:53 kallsyms
-r-------- 1 root root 140737477881856 11月 30 16:53 kcore
-r--r--r-- 1 root root 0 11月 30 16:53 keys
-r--r--r-- 1 root root 0 11月 30 16:53 key-users
-r-------- 1 root root 0 11月 16 14:27 kmsg
-r-------- 1 root root 0 11月 30 16:53 kpagecgroup
-r-------- 1 root root 0 11月 30 16:53 kpagecount
-r-------- 1 root root 0 11月 30 16:53 kpageflags
-r--r--r-- 1 root root 0 11月 30 16:53 loadavg
-r--r--r-- 1 root root 0 11月 30 16:53 locks
-r--r--r-- 1 root root 0 11月 30 16:53 mdstat
-r--r--r-- 1 root root 0 11月 30 16:53 meminfo
-r--r--r-- 1 root root 0 11月 30 16:53 misc
-r--r--r-- 1 root root 0 11月 30 16:53 modules
lrwxrwxrwx 1 root root 11 11月 30 16:53 mounts -> self/mounts
dr-xr-xr-x 3 root root 0 11月 30 16:53 mpt/
-rw-r--r-- 1 root root 0 11月 30 16:53 mtrr
lrwxrwxrwx 1 root root 8 11月 30 16:53 net -> self/net/
-r--r--r-- 1 root root 0 11月 30 16:53 pagetypeinfo
-r--r--r-- 1 root root 0 11月 30 16:53 partitions
-r--r--r-- 1 root root 0 11月 30 16:53 sched_debug
-r--r--r-- 1 root root 0 11月 30 16:53 schedstat
dr-xr-xr-x 4 root root 0 11月 30 16:53 scsi/
lrwxrwxrwx 1 root root 0 11月 16 14:27 self -> 107692/
-r-------- 1 root root 0 11月 30 16:53 slabinfo
-r--r--r-- 1 root root 0 11月 30 16:53 softirqs
-r--r--r-- 1 root root 0 11月 30 16:53 stat
-r--r--r-- 1 root root 0 11月 16 14:27 swaps
dr-xr-xr-x 1 root root 0 11月 16 14:27 sys/
--w------- 1 root root 0 11月 30 16:53 sysrq-trigger
dr-xr-xr-x 2 root root 0 11月 30 16:53 sysvipc/
lrwxrwxrwx 1 root root 0 11月 16 14:27 thread-self -> 107692/task/107692/
-r--r--r-- 1 root root 0 11月 30 16:53 timer_list
-rw-r--r-- 1 root root 0 11月 30 16:53 timer_stats
dr-xr-xr-x 4 root root 0 11月 30 16:53 tty/
-r--r--r-- 1 root root 0 11月 30 16:53 uptime
-r--r--r-- 1 root root 0 11月 30 16:53 version
-r--r--r-- 1 root root 0 11月 30 16:53 version_signature
-r-------- 1 root root 0 11月 30 16:53 vmallocinfo
-r--r--r-- 1 root root 0 11月 30 16:53 vmstat
-r--r--r-- 1 root root 0 11月 30 16:53 zoneinfo
1. /proc/cpuinfo
在linux操作系统中,CPU的信息在启动的过程中被装载到虚拟目录/proc下的cpuinfo文件中,我们可以通过 cat /proc/cpuinfo 查看一下。
该文件中存放了有关 cpu的相关信息(型号,缓存大小等)
root@jimmy-vm:/proc# cat cpuinfo
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 94
model name : Intel(R) Core(TM) i5-6400 CPU @ 2.70GHz
stepping : 3
microcode : 0xc2
cpu MHz : 2712.002
cache size : 6144 KB
physical id : 0
siblings : 1
core id : 0
cpu cores : 1
apicid : 0
initial apicid : 0
fpu : yes
fpu_exception : yes
cpuid level : 22
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts nopl xtopology tsc_reliable nonstop_tsc aperfmperf pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch epb invpcid_single kaiser fsgsbase tsc_adjust bmi1 avx2 smep bmi2 invpcid rdseed adx smap xsaveopt xsavec xgetbv1 dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp
bugs : cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf
bogomips : 5424.00
clflush size : 64
cache_alignment : 64
address sizes : 42 bits physical, 48 bits virtual
power management:
上面的各个参数的含义解释如下:
| 属性 | 含义 |
|---|---|
| processor | 逻辑处理器的id。 |
| vendor id | CPU制造商 |
| cpu family | CPU产品系列代号 |
| model | CPU属于其系列中的哪一代的代号 |
| model name | CPU属于的名字及其编号、标称主频 |
| stepping | CPU属于制作更新版本 |
| cpu MHz | CPU的实际使用主频 |
| cache size | CPU二级缓存大小 |
| physical id | 单个CPU的标号 |
| siblings | 单个CPU逻辑物理核数 |
| core id | 当前物理核在其所处CPU中的编号,这个编号不一定连续 |
| cpu cores | 该逻辑核所处CPU的物理核数 |
| 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 | 可访问地址空间位数 |
/proc文件系统(一):cpuinfo的更多相关文章
- proc文件系统
在shell终端里不带任何参数,直接运行mount命令可以显示正在挂载的文件系统.其中有这么一行 none on /proc type proc (rw) 这就是/proc文件系统.第一个域显示non ...
- 使用 /proc 文件系统来访问 linux操作系统 内核的内容 && 虚拟文件系统vfs及proc详解
http://blog.163.com/he_junwei/blog/static/19793764620152743325659/ http://www.01yun.com/other/201304 ...
- <解说linux下proc文件系统>
proc文件系统的作用是访问系统内核信息 proc不是一个真实的文件系统,它不占系统的外存空间,只是以文件的形式为用户访问linux内核数据提供接口,因为系统内核总是动态的变化,所以我们所捕捉到的也只 ...
- (转)使用 /proc 文件系统来访问 Linux 内核的内容
转载网址:http://www.ibm.com/developerworks/cn/linux/l-proc.html 这个虚拟文件系统在内核空间和用户空间之间打开了一个通信窗口/proc 文件系统是 ...
- Linux的proc文件系统
proc,用户空间和内核空间能够通过该接口通信, 与普通文件不同的是.这些虚拟文件的内容都是动态创建的. proc文件系统是一个伪文件系统,它仅仅存在内存其中,而不占用外存空间. 它以文件系统的方式为 ...
- [转帖]ulimit、limits.conf、sysctl和proc文件系统
ulimit.limits.conf.sysctl和proc文件系统 来源:https://blog.csdn.net/weixin_33918114/article/details/86882372 ...
- 深入理解linux系统下proc文件系统内容
深入理解linux系统下proc文件系统内容 内容摘要:Linux系统上的/proc目录是一种文件系统,即proc文件系统. Linux系统上的/proc目录是一种文件系统,即proc文件系统.与其它 ...
- /proc文件系统(二):/proc/<pid>/stat
0. 前言 /proc 文件系统是一个伪文件系统,它只存在内存当中,而不占用外存空间. 它以文件系统的方式为内核与进程提供通信的接口.用户和应用程序可以通过/proc得到系统的信息,并可以改变内核的某 ...
- linux文件管理之proc文件系统
proc 文件系统 ==================================================================================== Linux ...
随机推荐
- Python基础(六)
- Maven二
1 回顾 1.1 Maven的好处 节省空间 对jar包做了统一管理 依赖管理 一键构建 可跨平台 应用在大型项目可提高开发效率 1.2 Maven安装部署配置 1.3 Maven的仓库 本地仓库 远 ...
- stm32手册上的英文
crystal-less 无晶振 USB FS(Full-speed)此外还有High-speed接口(简称HS),Low-speed接口(简称LS) frequency频率 CRC(Cyclic ...
- InternalResourceViewResolver视图解析器(转)
转载地址:https://www.cnblogs.com/liruiloveparents/p/5054605.html springmvc在处理器方法中通常返回的是逻辑视图,如何定位到真正的页面,就 ...
- 六.使用python操作mysql数据库
数据库的安装和连接 pymysql的安装 pip install PyMySQL python连接数据库 import pymysql db = pymysql.connec ...
- WPF中TreeView的+-号和连线style的一种实现
最近又开始跟WPF打交道,项目里面用到了TreeView这个控件.然后需要有一个连线的外观就像是这样 二话不说,百度了一下,找到一个实现, 通道. 把代码拷贝到项目里面,跑了一下,看上去还不错.但是这 ...
- Eclipse 工作空间的相关说明
工作空间文件说明 当eclipse选定一个文件夹作为workspace工作空间时,就会在该目录中生成一些文件. 共三个文件夹:.metadata ..recommenders .RemoteSyste ...
- Java学习笔记43(打印流、IO流工具类简单介绍)
打印流: 有两个类:PrintStream,PrintWriter类,两个类的方法一致,区别在于构造器 PrintStream:构造方法:接收File类型,接收字符串文件名,接收字节输出流(Outpu ...
- linux上面是否有安装redis,redis启动
1.进入/usr/local/src目录,下载redis # cd /usr/local/src# wget http://download.redis.io/releases/redis-4.0.6 ...
- 一个linux内核编译时遇到的perl语法导致的编译问题解决
在编译linux内核时,遇到了一个比较诡异的问题.具体log如下: Can't locate strict.pm in @INC (you may need to install the strict ...