/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 ...
随机推荐
- 201771010142 张燕 Java的基本程序设计结构第二周学习总结
第三章 Java的基本程序设计结构 第一部分 理论知识学习部分 一 基本知识: 1.标识符:由字母.下划线,美元符号和数字组成,第一个符号不能为数字,可以用作类名.变量名.方法名.数组名和文件名等. ...
- JNI 记
Java Native Interface(JNI)从零开始详细教程 ================================================================ ...
- spring中的aop演示
一.步骤(XML配置) 1.导包4+2+2+2 2.准备目标对象 3.准备通知 4.配置进行织入,将通知织入目标对象中 <! -- 3.配置将通知织入目标对象> 5.测试 二.步骤(注解配 ...
- 2019.03.04 bzoj5308: [Zjoi2018]胖(二分答案+st表)
传送门 想题5分钟调题两小时系列 其实还是我tcl 读完题之后自然会知道一个关键点能够更新的点是一段连续的区间,于是我们对于每个点能到的左右区间二分答案,用ststst表维护一下查询即可. 代码: # ...
- 2019.02.15 codechef Favourite Numbers(二分+数位dp+ac自动机)
传送门 题意: 给444个整数L,R,K,nL,R,K,nL,R,K,n,和nnn个数字串,L,R,K,数字串大小≤1e18,n≤65L,R,K,数字串大小\le1e18,n\le65L,R,K,数字 ...
- CodeCraft-19 and Codeforces Round #537 (Div. 2) E 虚树 + 树形dp(新坑)
https://codeforces.com/contest/1111/problem/E 题意 一颗有n个点的树,有q个询问,每次从树挑出k个点,问将这k个点分成m组,需要保证在同一组中不存在一个点 ...
- handoop安装部署集群
hdfs 1.0版本 一个namenode (secordary namenode 2.0冷备份) 和多个datanode构成分布式文件系统 mapreduce 一个 jobtracker 协调 ta ...
- jquery的ajax及注意事项
1.引jquery包(jquery-1.8.0.min.js) <script type="text/javascript"> $(function () { //根据 ...
- Python简介及环境安装
Python 官网传送门 Python是一种面向对象的解释性计算机程序设计语言. Python 2.7将于2020年1月1日终止支持,本笔记基于Python3. pip pip 是一个现代的,通用的 ...
- FPGA的发展史及FPGA 的基础架构
通过了解早期FPGA的发展,理解FPGA究竟是干什么的,FPGA到底在电子设计领域起到了什么样的作用,下面是一张早期的设计过程 早期的设计流程过程中,只有当硬件完成了才能够得到功能的验证,随着集成电路 ...