为什么Linux的文件系统设计为单个目录树?


91

谁能解释为什么Linux被设计为单个目录树?

在Windows中,我们可以有多个驱动器,例如C:\D:\,在Unix中只有一个根。有什么具体原因吗?


14
@terdon-我想他是在问一个单一的根目录(/)与DOS风格(C:\ D:\)。
jordanm

27
您也可以(并且通常确实)在Linux中具有多个驱动器。实际上,基本原理是相同的,C:并且D:在Windows中也是安装点。在Windows平台上类似的/就是My Computer,一切都装下这一点。
terdon

61
我认为一个更相关的问题是“为什么操作系统不具有单个根”?(DOS / Windows的答案将是设计错误/无法为将来做计划/不必要的假设)
JoelFan 2013年

21
Windows之所以选择这个离奇的系统,是因为它之前有MS-DOS,MS-DOS遵循了CP / M设置的早期案例。MS-DOS是基于软盘驱动器的系统(例如,最初在单个驱动器系统上,A:和B:有时,例如,A:和B:是同一驱动器,但是出于交换/复制操作的目的两个不同的逻辑磁盘) 。就像大多数被MS-DOS PC损坏的人一样,OP认为/在Linux上与MSDOS / Windows中的C:相同,但实际上并不是同一回事。
沃伦·P

25
其实C:D:和东西是DOS和Win32刚兼容性; Windows NT内部具有某种类似于UNIX的对象层次结构,驱动器号(通常是Win32的东西)只是指向“真实”对象的符号链接(c:\file.txt实际上是\??\c:\file.txt\??\c:eg的符号链接\device\harddisk0\partition1)。参见此处
Matteo Italia

Answers:


192

由于Unix文件系统比Windows早许多年,因此人们可以将问题改写为“为什么Windows为每个设备使用单独的指示符?”。

分层文件系统的优势在于,可以将任何文件或目录作为根目录的子级找到。如果需要将数据移动到新设备或网络设备,则文件系统中的位置可以保持不变,并且应用程序将看不到差异。

假设您有一个操作系统是静态的系统,并且有一个对I / O要求很高的应用程序。您可以将/ usr挂载为只读,然后将/ opt(如果应用程序驻留在其中)放入SSD驱动器。文件系统层次结构不变。在Windows下,这要困难得多,尤其是对于那些坚持使用C:\ Program Files \


27
这个(修辞)问题的确有一个答案:传统。只是与Unix不同的传统。Windows是从DOS那里得到的,而DOS是从CP / M-80那里得到的,它遵循了许多小型计算机和大型机操作系统的通用模式。驱动器名称刚从DISK0:或缩短SY:A:
RBerteig

6
@RBerteig-也许是传统,尤其是在Windows情况下,但Rob Pike在“ The Hideous
Bruce Ediger

13
我相信,自Windows NT以来,已经有可能在Windows中的给定虚拟路径上挂载设备,以完成与Unix完全相同的操作,尽管在家用PC上并不常见(在服务器和业务部署中较为常见)。如果愿意,您可以选择将其视为Unix Way(tm)的证明。
JSBձոգչ2013年

8
@BruceEdiger我不会试图证明DOS是正确的。仅指出存在Windows为什么如此的背景,并且不仅仅是MS脱帽而出的东西。
RBerteig

1
@BruceEdiger:哇。好纸。这也是我很少看到派克(Pike)对某事毫无疑问是错误的几次。(即,ARPANET名称服务系统无法扩展。如今,我们将其称为DNS,并且已经很好扩展。具有权限和委派的绝对层级空间的核心概念完全保持不变)。诚然,这是因为与邮件相关的非IP网络已经消失了。
凯文·卡斯卡特

87

这部分是由于历史原因,部分是因为这样更有意义。

多媒体

Multics是第一个引入当今我们所知的分层文件系统的操作系统,其目录可以包含目录。RC Daley和PG Neumann 引用“用于辅助存储的通用文件系统”

本文的第2节介绍了文件的分层结构,该文件允许灵活使用系统。此结构包含足够的功能来确保多功能性。(...)

为了便于理解,可以将文件结构视为文件树,其中一些是目录。也就是说,除了一个例外,每个文件(例如,每个目录)都会发现自己恰好由一个目录中的一个分支直接指向。唯一的例外是树根目录中的根目录或根目录。尽管未从任何目录中明确指向根,但根由文件系统已知的虚拟分支隐式指向。(...)

