我想知道umount命令不是unmount的历史原因还是实际原因。
发布于 2011-03-21 21:21:20
发布于 2017-03-04 02:24:40
似乎有一些错误的信息在这里坐了一段时间了。
使用缩写名称的umount命令最有可能的原因是它遵循它使用的系统调用的名称:umount()。
具有umount()名称的“卸载”系统调用的可能原因是,早期的链接器将外部标识符的长度限制在某些类型系统上的6个字符(仅一种情况下)(当时保持与此类工具的兼容性是有意义的),而"umount“是”卸载“的一种逻辑缩写形式。参见C语言第一版的第179页,以获得在发布时感兴趣的各种系统的外部标识符特征的列表。
还请注意,早期的C编译器将标识符的前8个字符视为重要字符,但允许标识符更长。(K&R第33页)
请注意,符号表中的标识符长度与文件名长度没有任何直接关系,至少在Unix中没有(Unix符号表,因为V1有8个标识符字符,尽管在V1手册中注意到汇编程序“生成最多7个字节的符号”)。
发布于 2011-03-21 21:16:12
出于同样的原因,creat系统调用没有拼写为create?
https://unix.stackexchange.com/questions/9832
复制相似问题