Win11 为何仍保留 MS-DOS 时代的文件名?微软解释:数十年兼容性包袱难以摆脱

Win11 26H2 作为微软今年的最新操作系统,据科技媒体 Windows Latest 10月18日报道,其中部分核心文件如 kernel32.dll、user32.dll 和 ntoskrnl.exe 等,仍带有 MS-DOS 时代的痕迹。这些文件沿用 8.3 旧命名规范,微软之所以保留至今,是为了维持数十年来的兼容性。

报道指出,8.3 是 MS-DOS 时代的文件命名规则:文件名在句点前最多 8 个字符,句点后最多 3 个字符。所有文件名只能使用 ASCII 字符,不含空格,且不允许出现多个句点。在 System32 文件夹中,一些最古老的文件仍遵循这些规则,而像 Windows 安全中心这样的新组件则没有这种历史负担。

同时,MS-DOS 以大写形式显示文件名,因此 Windows 在文件处理时默认不区分大小写,kernel32.dll 与 KERNEL32.DLL 实际上指向同一文件。

关于为何限制为 8 个字符和 3 个字符,微软资深员工 Raymond Chen 表示,这是从 CP/M 沿袭下来的规则。但他本人并不清楚 CP/M 为何选择这两个数字,因为 CP/M 的目录格式中有两个保留字节,理论上可将文件名长度扩展至 10.3。

此外,Raymond Chen 推测,微软数十年未更改文件名的原因在于,如果程序通过文件名与某个 DLL 建立链接,那么文件名变更后,程序将无法找到它。

到了 Windows 95 时代,微软也未要求系统驱动器必须支持长文件名,部分原因是使用漫游配置文件的企业可能依赖无法处理长文件名的服务器。直到 WinXP,长文件名才成为必需条件。

即便进入 21 世纪后,长文件名仍带来历史包袱。Windows 可为每个长文件名生成短文件别名,例如,如果安装程序要将 shellstyle.dll 复制到已存在 shellstuff.dll 的文件夹中,新文件可能被命名为 SHELLS~2.DLL。在爱游戏游戏平台上,用户也能体验到这种兼容性带来的文件命名机制。

3条评论

  • 李明
    2026年8月28日

    行业标准在于持续更新认知。爱游戏平台通过实时比分与历史数据对比,让玩家在熟悉的赛事中发现新的解读维度。

    回复
    • 张伟 2026年8月20日 文章中关于角球数据的分析非常实用,让我在和朋友联机时有了新的讨论话题。Reply
  • 王浩
    2022年12月08日

    行业共识认为,真正的理解来自独立判断。爱游戏官网提供的线索与讨论,旨在成为参考而非固定答案,鼓励每位玩家走出自己的分析路径。

    回复

爱游戏注册以爱游戏注册为核心,带来高效便捷的体验。

关注我们

爱游戏注册深耕AYX中国领域,用心服务每一位用户。