Linux 很可能从已有的 Unix 中借用了这个脚本。
我能够追踪到的这个脚本的最早版本是/dev/MAKE
在 BSD 4 上调用的,我相信它是从 1980 年左右开始的。它显然是这样命名的,因为它制作了设备文件。名称的大写可能是为了将其与设备文件本身区分开来,但这是推测性的。
在此之前,设备文件似乎是用实际的 Makefile 制作的,如Bell Labs Research V7 快照 (1979) 中所示,在此之前我根本不确定/dev
层次结构是否存在。
在 BSD 4.1 (1982) 中,该脚本仍被称为/dev/MAKE
,但在 BSD 4.1c_2 (1983)中似乎存在/dev/MAKEDEV.local
某种描述的脚本。目前尚不清楚它/dev/MAKEDEV
旁边是否有脚本。
在 BSD 4.4 Lite2 版本(根据存储库为 1995 年,但文件本身的 SCCS 时间戳表示8.1 (Berkeley) 6/9/93
)中,我们可以看到带有最终名称的脚本/dev/MAKEDEV
以及一些特定于系统的MAKEDEV
脚本。此时,Linux 端已经存在同名脚本(如 Stephen Kitt 所述)。
As far as I can determine, this is the history of MAKEDEV
on Linux:
/INSTALL/mkdev
;/dev/MAKEDEV
in version 0.96 of the root diskette;所以脚本名称的关键是从/INSTALL/mkdev
to的切换/dev/MAKEDEV
。我猜它是大写的,以避免与设备节点名称发生任何潜在的混淆和命名空间冲突,因为它们(总是?)以小写字母开头。这早在 FHS 之前很久,当时二进制文件存在于各个地方(包括/etc
),因此在其中包含设备节点创建脚本/dev
就足够了。