七、逻辑卷管理

逻辑卷管理(简称LVM),是Linux环境下对磁盘分区进行管理的一种机制,LVM是建立在硬盘和分区之上的一个逻辑层。

通过LVM管理可以轻松管理磁盘分区,如:若干个磁盘分区连接为一整块的卷组,形成一个存储池。管理员可以在卷组上随意创建逻辑卷组,并进一步在逻辑卷组上创建文件系统。管理员通过LVM可以方便调整卷组大小,并且可以按照磁盘存储的方式进行命名、管理和分配。

LVM的配置信息记录在叫做VGDA(Volume Group Descriptor Area)的区域,LVM就是通过读取这个区域来获取LVM的配置信息,比如:PP的大小、初始偏移、PV的数量和信息、排列顺序以及映射关系等。LVM初始化的时候会读取这些信息,然后在缓存中生成对应的映射公式,从而完成LV的挂载。挂载之后就可以接受IO了。比如上层访问某个LV的LBA 0xFF地址,那么LVM就通过缓存中的映射关系判断这个地址对应的实际物理磁盘在哪儿或者哪几个实际地址。假设这个地址实际对应了磁盘a的LBA 0xAA地址,那么就会通过磁盘控制器驱动直接给这个地址发送数据,而这个地址被RAID控制器接收后,可能还要做一次转换。因为OS的“物理磁盘”可能对应真正的存储总线上的多块物理磁盘,这个映射要通过RAID控制器来做了,原理都是一样的。

卷管理软件就是运行在OS操作系统磁盘控制器驱动程序之上的一层软件程序,它的作用是实现RAID卡硬件管理磁盘空间所实现不了的功能,比如随时扩容等。

从底向上依次是物理磁盘、磁盘控制器、IO总线、总线驱动、磁盘控制器驱动、卷管理软件程序、OS磁盘管理器中看见的磁盘设备。

八、文件系统IO

图中的IO Manager是操作系统内核的一个模块,专门用来管理IO,并协调文件系统、卷、磁盘驱动程序各个模块之间的运作。整个流程解释如下:

1) 某时刻,某应用程序调用文件系统接口,准备写入某文件某个字节开始的若干字节。

2) IO Manager最终将这个请求发送给文件系统模块。

3)文件系统将某个文件对应的逻辑偏移映射成卷的LBA地址偏移。

4)文件系统向IO Manager请求调用卷管理软件模块的接口。

5)卷管理软件将卷对应的LBA地址偏移翻译映射成实际物理磁盘对应的LBA地址偏移,并请求磁盘控制器驱动程序。

6)IO Manager向磁盘控制器驱动程序请求对应LBA地址段的数据从内存写入到某块物理磁盘。

                            Windows系统的IO简化流程图

copyright@2015 liupan

liu.pan@datatom.com

转载于:https://www.cnblogs.com/panliu/p/4441611.html

大话存储学习笔记(4)相关推荐

  1. 华为存储学习笔记-1

    华为存储学习笔记-1 存储含义 存储体系内容 企业级存储一般关注的点 容灾和备份的区别 存储方案发展 存储方案 未来存储结构的发展趋势 由新兴业务主导催生的新的资源供给模式 关键名词拓展 数据与信息 ...

  2. 华为存储学习笔记-8

    华为存储学习笔记-8(RAID 2.0 +系列2) RAID 2.0+ 组成概念 硬盘域 存储池&存储层级 硬盘组 逻辑磁盘 CK CKG Extent Grain Volume & ...

  3. 华为存储学习笔记-6

    华为存储学习笔记-RAID技术(1) 传统RAID技术 RAID技术基本概念 RAID 0 RAID 1 RAID 3 RAID 5 RAID 6 RAID 10 RAID 50 传统RAID技术 R ...

  4. 华为存储学习笔记-2

    华为存储学习笔记-存储组件(1) 控制框 硬盘框 级联模块 控制框 控制框形态 控制框是承载了控制器的机框,对外提供存储服务,它是存储系统中的核心组件.控制框采用部件模块化设计,主要由系统插框.控制器 ...

  5. 华为存储学习笔记-5

    华为存储学习笔记-存储组件(4) 接口模块 GE接口模块 SAS级联模块和RDMA接口模块 SmartIO接口模块 PCIe接口模块和56Gb IB接口模块 FC接口和FCoE接口模块 接口模块 GE ...

  6. 华为存储学习笔记-7

    华为存储学习笔记-7(RAID 2.0 +系列1) RAID技术演变 RAID 2.0+ 基本原理 RAID技术演变 近年来随着数据存储需求的快速增长,单盘容量不断增大,高性能应用的不断涌现,传统RA ...

  7. 大话设计模式学习笔记C++

    一.简单工厂模式 1.面向对象的好处 通过封装.继承.多态把程序的耦合度降低. 用设计模式使得程序更加的灵活,容易修改,并且易于复用. 如实现计算机的功能时,将业务逻辑与界面逻辑分开,让它们的耦合度下 ...

  8. HTML5存储学习笔记(一)

    2019独角兽企业重金招聘Python工程师标准>>> 1.HTML5之前的存储方式 HTML5之前常用的存储方式为cookies. cookies在浏览器中的存储形态,以百度首页的 ...

  9. SAP Spartacus的持久化存储学习笔记

    https://sap.github.io/spartacus-docs/configurable-state-persistence-and-rehydration/ Spartacus offer ...

最新文章

  1. Python 库突发 PyPI 危机!
  2. 性能测试总结(一)---基础理论篇
  3. boost::pointer_traits的用法实例
  4. codeforce#365D Free Market
  5. pyplot交互地画多个plot
  6. redis的zset类型(有序集合)
  7. 【报告分享】2021快手内容生态半年报:从心出发.pdf(附下载链接)
  8. wxpython制作表格界面_Python wxPython库使用wx.ListBox创建列表框示例
  9. 经验贴-基于Vc++开发IIS7以及IIS6的万能筛选器
  10. mysql表单设计_【mysql】自定义表单系统 如何设计数据库
  11. 2020腾讯软件测试实习面经
  12. u盘在 计算机管理显示无媒体,urdrive_u盘显示无媒体怎么办_启动盘
  13. 用Aria2来替换迅雷
  14. OutMan——Objective-C中成员变量的作用域、@property和@synthesize介绍和使用、构造方法和自定义构造方法
  15. 2015年数模B题学习报告
  16. 全球400多支团队参加,鹅厂是如何拿下冠军的
  17. 常用的分析管理工具方法【整理】
  18. 百度换肤JavaScript功能
  19. Android 进阶之路:ASM 修改字节码,这样学就对了!
  20. 巨噬细胞膜包覆的负载二氧化锰MnO2和顺铂Pt的仿生纳米粒(齐岳)

热门文章

  1. ACMMM 2021《LSG》性能SOTA!用GNN和GAN的方式来强化Video Captioning的学习!
  2. 深度人脸表情识别研究进展
  3. 深圳,本周日,华为云开发者大会,免费报名中
  4. 直播课 | 三维人体扫描与AI测量
  5. 当医学影像遇见深度学习,MIDL 2020 论文征稿
  6. 计算机视觉论文-2021-06-30
  7. 收藏 | 深度学习不确定性量化: 技术、应用与挑战
  8. Facebook田渊栋谈人生挑战与选择
  9. 张航、李沐等人提出ResNet最强改进版:性能提高3%,参数不增
  10. Github | 标星9W+如何准备谷歌面试?