讲师中心 微信公众号
AI工具推荐 视频效率加速

如何管理 Linux 块设备驱动:深入理解 sysfs 存储信息

酷辰姑娘_6623

酷辰姑娘_6623

发布时间:2026-06-28 12:43:55

|

581人浏览过

|

来源于php中文网

原创

Linux块设备驱动通过/sys/block实时映射内核设备模型:每个设备对应gendisk实例,含device/、queue/、holders/等子目录;queue/支持调度器切换与I/O调优;分区为独立目录且动态更新。

如何管理 linux 块设备驱动:深入理解 sysfs 存储信息

Linux 块设备驱动的管理,核心在于理解 sysfs 如何将内核中抽象的设备模型映射为用户空间可读写的文件结构。它不是简单地“查看设备”,而是通过 /sys/block 下的层级关系、属性文件和符号链接,把驱动注册、设备拓扑、队列参数、分区状态等关键信息实时暴露出来。

/sys/block 是块设备的统一视图入口

所有已识别的块设备(如 mmcblk0、sda、nvme0n1)都会在 /sys/block/ 下生成同名子目录。这个目录本身不存储设备数据,而是内核对 block_device 结构体的 sysfs 表达——每个子目录对应一个 gendisk 实例。

  • 目录名即设备主节点名,例如 ls /sys/block 可见 mmcblk0、loop0 等;
  • 每个子目录下包含 device/(指向 /sys/devices 中的真实设备路径)、queue/(I/O 队列参数)、holders/(挂载该设备的逻辑卷或 DM 设备)、slaves/(底层物理设备,如 RAID 成员盘)等关键子目录;
  • 直接位于设备目录下的文件(如 size、ro、range)是只读属性,反映当前设备状态;
  • 部分文件(如 queue/scheduler、queue/iostats)支持写入,用于动态调整调度策略或启用统计功能。

通过 device/ 和 devices/ 关联驱动与硬件拓扑

/sys/block/*/device 是一个符号链接,指向 /sys/devices/ 下对应的实际设备路径。这个跳转揭示了驱动与总线、平台控制器之间的绑定关系。

Linux Distros
Linux Distros

Linux发行版游乐场,适用于需要临时Linux沙箱、基于浏览器的Linux虚拟机、一次性终端环境、桌面Linux会话等场景

下载
  • 例如:readlink /sys/block/mmcblk0/device 可能返回 ../../devices/platform/soc/7824000.sdhci/mmc_host/mmc0/mmc0:0001,说明该 eMMC 设备由 SDHCI 控制器驱动,挂载在 soc 平台总线上;
  • 顺着这个路径进入 /sys/devices/,能看到完整的设备树结构:从 platform → sdhci → mmc_host → mmc0 → mmc0:0001,每一级都对应一个 kobject,也对应一个驱动模块或平台设备;
  • 在 device 目录下还能看到 driver 符号链接,指向实际加载的驱动(如 /sys/bus/platform/drivers/sdhci_pltfm),确认驱动是否已成功 probe。

利用 queue/ 子目录调优 I/O 行为

/sys/block/*/queue/ 是块设备驱动最关键的配置接口之一,它暴露的是 request_queue 的运行时参数,直接影响性能与功耗。

  • rotational:值为 0 表示 SSD 或 eMMC(非旋转介质),影响 I/O 调度器选择逻辑;
  • scheduler:显示当前启用的 I/O 调度器(如 mq-deadline、kyber、none),可通过 echo kyber > scheduler 切换(需驱动支持多队列);
  • nr_requests:单次请求队列最大请求数,调大可提升吞吐,但增加延迟;
  • iosched/(若存在):特定调度器的细粒度参数,如 deadline 的 fifo_batch、read_expire 等;
  • add_random:控制是否将设备 I/O 时间戳贡献给内核熵池,对嵌入式系统熵源有实际意义。

分区信息与动态变更感知

块设备的分区(如 mmcblk0p1、sda1)同样出现在 /sys/block/ 下,但它们是独立的子目录,且不包含 device/ 链接——因为分区本身没有独立的硬件实体,只是主设备上的逻辑切片。

  • 分区目录下有 start 和 size 文件,单位为扇区(通常是 512 字节),可用于计算偏移与容量;
  • partition 文件内容为 1,标识其为分区而非主设备;
  • 当执行 fdisk、partprobe 或内核检测到分区表变更时,/sys/block/ 下会自动增删分区目录,无需重启;
  • 注意:某些精简内核可能禁用 CONFIG_SYSFS_DEPRECATED_V2,导致旧版分区命名(如 sda1)不再出现,需依赖 udev 规则或 /proc/partitions 辅助识别。

sysfs 对块设备的呈现不是静态快照,而是内核设备模型的实时镜像。掌握它,等于掌握了从驱动加载、硬件绑定、I/O 配置到分区变更的全链路可观测能力。不复杂但容易忽略

