gpt4 book ai didi

linux-kernel - Linux内核中的dm和md有什么区别?

转载 作者:行者123 更新时间:2023-12-04 05:15:11 24 4
gpt4 key购买 nike

Linux 内核中的 dm (dmsetup) 和 md (mdadm) 模块有什么区别? [两者似乎都是逻辑卷管理器] 哦,是的,还有 lvm (lvm)。这一切有什么区别?

最佳答案

医学博士 是多个设备。它是自内核版本 2.0 以来可用的 Linux 内核中的 RAID 实现。它允许您创建 RAID 级别 0、10、4、5 和 6。它具有各种优化,例如利用 SSE 和 MMX 指令。它是 Linux 中的标准软件 RAID。

私信是设备映射器。它是一个 Linux 内核框架,允许您将一个设备映射到另一个设备(一个或多个)。这相当于创建您可以在/dev/mapper 目录中访问的虚拟设备(映射设备)。该设备的所有 I/O 都将映射到其他设备。使用设备映射器的原因是在很多情况下您需要映射设备,但您希望重用代码。

有几个驱动程序(称为 dm 目标)使用设备映射器,例如:

  • dm-linear - 将一个设备线性映射到另一个设备。这意味着您的新设备将通过一些 LBA 转换将 I/O 请求转换为底层设备。例如,当您从/dev/mapper/linear 在 LBA 1000 处读取时,您的读取将在/dev/sdd 的 LBA 1050 处完成。
  • dm-stripe - 将一个设备映射到多个设备,如 RAID 0。

  • dm-stripe 和 md RAID level 0 之间的区别并不大——只是实现方式不同,但我相信 md RAID 具有更好的性能。

    最后, lvm 是在 linux 上提供逻辑卷管理工具的用户空间工具集。它使用设备映射器将卷组和逻辑卷映射到物理设备。

    还有一个特别令人困惑的案例—— dm-raid ,您可以阅读 here

    关于linux-kernel - Linux内核中的dm和md有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23164384/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com