diff --git a/Operate-System/3-file-management-ex.md b/Operate-System/3-file-management-ex.md index dc94323..001fec7 100644 --- a/Operate-System/3-file-management-ex.md +++ b/Operate-System/3-file-management-ex.md @@ -38,76 +38,6 @@ $D.$用户 解:$D$。文件结构包括逻辑结构和物理结构。逻辑结构是用户组织数据的结构形式,数据组织形式来自需求,而物理结构是操作系统组织物理存储块的结构形式。因此说,逻辑文件的组织形式取决于用户,物理结构的选择取决于文件系统设计者针对硬件结构(如磁带介质很难实现链接结构和索引结构)所采取的策略(即$A$和$B$选项)。 -### 文件共享 - -**例题** 若文件$f1$的硬链接为$f2$,两个进程分别打开$f1$和$f2$,获得对应的文件描述符为$fd1$和$fd2$,则下列叙述中正确的是()。 - -Ⅰ.$f1$和$f2$的读写指针位置保持相同 - -Ⅱ.$f1$和$f2$共享同一个内存索引结点 - -Ⅲ.$fd1$和$fd2$分别指向各自的用户打开文件表中的一项 - -$A.$仅Ⅲ - -$B.$仅Ⅱ、Ⅲ - -$c.$仅Ⅰ、Ⅱ - -$D.$Ⅰ和Ⅱ、Ⅲ - -解:$B$。硬链接指通过索引结点进行连接。一个文件在物理存储器上有一个索引结点号。存在多个文件名指向同一个索引结点的情况,Ⅱ正确。两个进程各自维护自己的文件描述符,Ⅲ正确,Ⅰ错误。 - -**例题** 若多个进程共享同一个文件$F$,则下列叙述中,正确的是()。 - -$A.$各进程只能用“读”方式打开文件$F$ - -$B.$在系统打开文件表中仅有一个表项包含$F$的属性 - -$C.$各进程的用户打开文件表中关于$F$的表项内容相同 - -$D.$进程关闭$F$时,系统删除$F$在系统打开文件表中的表项 - -解:$B$。多个进程可以同时以“读”或“写”的方式打开文件,操作系统并不保证写操作的互斥性,进程可通过系统调用对文件加锁,保证互斥写(读者-写者问题),$A$错误。整个系统只有一个系统打开文件表,同一个文件打开多次只需改变引用计数,$B$正确。用户进程的打开文件表关于同一个文件不一定相同,例如读写指针位置不一定相同,$C$错误。进程关闭文件时,文件的引用计数减$1$,引用计数变为$0$时才删除系统打开文件表中的表项,$D$错误。 - -### 文件保护 - -**例题** 对一个文件的访问,常由()共同限制。 - -$A.$用户访问权限和文件属性 - -$B.$用户访问权限和用户优先级 - -$C.$优先级和文件属性 - -$D.$文件属性和口令 - -解:$A$。对于这道题,只要能区分用户的访问权限和用户优先级,就能得到正确的答案。用户访问权限是指用户有没有权限访问该文件,而用户优先级是指在多个用户同时请求该文件时应该先满足谁。比如,图书馆的用户排队借一本书,某用户可能有更高的优先级,即他排在队伍的前面,但有可能轮到他时被告知他没有借阅那本书的权限。文件的属性包括保存在$FCB$中对文件访问的控制信息。 - -**例题** 加密保护和访问控制两种机制相比,()。 - -$A.$加密保护机制的灵活性更好 - -$B.$访问控制机制的安全性更高 - -$C.$加密保护机制必须由系统实现 - -$D.$访问控制机制必须由系统实现 - -解:$D$。相对于加密保护机制,访问控制机制的安全性较差。因为访问控制的级别和保护力度较小,因此它的灵活性相对较高。若访问控制不由系统实现,则系统本身的安全性就无法保证。加密机制若由系统实现,则加密方法将无法扩展。 - -**例题** 某文件系统中,针对每个文件,用户类别分为$4$类:安全管理员、文件主、文件主的伙伴、其他用户;访问权限分为$5$种:完全控制、执行、修改、读取、写入。若文件控制块中用二进制位串表示文件权限,为表示不同类别用户对一个文件的访问权限,则描述文件权限的位数至少应为()。 - -$A.5$ - -$B.9$ - -$C.12$ - -$D.20$ - -解:$D$。同一类用户可能有所有可能的权限中的任一组合,所以可以把用户访问权限抽象为一个矩阵,行代表用户,列代表访问权限。这个矩阵有$4$行$5$列,$1$代表$true$,$0$代表$false$,所以需要$4\times5=20$位,选$D$。 - ### 文件物理结构 #### 链接分配 @@ -202,6 +132,18 @@ $D.2^{64}$ 解:$B$。此题容易按照$60$位来计算,任务$60$字节就可以表示出$2^{60}$种不同的名称组合。但是实际上只需要看索引节点长度,因为索引长度代表可支持的索引数量的数量大小,而不同的文件目录可以同名,所以只用看索引节点的个数就可以了,$4B=32bit$,所以就是$2^{32}$个。 +**例题** 在文件的案引结点中存放直接索引指针$10$个,一级和二级索引指针各$1$个,磁盘块大小为$1KB$,每个索引指针占$4B$。若某文件的索引结点已在内存中,则把该文件偏移量(按字节编址)为$1234$和$307400$处所在的磁盘块读入内存,需访问的磁盘块个教分别是()。 + +$A.1,2$ + +$B.1,3$ + +$C.2,3$ + +$D.2,4$ + +解:$B$。一个磁盘可以存放$1KB/4=256$个指针,直接索引指针为$10$个,代表偏移量在$0\sim256\times10=2560$之间的都可以通过直接索引得到。 一级索引指针$1$个,$256\times256=65536$,在$2561\sim65536+2560=68096$之间需要访问两个磁盘块。 二级索引指针$1$个,所以在$68096\sim256^3+68096$之间需要访问三个磁盘块。 + #### 混合分配 **例题** 有一个文件系统如图所示。图中的方框表示目录,圆圈表示普通文件。根目录常驻内存,目录文件组织成链接文件,不设$FCB$,普通文件组织成索引文件。目录表指示下一级文件名及其磁盘地址(各占$2B$,共$4B$)。下级文件是目录文件时,指示其第一个磁盘块地址。下级文件是普通文件时,指示其$FCB$的磁盘地址。每个目录的文件磁盘块的最后$4B$供拉链使用。下级文件在上级目录文件中的次序在图中为从左至右。每个磁盘块有$512B$,与普通文件的一页等长。 @@ -280,6 +222,76 @@ $D.$利用顺序检索法查找完成后,即可得到文件的物理地址 所以$\dfrac{m+3}{2}<\dfrac{n+1}{2}$,即$m0$,说明还有别的用户要使用该文件,暂时不能把文件数据删除,否则会导致指针悬空。 -+ 若$count=0$,则系统需要删除文件。 - -#### 软链接 - -+ 软链接就是共享时建立一个$Link$类型的文件,文件记录了要共享的文件的存放路径或任意一条硬链接路径,类似$Windows$系统的快捷方式。 -+ 文件拥有者才拥有指向其索引结点的指针,而共享该文件的其他用户只有该文件的路径名。 -+ 当访问共享文件时,先判断这个文件属于$Link$类型文件,然后根据其中记录的路径层层查找路径找到索引结点。 -+ 优点: - + 网络共享只用提供文件所在机器的网络地址和文件路径。 - + 若共享文件被删除了,则软链接失效。删除软链接则无影响。 -+ 缺点: - + 当共享文件删除,而其他用户新建一个相同路径的文件则原链接指向的是新文件而不是原文件。 - + 因为软链接访问共享文件时需要查询多层目录,所以有多层$I/O$操作,从而软链接访问速度慢于硬链接。 - -硬链接和软链接都是静态共享方式,都存在一个共同的问题,每个共享文件都有几个文件名,从而每增加一条文件名,当遍历整个文件系统时会多次遍历到该共享文件。 - -多个进程同时对同一个文件操作称为动态共享。 - -### 文件保护 - -口令保护和加密保护是为了防止用户文件被他人存取,而访问控制用于控制用户对文件的访问方式。 - -#### 口令保护 - -+ 为文件设置一个“口令”,用户请求访问该文件时必须提供“口令”。 -+ 口令一般存放在文件对应的$FCB$或索引结点中。用户访问文件前需要先输入“口令”,操作系统会将用户提供的口令与$FCB$中存储的口令进行对比,如果正确,则允许该用户访问文件。 -+ 优点:保存口令的空间开销不多,验证口令的时间开销也很小。 -+ 缺点:正确的“口令”存放在系统内部,不够安全。 - -#### 加密保护 - -+ 使用某个“密码”对文件进行加密,在访问文件时需要提供正确的“密码”才能对文件进行正确的解密。 -+ 系统并不保存原始数据,而是加密过的数据。 -+ 加密方式有异或加密等。 -+ 优点:保密性强,不需要在系统中存储“密码”。 -+ 缺点:编码/译码,或者说加密/解密要花费一定时间。 - -#### 访问控制 - -+ 在每个文件的$FCB$(或索引结点)中增加一个访问控制列表($AccessControl\,List$,$ACL$),该表中记录了各个用户可以对该文件执行哪些操作。 -+ 访问类型包括: - + 读:从文件中读数据。 - + 写:向文件中写数据。 - + 执行:将文件装入内存并执行。 - + 添加:将新信息添加到文件结尾部。 - + 删除:删除文件,释放空间。 - + 列表清单:列出文件名和文件属性。 -+ 优点:可以使用复杂的访问方法。 -+ 缺点:长度无法余集且可能导致复杂的空间管理。 -+ 有的计算机可能会有很多个用户,因此访问控制列表可能会很大,可以用精简的访问列表解决这个问题。 -+ 精简的访问列表:以“组”为单位,标记各“组”用户可以对文件执行哪些操作。当某用户想要访问文件时,系统会检查该用户所属的分组是否有相应的访问权限。所以系统也需要管理分组的信息。 -+ 用户类型: - + 拥有者:创建文件用户。 - + 组:一组需要共享文件且拥有类似访问的用户。 - + 其他:系统内其他所有用户。 -+ 若想要让某个用户能够获取某种权限,需要把该用户放入有该权限的分组即可。 -+ 如果对某个目录进行了访问权限的控制,那也要对目录下的所有文件进行相同的访问权限控制。 - -### 文件系统层次结构 - -1. 设备。 -2. 相关模块 - + 辅助分配模块:管理辅存空间。即负责分配和回收存储空间。 - + 设备管理模块:管理设备。直接与硬件交互,负责和硬件直接相关的一些管理工作。如分配设备、分配设备缓冲区、磁盘调度、启动设备、释放设备等。 -3. 物理文件系统:物理地址转换。这一层需要把上一层提供的文件逻辑地址转换为实际的物理地址。 -4. 逻辑文件系统与文件信息缓冲区:逻辑地址转换。用户指明想要访问文件记录号,这一层需要将记录号转换为对应的逻辑地址。文件信息缓冲区用来在调入索引表到内存时暂存索引表的内容。 -5. 存取控制模块:文件保护。为了保证文件数据的安全,还需要验证用户是否有访问权限。 -6. 文件目录系统:管理文件目录。用户是通过文件路径来访问文件的,因此这一层需要根据用户给出的文件路径找到相应的$FCB$或索引结点。所有和目录、目录项相关的管理工作都在本层完成,如管理活跃的文件目录表、管理打开文件表等。 -7. 用户接口:向用户提供文件目录相关功能接口。这层就是用于处理用户发出的系统调用请求($read$、$write$、$open$、$close$等系统调用)。 -8. 用户/应用程序。 - -假设某用户请求删除文件“$D:$/工作目录/学生信息.$xlsx$”的最后$100$条记录: - -1. 用户需要通过操作系统提供的接口发出上述请求——用户接口。 -2. 由于用户提供的是文件的存放路径,因此需要操作系统一层一层地查找目录,找到对应的目录项――文件目录系统 -3. 不同的用户对文件有不同的操作权限,因此为了保证安全,需要检查用户是否有访问权限―-存取控制模块(存取控制验证层)。 -4. 验证了用户的访问权限之后,需要把用户提供的“记录号”转变为对应的逻辑地址――逻辑文件系统与文件信息缓冲区。 -5. 知道了目标记录对应的逻辑地址后,还需要转换成实际的物理地址――物理文件系统。 -6. 要删除这条记录,必定要对磁盘设备发出请求――设备管理程序模块。 -7. 删除这些记录后,会有一些盘块空闲,因此要将这些空闲盘块回收――辅助分配模块。 - -目录实现: - -+ 线性列表。 -+ 哈希表。 - ### 文件物理结构 文件物理结构即文件分配方式,是对非空间磁盘块的管理。 @@ -361,16 +253,189 @@ + 采用$K$层索引结构,且顶级索引表未调入内存,则访问一个数据块只需要$K+1$次读磁盘操作。 + 缺点:即使是小文件页需要$K+1$次读磁盘操作。 + 混合索引: - + 多种索引分配方式的结合。例如,一个文件的顶级索引表中,既包含直接地址索引(直接指向数据块),又包含一级间接索引(指向单层索引表)、还包含两级间接索引(指向两层索引表)。 + + 多种索引分配方式的结合。例如,一个文件的顶级索引表中,既包含直接地址索引(直接指向数据块),又包含一级间接索引(指向单层索引表)、还包含两级间接索引(指向两层索引表)等。 + 优点:对于小文件,只需较少的读磁盘次数就可以访问目标数据块。(一般计算机中小文件更多)。 +如一共十三个地址项,前十个为直接地址,后面三个为一级间址、二级间址、三级间址。每个盘块的大小为$4KB$,索引块大小为$4B$。 + +所以文件不大于$4\times10=40KB$时可以直接读出。一个一级间址块中能包含$4KB\div4B=1K=2^{10}$个索引,所以能索引出$2^{10}\times4KB=4MB$的空间。同理,若文件长度大于$4MB+40KB$时可以使用二级间址块,索引出$4GB$的空间,三级间址能索引出$4TB$的空间。 +  |访问第n条记录|优点|缺点 :----:|:----------:|:---:|:--: 连续分配|需访问磁盘1次|顺序存取时速度快,文件定长时可根据文件起始地址及记录长度进行随机访问|文件存储要求连续的存储空间,会产生碎片,不利于文件的动态扩充 链接分配|需访问磁盘n次|可解决外存的碎片问题,提高外存空问的利用率,动态增长较方便|只能按照文件的指针链顺序访问,查找效率低,指针信息存放消耗外存空间 索引分配|m级需访问磁盘m+1次|可以随机访问,文件易于增删|索引表增加存储空间的开销,索引表的查找策略对文件系统效率影响较大 -### 文件存储空间管理 +### 文件保护 + +口令保护和加密保护是为了防止用户文件被他人存取,而访问控制用于控制用户对文件的访问方式。 + +#### 口令保护 + ++ 为文件设置一个“口令”,用户请求访问该文件时必须提供“口令”。 ++ 口令一般存放在文件对应的$FCB$或索引结点中。用户访问文件前需要先输入“口令”,操作系统会将用户提供的口令与$FCB$中存储的口令进行对比,如果正确,则允许该用户访问文件。 ++ 优点:保存口令的空间开销不多,验证口令的时间开销也很小。 ++ 缺点:正确的“口令”存放在系统内部,不够安全。 + +#### 加密保护 + ++ 使用某个“密码”对文件进行加密,在访问文件时需要提供正确的“密码”才能对文件进行正确的解密。 ++ 系统并不保存原始数据,而是加密过的数据。 ++ 加密方式有异或加密等。 ++ 优点:保密性强,不需要在系统中存储“密码”。 ++ 缺点:编码/译码,或者说加密/解密要花费一定时间。 + +#### 访问控制 + ++ 在每个文件的$FCB$(或索引结点)中增加一个访问控制列表($AccessControl\,List$,$ACL$),该表中记录了各个用户可以对该文件执行哪些操作。 ++ 访问类型包括: + + 读:从文件中读数据。 + + 写:向文件中写数据。 + + 执行:将文件装入内存并执行。 + + 添加:将新信息添加到文件结尾部。 + + 删除:删除文件,释放空间。 + + 列表清单:列出文件名和文件属性。 ++ 优点:可以使用复杂的访问方法。 ++ 缺点:长度无法余集且可能导致复杂的空间管理。 ++ 有的计算机可能会有很多个用户,因此访问控制列表可能会很大,可以用精简的访问列表解决这个问题。 ++ 精简的访问列表:以“组”为单位,标记各“组”用户可以对文件执行哪些操作。当某用户想要访问文件时,系统会检查该用户所属的分组是否有相应的访问权限。所以系统也需要管理分组的信息。 ++ 用户类型: + + 拥有者:创建文件用户。 + + 组:一组需要共享文件且拥有类似访问的用户。 + + 其他:系统内其他所有用户。 ++ 若想要让某个用户能够获取某种权限,需要把该用户放入有该权限的分组即可。 ++ 如果对某个目录进行了访问权限的控制,那也要对目录下的所有文件进行相同的访问权限控制。 + +#### Linux文件权限 + +命令格式`chmod 权限 文件名`。 + +一共九位,从左至右分为三组,$1-3$位数字代表文件所有者的权限,$4-6$位数字代表同组用户的权限,$7-9$数字代表其他用户的权限。每一组的第一位表示可读,第二位表示可写,第三位表示可执行。 + +如$755$,第一组的$7=4+2+1$表示所有者可读可写可执行,$5=4+0+1$表示同组用户和其他用户可读可执行但是不可写。 + +## 目录系统 + +### 目录结构 + +#### 单级目录结构 + +整个系统中只建立一张目录表,每个文件占一个目录项。 + ++ 实现了“按名存取”,但是不允许文件重名。 ++ 在创建一个文件时,需要先检查目录表中有没有重名文件,确定不重名后才能允许建立文件,并将新文件对应的目录项插入目录表中。 ++ 不适用于多用户操作系统。 + +#### 两级目录结构 + +分为主文件目录($MFD$,$Master\,File\,Directory$)和用户文件目录($UFD$,$User\,Flie\,Directory$): + ++ 主文件目录记录用户名及相应用户文件目录的存放位置。 ++ 用户文件目录由该用户的文件$FCB$组成。 ++ 允许不同用户的文件重名。文件名虽然相同,但是对应的其实是不同的文件。 ++ 两级目录结构允许不同用户的文件重名,也可以在目录上实现实现访问限制(检查此时登录的用户名是否匹配)。 ++ 两级目录结构依然缺乏灵活性,用户不能对自己的文件进行分类。 + +#### 多级目录结构 + +即树形目录结构: + ++ 不同目录下的文件可以重名。 ++ 用户(或用户进程)要访问某个文件时要用文件路径名标识文件,文件路径名是个字符串。各级目录之间用“/”隔开。 ++ 从根目录出发的路径称为绝对路径。 ++ 很多时候,用户会连续访问同一目录内的多个文件,显然,每次都从根目录开始查找,是很低效的。因此可以设置一个“当前目录”出发的相对路径。 ++ 树形目录结构可以很方便地对文件进行分类,层次结构清晰,也能够更有效地进行文件的管理和保护。 ++ 但是,树形结构不便于实现文件的共享,且查找文件需要逐级访问影响速度。为此,提出了“无环图目录结构”。 + +#### 无环图目录结构 + ++ 在树形目录结构的基础上,增加一些指向同一节点的有向边,使整个目录成为一个有向无环图。可以更方便地实现多个用户间的文件共享。 ++ 可以用不同的文件名指向同一个文件,甚至可以指向同一个目录(共享同一目录下的所有内容)。 ++ 需要为每个共享结点设置一个共享计数器,用于记录此时有多少个地方在共享该结点。用户提出删除结点的请求时,只是删除该用户的$FCB$、并使共享计数器减$1$,并不会直接删除共享结点。 ++ 共享文件不同于复制文件。在共享文件中,由于各用户指向的是同一个文件,因此只要其中一个用户修改了文件数据,那么所有用户都可以看到文件数据的变化。 ++ 实现了文件共享,但是使得文件管理更复杂。 + +### 目录操作 + +#### 目录基本操作 + ++ 搜索:首先要找到对应目录项。 ++ 创建文件。 ++ 删除文件。 ++ 创建目录。 ++ 删除目录:包括不删除非空目录和可删除非空目录两种。 ++ 移动目录。 ++ 显示目录。 ++ 修改目录。 + +#### 目录实现 + ++ 线性列表。 ++ 哈希表。 + +### 文件目录共享 + +多个用户共享同一个文件或目录,意味着系统中只有“一份”文件数据。并且只要某个用户修改了该文件的数据,其他用户也可以看到文件数据的变化。 + +文件共享方式分为: + ++ 基于索引结点的共享方式:硬链接。 ++ 基于符号链的共享方式:软链接。 + +#### 硬链接 + ++ 在文件目录中提到,索引结点,是一种文件目录瘦身策略。由于检索文件时只需用到文件名,因此可以将除了文件名之外的其他信息放到索引结点中。这样目录项就只需要包含文件名、索引结点指针。 ++ 索引结点中设置一个链接计数变量$count$,用于表示链接到本索引结点上的用户目录项数。 ++ 不同目录下对于同一个文件的索引结点的命名可以是不同的。 + +若某个用户决定“删除”该文件: + ++ 则只是要把用户目录中与该文件对应的目录项删除,且索引结点的$count$值减$1$。 ++ 若$count>0$,说明还有别的用户要使用该文件,暂时不能把文件数据删除,否则会导致指针悬空。 ++ 若$count=0$,则系统需要删除文件。 + +#### 软链接 + ++ 软链接就是共享时建立一个$Link$类型的文件,文件记录了要共享的文件的存放路径或任意一条硬链接路径,类似$Windows$系统的快捷方式。 ++ 文件拥有者才拥有指向其索引结点的指针,而共享该文件的其他用户只有该文件的路径名。 ++ 当访问共享文件时,先判断这个文件属于$Link$类型文件,然后根据其中记录的路径层层查找路径找到索引结点。 ++ 优点: + + 网络共享只用提供文件所在机器的网络地址和文件路径。 + + 若共享文件被删除了,则软链接失效。删除软链接则无影响。 ++ 缺点: + + 当共享文件删除,而其他用户新建一个相同路径的文件则原链接指向的是新文件而不是原文件。 + + 因为软链接访问共享文件时需要查询多层目录,所以有多层$I/O$操作,从而软链接访问速度慢于硬链接。 + +硬链接和软链接都是静态共享方式,都存在一个共同的问题,每个共享文件都有几个文件名,从而每增加一条文件名,当遍历整个文件系统时会多次遍历到该共享文件。 + +多个进程同时对同一个文件操作称为动态共享。 + +## 磁盘系统 + +### 系统层次结构 + +1. 设备。 +2. 相关模块 + + 辅助分配模块:管理辅存空间。即负责分配和回收存储空间。 + + 设备管理模块:管理设备。直接与硬件交互,负责和硬件直接相关的一些管理工作。如分配设备、分配设备缓冲区、磁盘调度、启动设备、释放设备等。 +3. 物理文件系统:物理地址转换。这一层需要把上一层提供的文件逻辑地址转换为实际的物理地址。 +4. 逻辑文件系统与文件信息缓冲区:逻辑地址转换。用户指明想要访问文件记录号,这一层需要将记录号转换为对应的逻辑地址。文件信息缓冲区用来在调入索引表到内存时暂存索引表的内容。 +5. 存取控制模块:文件保护。为了保证文件数据的安全,还需要验证用户是否有访问权限。 +6. 文件目录系统:管理文件目录。用户是通过文件路径来访问文件的,因此这一层需要根据用户给出的文件路径找到相应的$FCB$或索引结点。所有和目录、目录项相关的管理工作都在本层完成,如管理活跃的文件目录表、管理打开文件表等。 +7. 用户接口:向用户提供文件目录相关功能接口。这层就是用于处理用户发出的系统调用请求($read$、$write$、$open$、$close$等系统调用)。 +8. 用户/应用程序。 + +假设某用户请求删除文件“$D:$/工作目录/学生信息.$xlsx$”的最后$100$条记录: + +1. 用户需要通过操作系统提供的接口发出上述请求——用户接口。 +2. 由于用户提供的是文件的存放路径,因此需要操作系统一层一层地查找目录,找到对应的目录项――文件目录系统 +3. 不同的用户对文件有不同的操作权限,因此为了保证安全,需要检查用户是否有访问权限―-存取控制模块(存取控制验证层)。 +4. 验证了用户的访问权限之后,需要把用户提供的“记录号”转变为对应的逻辑地址――逻辑文件系统与文件信息缓冲区。 +5. 知道了目标记录对应的逻辑地址后,还需要转换成实际的物理地址――物理文件系统。 +6. 要删除这条记录,必定要对磁盘设备发出请求――设备管理程序模块。 +7. 删除这些记录后,会有一些盘块空闲,因此要将这些空闲盘块回收――辅助分配模块。 + +### 存储空间管理 即对空闲空间的管理。 @@ -438,8 +503,6 @@ 1. 如果块内回收后余留,则修改数据。 2. 若回收数量大于等于余下,需要将超级块中的数据复制到新回收的块中,并修改超级块的内容,让新回收的块成为第一个分组。 -## 磁盘管理 - ### 磁盘结构 + 磁盘由空气过滤片、主轴、音圈马达、永磁铁、磁盘、磁头、磁头臂组成。