在任何时候,都将用户视为在某个目录中操作,该目录称为他的工作目录。只需指定条目名称,他就可以访问其工作目录中的条目有效指向的文件。一个以上的用户可能一次拥有相同的工作目录。

与许多其他方面一样,Multics寻求灵活性。用户可以在文件系统的子树中工作,而忽略其余部分,并且仍然受益于目录来组织其文件。目录还用于访问控制-READ属性允许用户列出目录中的文件,而EXECUTE属性允许用户访问该目录中的文件(这与许多其他功能一样,都存在于unix中)。

Multics还遵循具有单个存储池的原则。本文不涉及这方面。单个存储池与当时的硬件非常匹配:没有可移动存储设备,至少没有用户需要的设备。Multics确实有一个单独的备份存储池,但这对用户是透明的。

Unix系统

Unix从Multics中获得了很多启发,但其目标是简单性,而Multics则是针对灵活性。

单个分层文件系统非常适合Unix。与Multics一样,存储池通常与用户无关。但是,这里有可移动设备,Unix确实通过mountumount命令将它们公开给用户(保留给“超级用户”,即管理员)。在“ UNIX分时系统”中,Dennis Ritchie和Ken Thompson解释了:

尽管文件系统的根目录始终存储在同一设备上,但是不必将整个文件系统层次结构都驻留在该设备上。有一个带有两个参数的挂载系统请求:一个现有普通文件的名称,以及一个特殊文件的名称,该特殊文件的相关存储卷(例如磁盘包)应具有包含其自己的目录层次结构的独立文件系统的结构。挂载的作用是导致对以前普通文件的引用改为引用可移动卷上文件系统的根目录。实际上,mount用一个全新的子树(存储在可移动卷上的层次结构)替换层次结构树(普通文件)的叶子。挂载之后,可移动卷上的文件与永久文件系统中的文件之间几乎没有区别。例如,在我们的安装中,根目录位于我们的一个磁盘驱动器的一个小分区上,而另一个包含用户文件的驱动器则通过系统初始化顺序安装。通过在其对应的特殊文件上写入来生成可安装文件系统。可以使用实用程序来创建一个空文件系统,或者可以仅复制一个现有文件系统。

分层文件系统还具有将管理多个存储设备的复杂性集中到内核中的优势。这意味着内核更加复杂,但是所有应用程序因此都变得更加简单。由于内核必须关心硬件设备,而大多数应用程序则不需要,因此这是一个更自然的设计。

视窗

Windows的起源可以追溯到两个世系:VMS是最初为VAX微型计算机设计的操作系统,CP / M是为早期Intel微型计算机设计的操作系统。

VMS具有分布式的分层文件系统Files-11。在Files-11中,文件的完整路径包含节点名称,该节点上的帐户名称,设备名称,目录树路径,文件名称,文件类型和版本号。VMS具有强大的逻辑名称功能,允许将快捷方式定义到特定目录,因此用户几乎不必关心目录的“真实”位置。

CP / M专为具有64kB RAM和软盘驱动器的计算机而设计,因此它很简单。没有目录,但是文件引用可以包含驱动器指示(A:B:)。

MS-DOS 2.0引入目录时,它使用的语法与本身遵循CP / M的MS-DOS 1兼容。因此,路径根植于具有单个字母名称的驱动器。(此外,/VMS和CP / M中使用了斜杠字符来启动命令行选项,因此必须使用不同的字符作为目录分隔符。这就是DOS和更高版本的Windows使用反斜杠的原因,尽管某些内部组件也支持斜杠。 )。

Windows保留了与DOS和VMS方法的兼容性,因此即使它们的相关性降低,它仍保留了驱动器号的概念。如今,Windows在后台使用了UNC路径(最初由Microsoft和IBM为相关祖先的OS / 2 开发)。尽管这是为高级用户保留的(可能由于历史原因),但是Windows确实允许通过重新解析点进行安装。


3
尽管这不是默认行为,使用NTFS文件系统的Windows也可以安装一个根目录下的所有存储:technet.microsoft.com/en-us/library/cc753321.aspx howtogeek.com/98195/... serverfault.com/questions / 24400 /…
gerlos