相关文章

驱动精灵
驱动精灵

驱动精灵基于驱动之家十余年的专业数据积累,驱动支持度高,已经为数亿用户解决了各种电脑驱动问题、系统故障,是目前有效的驱动软件,有需要的小伙伴快来保存下载体验吧!

下载

相关标签:

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门AI工具

更多
豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

PixPix
PixPix Hot

PixPix是一款面向电商视觉生产的AI商品图生成工具。

Lovart
Lovart Hot

一款面向视觉设计创作的AI设计平台,可通过智能体和画布工作流辅助制作海报、Logo、网页、PPT及其他视觉内容。

UpDream
UpDream Hot

一款AI视频创作工具,主要用于哔哩哔哩推出的自研AI视频创作工具,适合需要提升相关任务效率的用户。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

VibeKnow
VibeKnow Hot

一款AI视频创作工具,主要用于全球首个AI知识视频创作平台,文档、文章、网页,一键生成视频,适合需要提升相关任务效率的用户。

切问学术

切问学术是一款AI论文写作工具,复旦大学NLP团队推出的AI学术智能体。

二狗PPT
二狗PPT Hot

一款AI演示文稿工具,主要用于专为中式职场打造的AI PPT生成工具,适合需要提升相关任务效率的用户。

相关专题

更多
服务器是什么
服务器是什么

服务器是一种计算机硬件设备或软件程序,它具有强大的计算和存储能力,用请求、存储数据和提供服务。它在互联网中着关重要的作用,为用户提供各种服务和资源。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

437

2023.08.15

连接apple id服务器时出错
连接apple id服务器时出错

连接apple id服务器时出错的原因包括网络连接问题、服务器问题、Apple ID账户问题、设备问题、防火墙或安全软件问题、时间和日期设置问题、Apple服务器维护等。本专题为大家提供apple id相关的文章、下载、课程内容,供大家免费下载体验。

900

2023.09.08

搭建互联网服务器
搭建互联网服务器

搭建互联网服务器需要:1、选择合适的硬件和操作系统,第一步是选择合适的硬件和操作系统;2、安装和配置操作系统,是搭建互联网服务器的关键步骤;3、安装和配置服务器软件,是搭建互联网服务器的下一步,常见的服务器软件包括Apache、Nginx、Tomcat等;4、配置防火墙和安全性,是搭建互联网服务器的重要步骤;5、域名解析和配置,是搭建互联网服务器的最后一步。

2812

2023.09.19

如何查看服务器状态
如何查看服务器状态

查看服务器状态的方法有使用命令行工具、图形界面工具、监控工具、日志文件和远程管理工具等。本专题为大家提供服务器状态相关的文章、下载、课程内容,供大家免费下载体验。

936

2023.10.09

服务器域名转接慢怎么解决
服务器域名转接慢怎么解决

服务器域名转接慢的解决办法有DNS优化、服务器优化、CDN加速、前端优化和网络优化等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

849

2023.10.17

服务器评测软件
服务器评测软件

服务器评测软件有PassMark Software、CPU-Z、GPU-Z、CrystalDiskMark、IOmeter、JMeter、LoadRunner、Apache Bench等等。详细介绍:1、PassMark Software是一款综合性的服务器性能测试软件,可以评估服务器在各种负载条件下的性能;2、CPU-Z是一款可以提供服务器CPU详细信息的软件等等。

434

2023.10.17

如何开启TFTP服务器
如何开启TFTP服务器

开启TFTP服务器的步骤包括选择TFTP服务器软件、下载和安装软件、配置TFTP服务器以及启动和测试服务器等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2556

2023.10.18

服务器负载不兼容怎么解决
服务器负载不兼容怎么解决

解决方法:1、增加服务器资源;2、负载均衡;3、优化应用程序;4、增加缓存机制;5、分布式架构;6、限流和熔断;7、自动化扩容。想知道更详细服务器负载不兼容的解决方法,可以访问本专题下面的文章。

4732

2023.10.20

PixTV官网入口地址合集
PixTV官网入口地址合集

本专题汇总了 PixTV AI 一站式视频创作平台的官方入口与使用教程。无需下载软件,浏览器直接访问即可使用。平台将剧本、图像、视频、声音与剪辑整合在“无限画布”中,接入 GPT Image 2.5、Seedance 2.5 等头部模型。本专题整理了从新建画布、角色锚定、分镜拆分到视频生成与导出的完整操作指南,助你快速上手 AI 短剧与漫剧创作。

20

2026.10.10

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Buffalo框架快速入门指南
Buffalo框架快速入门指南

共0课时 | 0人学习

Valgrind支持平台说明
Valgrind支持平台说明

共0课时 | 0人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn