详解Linux中的虚拟文件系统
除了 procfs 为用户空间提供了内核及其控制的进程的瞬时状态的快照。在 /proc/meminfo 是一个空文件,但仍包含有价值的信息。
当没有进程访问它们时,/proc 中的文件为空。(来源) procfs 的空文件是有道理的,因为那里可用的信息是动态的。sysfs 的情况则不同。让我们比较一下 procfs 只有一个不为空的文件,即导出的内核配置,这是一个例外,因为每次启动只需要生成一次。另一方面, sysfs 的目的是将内核称为 “kobject” 的可读写属性公开给用户空间。kobject 的唯一目的是引用计数:当删除对 kobject 的最后一个引用时,系统将回收与之关联的资源。然而, 内核的稳定 ABI 限制了 sysfs 中的文件确切地描述了实体的每个属性,并且可以是可读的、可写的,或两者兼而有之。文件中的“0”表示 SSD 不可移动的存储设备。 用 eBPF 和 bcc 工具一窥 VFS 内部了解内核如何管理 sysfs 文件的最简单方法是观察它的运行情况,在 ARM64 或 x86_64 上观看的最简单方法是使用 eBPF。eBPF(扩展的伯克利数据包过滤器)由在内核中运行的虚拟机组成,特权用户可以从命令行进行查询。内核源代码告诉读者内核可以做什么;而在一个启动的系统上运行 eBPF 工具会显示内核实际上做了什么。 令人高兴的是,通过 bcc 工具入门使用 eBPF 非常容易,这些工具在主要 Linux 发行版的软件包 中都有,并且已经由 Brendan Gregg 给出了充分的文档说明。bcc 工具是带有小段嵌入式 C 语言片段的 Python 脚本,这意味着任何对这两种语言熟悉的人都可以轻松修改它们。据当前统计,bcc/tools 中有 80 个 Python 脚本,使得系统管理员或开发人员很有可能能够找到与她/他的需求相关的已有脚本。 要了解 VFS 在正在运行中的系统上的工作情况,请尝试使用简单的 vfscount 或 vfsstat 脚本,这可以看到每秒都会发生数十次对 vfsstat.py 是一个带有嵌入式 C 片段的 Python 脚本,它只是计数 VFS 函数调用。 (编辑:海南站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 微软发布Win10是什么时间
- 微软新更新导致Windows Server系统出现严重故障
- 微软发布Wndows 11更新 解决PC降速、性能变缓等问题!
- Windows 10新补丁KB4515384成噩梦:Bug接连不断
- 如何在Ubuntu LTS系统上启用Canonical的内核实时补丁服务
- windows-xp – 告诉我使用基于SSL的WebDAV进行文件服务器访
- 微软发布新更新:修整Windows11上AMD性能问题
- win10通知中心怎么关掉声音 win10通知中心声音设置方法
- 如何在Linux Mint中更换主题
- windows-server-2003 – 如何安排任务在Windows Server 200