3
似乎相关的部分是MS-DOS 1.0是基于软盘的。在这样的系统中,(A)这是要知道哪些重要的物理磁盘文件都在,和(b) A:,并B:为您的软盘驱动器之间的区分,如果你有他们两个人一个体面的约定。在MS-DOS 2.0中添加了硬盘驱动器支持C:后,通过将HD视为一张BIG软盘,可以通过向后兼容来指定驱动器。
user1024 2013年

5
实际上,最初CP / M设计为在16 KB而不是64 KB的RAM中运行。64 KB的数字可能会为应用程序提供一些喘息的空间。当命令处理器(CCP)被覆盖并在必要时重新加载时,BIOS和BDOS始终都驻留在内存中。是的,那是BIOS的来源-IBM没有提出这个名词!请参阅Wikipedia CP / M:硬件模型操作系统组件。请记住,16 KB只能写大约三个密集页面(70行×80个字符/行×3页= 16800字节)。
2013年

36

拥有单个目录树后,没有安全方面的顾虑。

设计Unix的人在操作系统方面有着丰富的经验,要求用户知道什么物理设备包含给定的资源。由于操作系统的部分目的是在真实的硬件上创建抽象机,因此他们认为通过物理位置来分配资源更为简单,因此决定将所有内容放到一个名称树中。

这只是Unix设计背后天才的一部分。


28

请注意,来自MS-DOS的驱动器号名称(在现代Windows中一直存在)在这里是一个红色鲱鱼。驱动器号名称不是具有多个根的文件系统结构的最佳表示。他们是这种系统的一个稻草人实现。

正确实现的支持多个根的文件系统将允许对卷进行任意命名,例如dvdrom:/path/to/file.avi。这样的系统将摆脱困扰Windows的可笑用户界面问题。例如,如果您插入相机之类的设备,则Windows资源管理器UI会使您相信存在一个名为“相机”(或其他名称)的设备,并且您的路径为Computer\Camera\DCIM\...。但是,如果您从资源管理器中剪切并粘贴该路径的文本版本,则该路径实际上不起作用,因为某些路径名组件是用户界面小说,而底层操作系统则不知道。在具有多个根的正确实施的系统中,这会很好:会有一个camera:\DCIM\...在系统的每个级别上被统一识别的路径。而且,如果您是从OLD PC移植到旧硬盘驱动器上的,则不会被诸如这样的驱动器号所困扰F:,而是可以随心所欲地为其命名,例如old-disk:

因此,如果Unix在文件系统结构中确实具有多个根,则将这样明智地完成操作,而不是在MS-DOS和Windows中使用一个字母驱动器名称的情况下。换句话说,让我们仅将Unix方案与一个好的多根设计进行比较。

那么,为什么Unix没有明智的多根实现,而支持明智的单根实现呢?可能只是为了简单起见。挂载点提供了能够通过名称访问卷的所有功能。无需使用其他前缀语法扩展名称空间。

从数学上讲,任何不相交的树图(“森林”)都可以通过添加根节点并将不相交的片段作为其子元素来进行连接。

此外,卷不必位于根级别更为灵活。由于没有表示卷的特殊语法(它只是路径组件),因此挂载点可以在任何地方。如果你带来三个旧磁盘到你的机器,你可以让他们作为/old-disk/one/old-disk/two等等。你可以组织磁盘不过你想要的,你整理文件和目录的方式。

可以编写依赖于路径的应用程序,并且在重新配置存储设备时可以维护路径的有效性。例如,应用程序可以使用诸如/var/log和的众所周知的路径/var/lib。这取决于你是否/var/log/var/lib在同一个磁盘卷或单独的。您可以在保留路径的同时将系统迁移到新的存储拓扑。

挂载点是一个好主意,这就是Windows自Windows 2000以来就拥有挂载点的原因。

卷安装点对于在添加设备或从计算机中删除设备时发生的系统更改具有强大的抵抗力。 微软技术网


6
也许碰巧的是,您的“良好的多根设计”听起来很像旧的AmigaDOS系统,该系统允许使用任意卷名,包括“已分配”卷,这些卷引用了另一个卷中的特定目录。您甚至可以(使用适当的软件)具有“虚拟”卷,例如,该FTP:卷允许您通过路径访问任何FTP服务器上的文件FTP:hostname/path/to/file
Ilmari Karonen

