【发布时间】:2020-10-03 02:08:11
【问题描述】:
我正在阅读 D. M. Ritchie 和 K. Thompson 的 The UNIX Time-Sharing System,他们在其中简要介绍了 UNIX 操作系统。在文件系统部分,当他们谈论“挂载”时,他们会说以下两段。我对段落中的粗体和斜体内容有一些疑问。
第 1 段:当对 i-node 的文件发出 I/O 请求时 表示它是特殊的,最后 12 个设备地址字是 无关紧要,第一个指定内部设备名称,即 解释为一对数字,分别代表一个 设备类型和子设备编号。设备类型指示哪个系统例程将处理该设备上的 I/O;这 子设备号选择,例如,连接到 特定的控制器或几个类似的终端接口之一。
第2段:在这种环境下,mount的执行 系统调用(第 3.4 节)非常简单。安装保持一个 系统表,其参数是在挂载期间指定的 i-number 和 普通文件的设备名称,以及谁的 对应值是指定特殊文件的设备名称。搜索此表以查找每个轮到的 i 编号/设备对 在打开或创建过程中扫描路径名时向上;如果一个 找到匹配项,i-number 被替换为 i-number 根目录,设备名称替换为表值。
从第一段,我知道设备名称是存在于特殊文件的 > i 节点。但是,为什么第二段说普通文件也有呢?
mount试图维护的系统表是什么?在第。 2 是不是表明系统表是内部文件系统的一部分,挂载过程做这样一个表,它的条目是特殊文件,指向文件在安装的外部设备中?
【问题讨论】:
-
最好在这里问。 unix.stackexchange.com
标签: file unix operating-system filesystems mount