Linux /proc目录总结
1、概念
在Linux系统中,/proc
目录是一个特殊的文件系统,通常被称为"proc文件系统"或"procfs"。这个文件系统以文件系统的方式为内核与进程之间的通信提供了一个接口。/proc
目录中的文件大多数都提供了关于系统状态的信息,如运行的进程、内存使用、设备驱动等。
2、常用目录文件
2.1 /proc/cpuinfo
提供关于CPU的信息,如型号、缓存大小、频率等,可以直接通过cat命令查看:
- processor: 表示 CPU 的编号,从 0 开始计数。
- BogoMIPS: 这是一个用于粗略衡量 CPU 性能的指标,称为 "Bogomips"。它表示每秒百万条指令(MIPS),但是这个值与真实的性能并不直接对应,主要用于比较不同 CPU 的相对性能。
- Features: 表示 CPU 支持的功能,包括:
- fp: 浮点运算
- asimd: ARM SIMD 指令集
- aes: AES 加密指令集
- pmull: 乘法指令集
- sha1: SHA-1 哈希算法
- sha2: SHA-2 哈希算法
- crc32: CRC32 校验算法
- CPU implementer: 表示 CPU 的制造商,0x41 表示 ARM 公司。
- CPU architecture: 表示 CPU 的架构,8 表示 ARMv8 架构。
- CPU variant: 表示 CPU 的变种,0x0 表示标准 ARMv8 架构。
- CPU part: 表示 CPU 的型号,0xd03 表示 ARM Cortex-A53 处理器。
- CPU revision: 表示 CPU 的修订版本,4 表示特定的修订版本。
2.2 /proc/meminfo
提供关于系统内存使用情况的统计信息,可以直接通过cat命令查看:
- MemTotal: 系统的总物理内存,单位为 kB。
- MemFree: 系统当前空闲的物理内存,单位为 kB。
- MemAvailable: 系统当前可用的物理内存,单位为 kB。这个值比
MemFree
大,因为其还考虑了缓冲区和缓存的可用空间。 - Buffers: 用于存储磁盘块的缓冲区大小,单位为 kB。
- Cached: 缓存了磁盘数据的内存大小,单位为 kB。
- Active: 最近被访问过的内存页,单位为 kB。
- Inactive: 一段时间没有被访问的内存页,单位为 kB。
- Active(anon): 匿名内存页,即不映射到任何文件,如进程堆栈、堆内存等。
- Inactive(anon): 匿名内存页中长时间未被访问的页面。
- Active(file): 文件映射到内存的页,如文件的内容、库函数等。
- Inactive(file): 文件映射到内存中长时间未被访问的页面。
2.3 /proc/mounts
显示当前系统上已挂载的文件系统,可以直接通过cat命令查看:
其大致按以下格式:
<设备节点> <挂载点> <文件系统类型> <挂载选项> <挂载次数> <文件系统检查顺序>
- 设备节点 (Device node): 表示文件系统的设备节点或者分区的路径,比如
/dev/mmcblk0p1
。 - 挂载点 (Mount point): 文件系统被挂载到的目录路径,比如
/
表示根目录。 - 文件系统类型 (Filesystem type): 表示文件系统的类型,比如 ext4。
- 挂载选项 (Mount options): 表示文件系统被挂载时指定的选项,比如
rw
表示可读写,ro
表示只读。 - 挂载次数 (Mount count): 表示文件系统被挂载的次数。
- 文件系统检查顺序 (File system check order): 如果文件系统需要进行检查,该字段指示了文件系统检查的顺序。
2.4 /proc/partitions
列出所有已识别的磁盘分区,可以直接通过cat命令查看:
- major: 主设备号,用于标识设备类型,例如
1
表示 RAM 设备。 - minor: 次设备号,用于区分同类型设备的不同分区,例如
0
和1
表示 RAM 设备的两个不同分区。 - #blocks: 分区的大小,以块为单位。
- name: 分区的名称,例如
ram0
和ram1
。
2.5 /proc/version
显示当前运行的内核版本信息,可以直接通过cat命令查看:
- Linux version: 指明了当前运行的 Linux 内核版本号,这里是 4.9.170-sun50iw9。
- (root@Katarina): 表示内核是在名为 "Katarina" 的机器上编译的。
- (gcc version 9.2.1 20191025 (GNU Toolchain for the A-profile Architecture 9.2-2019.12 (arm-9.10))): 说明了编译内核所使用的 GCC 编译器的版本信息,包括版本号、编译日期和目标平台信息。
- #34: 表示内核的补丁版本号,即在最初的版本基础上进行了 34 次修改。
- SMP: 表示内核支持对称多处理器(Symmetric Multi-Processing),即系统可以同时运行在多个 CPU 上。
- PREEMPT: 表示内核支持抢占式内核,即进程可以被其他更高优先级的进程抢占,提高系统响应速度。
2.6 /proc/net
包含网络相关的统计和配置信息
其中:
-
route: 这个文件显示了系统的路由表,包含了系统中各个网络的路由信息。可以通过查看这个文件来查看当前系统路由的配置情况。
-
tcp, udp: 这两个文件分别显示了系统当前的 TCP 和 UDP 连接情况,列出了系统中所有的 TCP 和 UDP 连接的详细信息。
2.7 /proc/sys
/proc/sys
目录下存储着 Linux 内核运行时的系统参数,通过读取和写入这些文件,可以控制和配置系统的许多功能。这些参数通常用于调整内核的行为,优化系统性能或修改网络设置等。
-
/proc/sys/kernel/
- hostname: 可以通过读取和写入这个文件来获取和更改系统的主机名。
- osrelease: 包含正在运行的内核版本信息。
- panic: 设置系统在遇到致命错误后自动关闭之前的延迟时间。
-
/proc/sys/net/
- ipv4/
- ip_forward: 控制系统是否允许 IP 转发功能。
- ipv4/tcp_keepalive_time: 设置 TCP 连接的保活时间。
- core/
- rmem_default, rmem_max: 指定 TCP 接收缓冲区的默认和最大大小。
- wmem_default, wmem_max: 指定 TCP 发送缓冲区的默认和最大大小。
- ipv4/
-
/proc/sys/vm/
- swappiness: 控制系统在内存不足时使用 swap 分区的程度。
- overcommit_memory: 控制内存过量分配的行为。
2.8 /proc/interrupts
这个文件显示了系统中各个硬件设备正在使用的中断请求(IRQ)的情况,可以帮助用户查看系统中断的分配情况,以及了解每个设备所占用的中断资源。
- 每行对应一个硬件设备,在每一行中列出了设备名称、中断请求号(IRQ)以及该设备触发的中断次数。
- 可以通过查看这个文件来检查系统中是否存在中断冲突(IRQ conflict),了解系统中硬件设备的使用情况,以及定位可能的硬件问题。
2.9 /proc/uptime
显示系统自上次启动以来的运行时间,以及空闲时间。
- 第一个值(25221.66)表示系统自上次启动以来运行的时间(单位为秒)。
- 第二个值(100623.29)表示系统空闲时间的总计(单位为秒)。
2.10 /proc/loadavg
显示系统的负载平均值
- 前三个数值(1.00 1.00 1.00)表示系统在过去 1 分钟、5 分钟和 15 分钟内的平均负载。这些数字是指任务队列中平均活跃的进程数。
- 第四个值(1/167)表示正在运行/总进程数。
- 第五个值(3608)是最近运行的进程的进程 ID。
2.11 /proc/stat
提供关于CPU活动的统计信息
每一列的含义如下:
- 用户态时间 (user): CPU 花在用户进程上的时间(以节拍计)。
- 内核态时间 (nice): CPU 花在优先级较低的进程上的时间(以节拍计)。
- 系统调用时间 (system): CPU 花在系统调用上的时间(以节拍计)。
- 空闲时间 (idle): CPU 处于空闲状态的时间(以节拍计)。
- 等待 I/O 时间 (iowait): CPU 等待 I/O 操作完成的时间(以节拍计)。
- 硬件中断时间 (irq): CPU 处理硬件中断的时间(以节拍计)。
- 软中断时间 (softirq): CPU 处理软件中断的时间(以节拍计)。
- 窃取时间 (steal): CPU 被虚拟机窃取的时间(以节拍计)。
- 虚拟化时间 (guest): CPU 花在运行虚拟机上的时间(以节拍计)。
- 虚拟化时间 (guest_nice): CPU 花在运行虚拟机中优先级较低的进程上的时间(以节拍计)。
例如,第一行 cpu 7963 13 16873 9957357 409 0 460 0 0 0
代表了所有 CPU 核心的统计信息:
cpu
: 表示所有 CPU 核心的总统计信息。7963
: 所有 CPU 核心的用户态时间。13
: 所有 CPU 核心的内核态时间。16873
: 所有 CPU 核心的系统调用时间。9957357
: 所有 CPU 核心的空闲时间。409
: 所有 CPU 核心的等待 I/O 时间。0
: 所有 CPU 核心的硬件中断时间。460
: 所有 CPU 核心的软件中断时间。0
: 所有 CPU 核心的窃取时间。0
: 所有 CPU 核心的虚拟化时间。0
: 所有 CPU 核心的虚拟化时间(优先级较低)。
2.12 /proc/bus
包含有关系统总线和连接到这些总线的设备的信息
/proc/bus/pci/
目录包含有关 PCI 总线设备的信息,可以查看系统中的PCI设备列表。/proc/bus/usb/
目录包含有关 USB 设备的信息,可以查看 USB 设备的配置信息和状态。- 这些文件和目录可以帮助用户了解系统中连接的总线设备的情况,进行总线级别的故障排除和信息查询。
2.13 /proc/devices
列出当前内核所识别的设备驱动程序的主设备号:
2.14 /proc/fs
包含有关当前系统上支持的文件系统的信息。
/proc/fs/nfsd/exports
:显示 NFS 服务器的导出列表。/proc/fs/nfsd/version
:显示 NFS 服务器模块的版本信息。/proc/fs/nfs
:包含 NFS 客户端和服务器相关的信息。
2.15 /proc/[pid]
对于每个正在运行的进程,都有一个以其进程ID(PID)命名的目录。这些目录包含了关于该进程的详细信息,如命令行、环境变量、内存映射、打开的文件描述符等。
attr
:进程的访问控制列表(ACL)权限设置。cmdline
:进程启动时的命令行参数。cwd
:进程的当前工作目录。environ
:进程的环境变量列表。exe
:进程的可执行文件路径。fd
:进程打开的文件描述符列表。status
:包含有关进程当前状态的信息,如进程状态、内存使用情况等。sched
:显示进程的调度器相关信息。maps
:显示进程内存映射的详细信息。limits
:显示进程资源限制。stat
:显示进程状态信息。io
:显示进程的I/O统计信息。oom_score
:OOM(Out Of Memory)调度分数,决定进程在内存不足时被系统杀死的优先级。smaps
:显示进程的内存使用情况,包括详细的内存映射信息。task
:包含有关进程的线程信息。syscall
:显示进程的系统调用统计信息。
相关文章:
Linux /proc目录总结
1、概念 在Linux系统中,/proc目录是一个特殊的文件系统,通常被称为"proc文件系统"或"procfs"。这个文件系统以文件系统的方式为内核与进程之间的通信提供了一个接口。/proc目录中的文件大多数都提供了关于系统状态的信息࿰…...
【JavaEE】浅谈线程(二)
线程 线程的常见属性 线程属性可以通过下面的表格查看。 •ID 是线程的唯⼀标识,不同线程不会重复 • 名称是各种调试⼯具⽤到(如jconsoloe) • 状态表示线程当前所处的⼀个情况,下⾯我们会进⼀步说明 • 优先级高的线程理论上来…...
爬虫:爬取知乎热榜一级评论及回答2024不包含翻页
一、先上结果(注:本文仅为兴趣爱好探究,请勿进行商业利用或非法研究,负责后果自负,与作者无关) 1、爬标题及其具体内容 2、抓标题下的对应回答 3、爬取对应一级评论 二、上流程 1、获取cookies(相信哥哥姐姐…...
AI 编程探索- iOS动态标签控件
需求分析: 标签根据文字长度,自适应标签居中显示扩展 超过内容显示范围,需要换行显示,且保持居中显示 AI实现过程 提问: 回答: import UIKit import SnapKitclass DynamicLabelsContainerView: UIView…...
计算机网络——数据链路层(数据链路层概述及基本问题)
链路、数据链路和帧的概念 数据链路层在物理层提供服务的基础上向网络层提供服务,其主要作用是加强物理层传输原始比特流的功能,将物理层提供的可能出错的物理连接改造为逻辑上无差错的数据链路,使之对网络层表现为一条无差错的链路。 链路(…...
【前端】前端权限管理的实现方式:基于Vue项目的详细指南
前端权限管理的实现方式:基于Vue项目的详细指南 在Web开发中,前端权限管理是一个确保应用安全性和优化用户体验的关键部分。本文将详细介绍前端权限管理的几种实现方式,并通过Vue项目中的代码示例来演示具体实现方法。 前端权限管理的基本实…...
MySQL数据库基础练习系列——教务管理系统
项目名称与项目简介 教务管理系统是一个旨在帮助学校或教育机构管理教务活动的软件系统。它涵盖了学生信息管理、教师信息管理、课程管理、成绩管理以及相关的报表生成等功能。通过该系统,学校可以更加高效地处理教务数据,提升教学质量和管理水平。 1.…...
windowns server2016服务器配置php调用powerpoint COM组件
解决问题:windowns server2016服务器配置php调用powerpoint COM组件 环境: windows server2016 宝塔(nginxmysqlphp7.2) IIS 搭建宝塔: 下载地址:https://www.bt.cn/download/windows.html 安装使用&…...
Git之checkout/reset --hard/clean -f区别(四十二)
简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 优质专栏:多媒…...
MySQL数据库基础练习系列:科研项目管理系统
DDL CREATE TABLE Users (user_id INT AUTO_INCREMENT PRIMARY KEY COMMENT 用户ID,username VARCHAR(50) NOT NULL UNIQUE COMMENT 用户名,password VARCHAR(255) NOT NULL COMMENT 密码,gender ENUM(男, 女) NOT NULL COMMENT 性别,email VARCHAR(100) UNIQUE COMMENT 邮箱 …...
算法设计与分析--考试真题
分布式算法试题汇总选择题简答题算法题 2013级试题2019级试题2021年秋考卷 根据考试范围找相应题目做。 分布式算法试题汇总 选择题 下述说法错误的是___ A 异步系统中的消息延迟是不确定的 B 分布式算法的消息复杂性是指在所有合法的执行上发送消息总数的最大值 C 在一个异步…...
【鸿蒙学习笔记】页面和自定义组件生命周期
官方文档:页面和自定义组件生命周期 目录标题 [Q&A] 都谁有生命周期? [Q&A] 什么是组件生命周期? [Q&A] 什么是组件?组件生命周期 [Q&A] 什么是页面生命周期? [Q&A] 什么是页面?页面生…...
ASPICE与ISO 21434:汽车软件与网络安全标准的协同与互补
ASPICE(Automotive SPICE)与ISO 21434在汽车行业中存在显著的相关性,主要体现在以下几个方面: 共同目标: ASPICE和ISO 21434都旨在提高汽车系统和软件的质量、可靠性和安全性。ASPICE关注汽车软件开发过程的成熟度和…...
视频格式转换方法:如何使用视频转换器软件转换视频
众所周知,目前存在许多不同的视频和音频格式。但我们的媒体播放器、移动设备、PC 程序等仅兼容少数特定格式。例如,如果不先将其转换为 MP4、MOV 或 M4V 文件,AVI、WMV 或 MKV 文件就无法在 iPhone 上播放。 视频转换器允许您将一种视频格式…...
vim操作小诀窍:快速多行添加注释
在使用vim编译python代码的时候,经常碰到需要将一段代码注释的情况,每次都要按“向下” “向左”按钮,将光标移到句首,然后再键入#井号键。如果行数较多,则操作相当繁琐。 vim里面有将一段文字前面加#注释的方法&#…...
无线麦克风领夹哪个牌子好,2024年领夹麦克风品牌排行榜推荐
随着短视频热潮的兴起,越来越多的人倾向于用vlog记录日常生活,同时借助短视频和直播平台开辟了副业。在这一过程中,麦克风在近两年内迅速发展,从最初的简单收音功能演变为拥有多样款式和功能,以满足视频创作的需求。…...
Mybatis入门——语法详解:基础使用、增删改查、起别名、解决问题、注释、动态查询,从入门到进阶
文章目录 1.基础使用1.添加依赖2.在resouces文件下新建xml文件db.properties3.在resouces文件下新建xml文件mybatis-config-xml4.创建一个MybatisUtils工具类5.创建xml文件XxxMapper.xml映射dao层接口6.添加日志5.测试 2.增删改查1.select2.delete3.update4.insert5.模糊查询6.…...
仓库选址问题【数学规划的应用(含代码)】阿里达院MindOpt
本文主要讲述使用MindOpt工具优化仓库选址的数学规划问题。 视频讲解👈👈👈👈👈👈👈👈👈 一、案例场景 仓库选址问题在现代物流和供应链管理中具有重要的应用。因为仓库…...
Docker Compose 一键快速部署 RocketMQ
Apache RocketMQ是一个开源的分布式消息中间件系统,最初由阿里巴巴开发并贡献给Apache软件基金会。RocketMQ提供了高性能、高可靠性、高扩展性和低延迟的消息传递服务,适用于构建大规模分布式系统中的消息通信和数据同步。 RocketMQ支持多种消息模型&am…...
Vscode lanuch.json
Intro 使用launch.json 能够方便的运行需要传很多参数的代码文件 如下: import math import argparse # 1、导入argpase包def parse_args():parse argparse.ArgumentParser(descriptionCalculate cylinder volume) # 2、创建参数对象parse.add_argument(--rad…...
Golang开发:构建支持并发的网络爬虫
Golang开发:构建支持并发的网络爬虫 随着互联网的快速发展,获取网络数据成为了许多应用场景中的关键需求。网络爬虫作为一种自动化获取网络数据的工具,也因此迅速崛起。而为了应对日益庞大的网络数据,开发支持并发的爬虫成为了必…...
2024年跨境电商关键数据统计:市场规模将达到1.976万亿美元
预计2024年跨境电商消费市场规模将达到1.976万亿美元,占全球网上销售总额的31.2%。这一数据无疑展示了跨境电商市场的巨大潜力和迅猛增长趋势。 全球跨境电商的现状与未来 现状 2023年,全球跨境电商市场规模预计达到1.56万亿美元,占全球电子…...
联想至像M3070DNA打印机加粉及清零方法
基本参数: 产品类型:黑白激光多功能商用一体机(打印/复印/扫描) 网络功能:支持有线网络打印 最大处理幅面:A4 双面功能:自动 打印速度:30页/分钟(高速激光打印&…...
通过nginx去除 api url前缀 并保持后面剩余的url不变向后台请求
如 我前台浏览器向后台请求的接口是 http://127.0.0.1:5099/api/sample/sample/getbuttonlist 实际的请求接口传向 http://192.168.3.71:5099/sample/sample/getbuttonlist 方法是向config中加入下面这样一个server server {listen 5099;location /api/ {rewrite ^/a…...
AI技术在现代社会中的广泛应用及其影响
目录 前言: 一、AI技术在医疗领域的应用 二、AI技术在教育领域的应用 三、AI技术在工业领域的应用 四、AI技术在金融领域的应用 五、AI技术在生活领域的应用 前言: 随着科技的不断发展,人工智能(AI)技术逐渐成为人…...
VBA 批量变换文件名
1. 页面布局 在“main”Sheet中按照下面的格式编辑。 2. 实现代码 Private wsMain As Worksheet Private intIdx As LongPrivate Sub getExcelBookList(strPath As String)Dim fso As ObjectDim objFile As ObjectDim objFolder As ObjectSet fso = CreateObject("Scrip…...
OpenHarmony 5.0 纯血鸿蒙系统
OpenHarmony-v5.0-Beta1 版本已于 2024-06-20 发布。 OpenHarmony 5.0 Beta1 版本标准系统能力持续完善,ArkUI 完善了组件通过 C API 调用的能力;应用框架细化了生命周期管理能力,完善了应用拉起、跳转的能力;分布式软总线连接能力…...
计算机网络地址划分A-E(自学)
1、网络地址组成 (1)物理地址MAC(Media Access Control Address) 网卡生产商分配,全球唯一,48/64位二进制 (2)逻辑地址IP(Internet Protocol) 网络层地址,用于在不同网…...
js导入导出
好久没有学习新的知识点了,今天开始学一下前端的知识点。直接在vscode里面编写,然后从基本的前端知识开始。 JS的导入导出 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"…...
python办公自动化之excel
用到的库:openpyxl 实现效果:读取单元格的值,写入单元格 代码: import openpyxl # 打开现有工作簿 workbookopenpyxl.load_workbook(现有工作簿.xlsx) # 选择一个工作表 sheetworkbook[交易表] # 读取单元格的值 cell_valueshe…...
网站建设 辉煌电商/快刷网站
vue中过滤器的使用什么是过滤器过滤器的使用格式语法全局过滤器1、无参数用法2、带参数用法3、多个过滤器嵌套使用4、全局过滤器的好处私有过滤器1、语法2、就近原则3、注意点什么是过滤器 概念:vue.js允许你自定义过滤器,可用于一些常见的文本格式化。…...
做网站的软件dw/seo外链资源
题目 数组A中任意两个相邻元素大小相差1,现给定这样的数组A和目标整数t,找出t在数组A中的位置。如数组:[1,2,3,4,3,4,5,6,5],找到4在数组中的位置。 思路 这道题目最差时间复杂度也是O(N),所以重…...
苏州网站建设与网络营销/网站关键词搜索排名优化
常用模块 一、random模块 import random# print(random.random()) #打印0-1之间的小数 # print(random.randint(1,3)) #大于等于1小于等于3之间的整数 # print(random.randrange(1,5)) #大于等于1小于5之间的整数 # print(random.choice([1,23,[4,5]])) #1或者23ÿ…...
深圳做营销网站的公司简介/如何开网站呢
发布订阅(pub/sub)是一种消息通信模式,主要的目的是解耦消息发布者和消息订阅者之间的耦合,这点和设计模式中的观察者模式比较相似。pub /sub不仅仅解决发布者和订阅者直接代码级别耦合也解决两者在物理部署上的耦合。redis作为一个pub/sub server&#…...
无锡网站制作哪家好/关键词提取工具
如果每周要你从sql server生产库的备份还原到本地备份库,你会怎么做?我有200多个sql server 数据库,那不能一个个恢复,太让费时间,于是我想偷个懒,把所有要恢复的所有项目数据库备份集文件全放到一个目录里…...
wordpress 安装语言/网络营销的具体形式种类
随着微信的普及,扫码登录方式越来越被现在的应用所使用。它因为不用去记住密码,只要有微信号即可方便快捷登录。微信的开放平台原生就有支持扫码登录的功能,不过大部分人还是在用公众平台,所以扫码登录只能自行实现。这里基于微信…...