3
这确实不是一个好答案,因为它似乎是非常主观的。它非常公开地打击Windows。
钻机

3
@Rig尽管这可能是正确的,但Windows仍然值得彻底抨击,因为这些驱动器名仍然可以追溯到MS-DOS。这是大多数用户都熟悉的多根文件系统,但是我们不能真正将其用于与单根文件进行比较,因为它是这种系统的一个典型例子。
卡兹(Kaz)

3
@Kaz我仍然觉得这个答案更像是一头胡话。Windows的文件系统与众不同,但不会导致错误,可怕或危害人类罪。您不喜欢它,因为您有权获得。微软甚至没有提出这个方案,他们从当时流行的系统中借用了这个方案,但是他们必须对其进行维护以实现对遗留代码的合理维护。
钻机

1
@钻机确定; 比起用fl石箭头获得下一顿晚餐,这还不算糟糕。在他们鼎盛时期,火石的箭头实际上是最先进。啊,但是,哎呀,我们实际上不能说出关于DOS和驱动器号的信息,我们可以这么类推。
卡兹(Kaz)

13

* nix和Windows均安装其驱动器。在Windows中,这些文件会自动安装在默认情况下按字母升序安装的安装点。这些默认值是:

  • A:B:=>软盘
  • C: =>第一个硬盘的第一个分区
  • D: =>下一个分区或下一个硬盘驱动器或CD / DVD驱动器(如果不存在其他分区)。

每个安装点都是一个目录。

在* nix中,安装点由用户决定。例如,我有一个分区挂载为/,另一个分区挂载为/home。因此,/home是一个单独的驱动器,相当于E:Windows上的驱动器。

在Windows和* nix这两种情况下,安装点都是单独的目录。唯一的区别是,在* nix中,这些单独的目录是的子目录/C:而在Windows中,每个挂载点都直接挂载在下方/My Computer例如。

从用户的角度来看,主要优点是安装座是完全透明的。我不需要知道目录/home实际上在单独的分区上。我可以将其用作普通目录。相反,在DOS中,我必须用挂载点的名称显式调用它,例如E:\home

在两个系统中,外部驱动器的安装方式几乎相同。说D:对Windows和/mnt/cdromLinux操作系统。这些都是目录,我看不出有什么区别。在Windows下将CDROM放入驱动器中时,磁盘的安装方式D:与Linux中的安装方式相同。


3
出于好奇,您知道如果有人想在Windows上创建27个驱动器会发生什么情况?Windows将其称为第27个驱动器吗?:D
约瑟夫·R。

2
哈哈哈 似乎Windows 太迟钝了,甚至无法做到这一点。
Joseph R.

3
次要nitpick:Windows中的驱动器号默认为字母升序,但可以并且经常被重命名。
RBerteig

3
@terdon:他只是将驱动器安装在目录中-就像您在POSIX OS中所做的一样。
Matteo Italia

3
@JosephR:在某个时候-我不确定何时,但可能是NT- Windows获得了将驱动器安装在目录中的能力,就像Unix一样。默认情况下,实际上没有人这样做(这让我感到惊讶:随着nuke-pave的重新安装频率的增加,到现在为止,类似于将/ home放在单独的卷上的东西已经很流行了)。但是,如果驱动器号/数字/符号用完了,这就是要向系统添加更多驱动器时必须执行的操作。
2013年

10

我同意上面的答案,尤其是道格·奥尼尔(Do​​ug O'Neal)的答案,但是我认为它们都缺少一些东西,像MS-DOS“ C:”或“ A:”这样的显式设备安装点也一样。

罗布派克写了狰狞的名称有关名称的语法,但拉斯考克斯熬下来

当可以添加新语义而不添加新语法时,名称空间...是最强大的。

可以任意安装设备的单个名称空间可实现真正灵活的操作。我会定期使用/mnt/sdb1并将/mnt/cdrom当前未使用的磁盘或CD临时放入整个文件系统。在NFS服务器上拥有主目录并不少见,因此无论您登录到什么计算机,$HOME到处都可以看到相同的目录。

可以归结为:对特殊的事物使用特殊的语法对您可以做的事情施加了一定的限制。如果只能将未使用的磁盘或CD或DVD或网络文件系统/“共享”安装在“ E:”或“ W:”或任何其他文件上,则灵活性会大大降低。


1
您实际上并不需要符号链接。您可以在任何路径(例如/ usr / local)上直接挂载分区(或网络存储或其他内容),尽管当我找到一个/ usr / local指向网络挂载的网络时,它总是使我感到困惑。是的,它们确实存在,并且出于某些原因:/ usr / local是管理员用来放置非OS分发程序中内容的标准位置之一。
Christopher Creutzig

@Christopher Creutzig-我的示例不需要同意的符号链接,我只是想举一个例子说明灵活的命名模式如何为您工作。这也许不是最好的例子。
Bruce Ediger 2013年

顺便看看愚蠢的网络。 proto://specifichost.domain.tld/topleveldir/middle/specificdoc.html
卡兹(Kaz)

2
@Christopher Creutzig-我已经在几个地方将/ usr / local设置为网络驱动器。因此,“本地”是指站点本地,而不是计算机本地。
doneal24年

3
@Kaz,我认为这proto://是一项务实的必需品。不能期望每个软件都知道那里的所有URI方案。因此,了解方案ID何时结束以及URI的其余部分开始很有帮助。
Adrian Ratnapala 2013年

5

真傻 Windows还具有一个层次结构点。但是它是隐藏的并且是非标准的。作为大多数东西的窗户。

在这种情况下,这就是“我的电脑”的概念。这相当于Unix中的根(/)。请记住,根是内核中存在的概念。你喜欢与否。就像Windows对待“我的电脑”一样。当然,您可以在UNIX的根目录上安装分区,这是大多数人所做的。很多事情都会关注事物的特定路径(例如/ etc /),但您不受其限制。务必将驱动器安装在/ C:/中。您不可以在Unix中这样做。

C:\不是Windows的根目录,它是一个分区的安装点。哪个必须在顶层“我的电脑”上。在Unix中,您可以在任何其他树下安装分区。因此,Linux可以将C:安装在其中,/而将D:安装在/mnt/d/...上,甚至也可以安装在其中,/但这很棘手,并且取决于两个文件系统在已安装的路径顶部安装时的行为。

因此,通过“强迫”自己遵循Windows随机施加于您的相同限制,您可以获得与Windows完全相同的效果。

/ (treat this as "My Computer")
/c/ (mount your first data partition here)
/d/ (mount your second data partition here)

然后,您必须在启动选项中传入安装选项。因为您将没有/ etc / ...,但这也模拟了Windows施加的限制,因为这样做了。


4
Windows确实有一个单一的层次结构,甚至有挂载点,但默认情况下不使用它们。
吉尔斯

1
@吉尔斯不确定我明白。默认情况下,如何不将每个驱动程序附加到“我的电脑”根节点上?
gcb

5
那只是GUI演示。文件路径不使用My Computer
吉尔斯2013年

3
My Computer是Shell层次结构的根节点。它包含驱动器(如果有驱动器号),还包含控制面板和任何已连接的Windows Phone。Shell层次结构使用PIDL代替路径。
MSalters 2013年

4
@gcb:关键是shell层次结构不能直接在“常规”应用程序中使用。您不能调用CreateFile传递的“我的电脑”或其他外壳文件夹;这是一种抽象,只有与外壳相关的代码才能理解,所有内核调用(以及90%的应用程序,因为大多数语言的文件管理都是通过内核文件API来实现的)对此一无所知。仅当程序使用“标准对话框”(确实不足以解释外壳程序名称空间)且仅当所选文件直接映射到“真实”(=内核理解)路径时,才可以使用shell文件夹。
Matteo Italia

5

Windows具有驱动器号的原因可能比Microsoft和DOS还要早。在可移动驱动器上分配字母在IBM系统上很常见,因此Microsoft可能只是通过复制CP / M来按照IBM的指示行事。最初,DOS仍然没有目录。

当MS-DOS在具有一个或两个可移动磁盘且没有固定媒体的计算机上运行时,您实际上并不需要具有目录的文件系统。有了一个或两个180 KB磁盘,您再也没有足够的文件来组织它们了。

https://zh.wikipedia.org/wiki/Drive_letter_assignment


1
这充其量是不准确的。CP / M比任何Microsoft / IBM-PC DOS早很多年(我相信IBM的最初想法是将CP / M用作其“ PC”,因为尽管当时这是一个相当成熟的事实上的工业标准,事实证明,各种CP / M系统可能是不兼容的),并且IBM-PC DOS很大程度上基于86-DOS,而后者基本上是CP / M的源代码兼容克隆,这一点几乎没有争议。
2013年

4

实际上,Linux是基于Unix(或者是Unix,请参见讨论),而Unix来自大型机环境,在该环境中使用多种设备非常明显。在单个目录树中挂载设备可为您提供最大的灵活性,并且不会限制操作系统可以访问的设备数量。

另一方面,对于带有1个或2个软盘站和单个磁盘驱动器的PC,用于驱动器的DOS字母是一个很好的设计。大软盘5,25'始终为A :,小软盘3,5'始终为B :,磁盘驱动器始终为C:。您始终知道是将文件复制到软盘还是复制到磁盘。如果您不能物理连接两个以上的软盘驱动器和两个(或四个)硬盘,则不需要任何灵活性。

DOS设计对最终用户更友好,而Unix设计对管理员更友好。现在,驱动器号对于Windows来说是一个负担,用户更多地依赖于自动打开带有可移动驱动器内容的资源管理器窗口,而不是知道驱动器号...实际上,Ubuntu也是如此。


1

事实并非如此。Windows使用其他路径方案(嗯,不一样)

“单位字母”仅是容易记住的内容,例如路径,磁盘和分区。

ARC路径定义了Windows中文件的路径(但仅在启动时对用户可见):

http://support.microsoft.com/kb/102873

https://serverfault.com/questions/5910/how-do-i-determine-the-arc-path-for-a-particular-drive-letter-in-windows

在Windows NT中,磁盘,分区和单位字母之间没有关系:您可以将整个卷“放入”文件夹中(例如:c:\ myseconddisk可以是整个物理磁盘!)


1
ARC路径仅用于引导,以便在NT移植到Alpha和MIPS时与某些ROM兼容。当系统运行时,它使用UNC路径。
ninjalj

0

我想指出两件事-

  1. Linux中的硬盘驱动器实际上是以一种分配字母/名称的方式,例如/ dev / sdb1。但是它们可以从单一/根结构安装到任何地方
  2. 人们(包括过去的我自己)在Windows中使用单独的驱动器的最常见原因是要在某个地方保存文档,音乐,程序等,以便当不可避免地需要重新安装或更换Windows时,无论是升级还是病毒或文件系统故障,仍然可以访问这些文件。我在linux中没有这个问题-文件系统更加可靠,除非我采取了某些直接的措施或错误,否则操作系统不会损坏(哦!最新的仓库,尝试一下!)并进行升级FAR更简单。而且,在极少数情况下,我不得不重新安装,因为所有软件都可以通过我添加的repos或ppa获得(并且我可以轻松地通过活动磁盘复制主目录),

2
首先要结合硬盘驱动器和文件系统。如果在文件系统中的某个位置挂载/ dev / sdb1,则可以访问驱动器上的文件。如果直接打开/ dev / sdb1,则会看到原始磁盘块。通常不是很有用,尤其是在使用加密文件系统时。
2013年

我试图以Windows用户可能理解的方式来关联它。C:Windows也不是硬盘驱动器,但是每个人都这样
称呼

1.您仍然可以保持文件不带字母。2,在POSIX系统中,硬盘驱动器可以整体分区而无需分区表,拇指驱动器可以具有分区表。名称。
Behrooz

0

如果您回顾历史,还可以看到Unix是在8个磁道磁带系统和9个磁道IBM数据系统(8个磁道/ 8位用于数据,一个用于奇偶校验)时开始的。在技​​术上非常相同。

那时,有关文件位置的信息存储在磁带上的部分信息中,并在您从磁带上读取数据时(例如,带有起始位置和结束签名的文件)定义了向前和向后的信息;它也向您说明了为什么在驱动器开始时不仅只有一个FAT,还需要多个FAT来加快查找速度。而且,如果您有多个驱动器,则它们在/ dev内并通过您在设备之间移动的文件的地址链接在一起。

我相信您可能认为它是从更早开始的,并且MS Dos区域(CP / M)和更高版本Windows NT背后的决定仅与VM主机驱动器号有关,而不是与单个入口点有关,因为在当时看来更现代的是,今天的数据量不存在,他们不认为您最终将没有足够的驱动器号,也不会太混乱。

9磁道驱动器驱动器号分配

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.