学习指南

文件管理

CIE A-Level 计算机科学· 第5单元:系统软件· 15 分钟阅读

1. 文件管理的核心作用★★☆☆☆⏱ 10 min

📘 定义

文件管理

操作系统中,负责管理文件和数据如何在辅助存储设备上存储、组织、访问和保护的组件。

例:

处理硬盘驱动器或SSD上文件的创建、删除、修改和读取操作。

文件管理向用户和应用程序抽象了物理存储的细节,提供数据的逻辑视图,无需程序直接与硬件扇区交互。它还通过访问控制提供安全性,并确保可用存储空间的高效利用。

📐 例题

列出文件管理系统为最终用户提供的三项核心服务。

  1. 1
    1. 组织和命名:允许用户为文件自定义名称,并将相关文件分组到文件夹/目录中。
  2. 2
    1. 访问安全:提供权限系统,限制哪些用户可以读取、修改或执行特定文件。
  3. 3
    1. 硬件抽象:对用户隐藏文件数据的物理位置,无需用户直接管理磁盘扇区。

Exam tip:

回答4分及以上的题目时,务必将文件管理服务同时关联到用户需求和操作系统效率。

2. 文件分配方式★★★☆☆⏱ 15 min

✓ 计算器

📘 定义

文件分配

为逻辑文件分配磁盘上物理存储簇的过程。

  • 连续分配:所有文件块都存储在磁盘簇的单个连续区域中

  • 链接分配:每个文件块都包含一个指向下一个块的指针,下一个块可以存储在磁盘的任意位置

  • 索引分配:一个特殊的专用索引块存储所有指向文件各个数据块的指针

📐 例题

一个大小为5242900字节的文件存储在簇大小为1KB(1024字节)的磁盘上,计算该文件需要的簇数量和内部碎片的大小。

  1. 1

    步骤1:用文件大小除以簇大小,向上取整得到所需簇数量:

  2. 2
    ext{Number of clusters} = ext{ceil} rac{5242900}{1024} = 5121
  3. 3

    步骤2:计算总分配空间:

  4. 4
    5121imes1024=5243904extbytes5121 imes 1024 = 5243904 ext{ bytes}
  5. 5

    步骤3:用分配空间减去实际文件大小得到内部碎片大小:

  6. 6
    52439045242900=1004extbytes5243904 - 5242900 = 1004 ext{ bytes}

3. 碎片与碎片整理★★★☆☆⏱ 12 min

当存储空间利用效率低下时就会产生碎片,导致访问速度变慢或可用容量降低。碎片主要有两种类型:

  • 内部碎片:已分配簇内的未使用空间(当文件小于簇大小时产生)

  • 外部碎片:空闲空间被分割为许多不连续的小块,即使总空闲空间足够,也没有单个块足够大来容纳新文件

📘 定义

碎片整理

将文件块和空闲空间重新排列为连续块,以减少访问时间并消除外部碎片的维护过程。

📐 例题

解释为什么碎片对SSD的影响远小于对HDD的影响。

  1. 1
    1. HDD有移动的读写磁头,访问非连续块需要额外的寻道时间,因此碎片会显著降低访问速度。
  2. 2
    1. SSD没有移动部件,访问任意内存地址的时间大致相同,因此非连续块不会增加寻道时间。
  3. 3
    1. 碎片整理还会产生额外的写入周期,缩短SSD的使用寿命,因此不建议对固态存储进行碎片整理。

4. 目录与访问权限★★☆☆☆⏱ 10 min

现代文件系统使用分层树形结构的目录来组织文件,允许用户将相关文件分组,轻松导航存储。访问权限控制不同用户组可以对文件或目录执行的操作,是核心的安全功能。

  • 读(r):允许打开和读取文件内容,或列出目录中的文件

  • 写(w):允许修改、重命名或删除文件,或向目录添加文件

  • 执行(x):允许将文件作为可执行程序或脚本运行

📐 例题

大学文件服务器在阅卷前存储学生的作业。学生(所有者)、其他学生(用户组)和普通公众应该获得学生作业文件的什么权限?

  1. 1
    1. 所有者(学生):提交前需要编辑文件,因此分配读+写权限(文档文件不需要执行权限)。
  2. 2
    1. 其他学生:为防止抄袭,其他学生不应能访问该文件,因此不分配任何权限。
  3. 3
    1. 普通公众:和其他学生一样,不授予任何权限,防止阅卷前被未授权访问。

5. 常见陷阱

错误做法:

混淆内部碎片和外部碎片

原因:

许多学生混淆两种碎片,搞错未使用空间所在的位置

正确做法:

记住:内部碎片是已分配簇内部的未使用空间,外部碎片是已分配文件之间被分割为小块的未使用空闲空间

错误做法:

认为碎片整理可以修复内部碎片

原因:

碎片整理仅重新排列已分配块的存储位置,无法改变每个簇分配的空间大小

正确做法:

只有使用更小的簇大小才能减少内部碎片,碎片整理无法做到。碎片整理仅能修复外部碎片

错误做法:

认为连续分配总是优于其他分配方式

原因:

连续分配读取速度快,但存在回答中经常被遗漏的重大缺点

正确做法:

要承认权衡:连续分配访问速度更快,但会产生外部碎片,且难以扩展现有文件

错误做法:

认为读取文件需要执行权限

原因:

学生通常认为所有文件都需要执行权限才能被访问

正确做法:

每个权限对应不同操作:读权限控制对文件内容的访问,执行权限仅控制运行程序文件

6. 速查表

分配方式

核心优点

核心缺点

产生的碎片类型

连续分配

随机访问速度快,实现简单

产生外部碎片,难以扩展文件

外部+内部

链接分配

无外部碎片,易于扩展文件

不支持直接随机访问,需要额外空间存储指针

仅内部

索引分配

支持直接随机访问,无外部碎片

索引块存在额外开销,小文件会浪费空间

仅内部

真题中的出现

AI 根据考纲规律估算的考点位置,请对照官方真题核实准确性。仅作复习重点参考。

  • 2022 · 2

    比较文件分配方式

  • 2023 · 2

    解释碎片产生的原因

  • 2024 · 2

    描述文件权限类型

深入阅读

下一步

文件管理是系统软件的核心组件,连接底层存储硬件和高层用户应用程序。理解文件分配和碎片的工作原理,有助于你回答试卷2中的概念题和计算题,也为理解虚拟内存、磁盘调度等更高级的操作系统概念打下基础。你在这里学到的概念也适用于现实世界的系统维护,例如格式化驱动器时选择簇大小,以及为了安全性设置正确的文件权限。探索下面的相关主题,拓展你对系统软件的知识。