长期支持版本

    社区创新版本

      设备管理

      设备管理器作为连接用户态软件与底层物理设备的桥梁,支撑着 lvm2NetworkManager等关键基础软件的运作。devmaster作为 sysMaster的设备管理组件,一方面支撑 sysMaster的快速启动以及用户态软件的生态兼容,另一方面通过对 Linux生态下主流设备管理方案的现状和优劣进行了总结和思考,从而提供一种分层解耦、可扩展性强、面向通用 OS的设备管理能力。

      devmaster由常驻进程、客户端工具和动态库组成。常驻进程devmaster基于内核提供的netlinkinotifysysfs等机制,监听设备事件并触发规则处理任务;客户端工具devctl和动态库libs提供一组命令行指令以及公开接口,用于调试规则、控制常驻进程、查询设备状态等等。devmaster的总体架构如下图所示:

      图1 devMaster的总体架构 devMaster的总体架构

      devmaster使用 Rust语言编写,能够原生消除内存安全类问题。devmaster的核心功能如下:

      1. 事件驱动:利用队列缓存和 worker池机制,满足设备事件高并发的场景,并支持将设备就绪状态动态地通知到用户态进程。
      2. 机制与策略分离:将设备处理逻辑定义在规则中,避免业务硬编码,提供按需定制、灵活组合的能力。
      3. 生态兼容:良好地兼容 udev语法和 udev用户态广播协议,支持原有业务低成本迁移到 devmaster环境。

      文档捉虫

      “有虫”文档片段

      问题描述

      提交类型 issue

      有点复杂...

      找人问问吧。

      PR

      小问题,全程线上修改...

      一键搞定!

      问题类型
      规范和低错类

      ● 错别字或拼写错误;标点符号使用错误;

      ● 链接错误、空单元格、格式错误;

      ● 英文中包含中文字符;

      ● 界面和描述不一致,但不影响操作;

      ● 表述不通顺,但不影响理解;

      ● 版本号不匹配:如软件包名称、界面版本号;

      易用性

      ● 关键步骤错误或缺失,无法指导用户完成任务;

      ● 缺少必要的前提条件、注意事项等;

      ● 图形、表格、文字等晦涩难懂;

      ● 逻辑不清晰,该分类、分项、分步骤的没有给出;

      正确性

      ● 技术原理、功能、规格等描述和软件不一致,存在错误;

      ● 原理图、架构图等存在错误;

      ● 命令、命令参数等错误;

      ● 代码片段错误;

      ● 命令无法完成对应功能;

      ● 界面错误,无法指导操作;

      风险提示

      ● 对重要数据或系统存在风险的操作,缺少安全提示;

      内容合规

      ● 违反法律法规,涉及政治、领土主权等敏感词;

      ● 内容侵权;

      您对文档的总体满意度

      非常不满意
      非常满意
      提交
      根据您的反馈,会自动生成issue模板。您只需点击按钮,创建issue即可。
      文档捉虫
      编组 3备份