8 磁盘存储器的管理

  1. 外存的组织方式

    1. 连续组织方式:为每一个文件分配一组相邻接的盘块

    2. 链接组织方式:多个不连续的盘块 链接指针

      1. 隐式链接

      2. 显示链接:文件分配表FAT

        1. FAT技术:

          FAT12(512B)、以簇为单位的FAT12文件系统、FAT16、FAT32

    3. NTFS的文件组织方式:以文件的形式来对数据进行管理,以簇为单位来存储数据的,具有了与磁盘物理块大小无关的独立性,以主控文件表MFT为核心

    4. 索引组织方式

  2. 文件存储空间的管理

    1. 空闲表法和空闲链表法
      1. 空闲表:空闲表法属于连续分配方式,采用首次适应算法和最佳适应算法等
      2. 空闲链表法
        1. 空闲盘块链
        2. 空闲盘区链
    2. 位示图法
      1. 位示图:是利用二进制的一位来表示磁盘中一个盘块的使用情况
  3. 提高磁盘I/O速度的途径

    1. 磁盘高速缓存
      1. 数据交付方式
        1. 数据交付
        2. 指针交付
      2. 置换算法:LRU (最近最久未使用)、NRU(最近未使用)、LFU(最少使用)
      3. 周期性的写回磁盘
    2. 提高磁盘I/O速度的其它方法:
      1. 提前读
      2. 延迟写
      3. 优化物理块的分布
      4. 虚拟盘RAM:利用内存空间去仿真磁盘
    3. 廉价磁盘冗余阵列RAID
      1. 并行交叉存取:系统将每一盘块中的数据分为若干个子盘块数据,再把每一个子盘块的数据分别存储到各个不同磁盘中的相同位置上。
      2. RAID分级
        1. RAID 0级:高效传输 无冗余校验
        2. RAID 1级:可靠性好,磁盘容量利用率低
        3. RAID 3级:利用奇偶校验盘完成数据校验功能
        4. RAID 5级:奇偶校验码在不同的磁盘上,可靠性提高
        5. RAID 6级和RAID 7级
  4. 提高磁盘可靠性的技术

    1. 第一级容错技术SFT - I:
      1. 双份目录、双份文件分配表、
      2. 热修复重定向和写后读校验
    2. 第二级容错技术SFT - II:
      1. 磁盘镜像
      2. 磁盘双工
    3. 基于集群技术的容错功能:
      1. 双机热备份模式
      2. 双机互为备份模式
      3. 公用磁盘模式
    4. 后备系统
      1. 磁带机
      2. 硬盘
      3. 光盘驱动器
  5. 数据一致性控制

    1. 事务:事务是用于访问和修改各种数据项的一个程序单位。事务也可以被看做是一系列相关读和写操作

      1. 事务记录:运行记录 log

      2. 恢复算法

        1. undo:恢复为修改前的值
        2. redo:修改过的数据设置为新值
    2. 检查点

    3. 并发控制

      1. 利用互斥锁实现"顺序性"
      2. 利用互斥锁和共享锁实现顺序性
    4. 重复数据的数据一致性问题

      1. 重复文件的一致性
      2. 链接数一致性检查
相关推荐
韩楚风2 小时前
【参天引擎】一次宕机后的数据恢复,让我把 Cantian 持久化与恢复的六大机制全搞明白了
服务器·网络·数据库·分布式·mysql·架构·cantian
kirs_ur3 小时前
SSD 安全特性 — 加密与 TCG Opal
服务器·网络·安全
智购科技智能售货柜3 小时前
无人售货机连不上服务器?MQTT 频繁掉线排查全流程~YH
运维·服务器
Mortalbreeze3 小时前
深入 Linux Socket 编程:端口号、网络字节序与 struct sockaddr 详解
linux·服务器·网络·c++
躺柒3 小时前
读半导体简史08大型机
linux·服务器·c语言·数据库·unix·ibm
井川廊咏3 小时前
【总集篇】Linux | 如何创建一个 home 目录在 /data 磁盘的 sudo 用户(补档)
linux·运维·服务器
Dear~yxy5 小时前
LVS企业级实战
linux·服务器·lvs
Sirius Wu6 小时前
OpenClaw Model Provider(模型提供商)完整详解
服务器·网络·人工智能·安全·aigc
2301_777998346 小时前
Linux线程控制——从线程创建到线程分离(第三部分:线程等待 pthread_join)
linux·运维·服务器·c语言·c++
谜之锋7 小时前
Linux 源码编译安装 net-snmp-5.9.1 并配置使用 SNMPv3
linux·运维·服务器·snmpv3