Windows 11有圓角視窗、Fluent Design圖示,雲端與AI功能也一直往上疊,但作業系統最核心的地方,仍能翻到一堆幾十年前的設計。
最典型的例子,就是系統檔案至今沿用符合MS-DOS時代規則的短檔名——在26H2的System32目錄裡,kernel32.dll、user32.dll、ntoskrnl.exe這些檔案依然在位。微軟資深工程師雷蒙德·陳(Raymond Chen)解釋過,Windows之所以長期保留這些設計,核心原因就是向後相容性。
8.3這套命名從CP/M一路沿用到今天
這套規則叫8.3檔名格式:主檔名最多8個字元、副檔名最多3個字元,中間一個句點,整個檔名連句點最多12個字元。kernel32剛好8字元、dll是3字元;ntoskrnl.exe、user32.dll、hal.dll也都是典型8.3格式。
在MS-DOS時代,這種限制有明確的技術背景:當時檔案系統受早期個人電腦作業系統能力所限,檔名不能包含空格、不能隨意使用多個句點,也只能用規定範圍內的字元。
這套規則不是微軟隨手訂的。MS-DOS當年為了相容CP/M,沿用了後者的檔名方式;CP/M由加里·基爾達爾(Gary Kildall)在1974年開發,是早期微型電腦的重要作業系統。雷蒙德·陳2009年就在個人技術部落格The Old New Thing寫過這段源流,但連他自己也不確定CP/M當年為什麼剛好選8字元主檔名、3字元副檔名——他猜測只是當年方便的設計選擇,因為CP/M目錄結構裡其實留了可以加長檔名的空間,8.3未必是硬體極限。

讓這套舊規則活到今天的,其實是它在作業系統發展過程中逐漸長出來的相容性依賴。
Windows裡,很多應用程式要靠特定檔名存取動態連結庫,也就是DLL。程式在編譯、連結階段就跟系統組件建立了依賴關係,一旦微軟哪天把某個核心DLL改名,依賴它的程式可能找不到檔案,跟著啟動失敗或功能異常。以user32.dll為例,它是Windows圖形介面基礎設施的一環,大量應用程式都靠它提供的功能;真要改成更現代的命名,為數眾多的現有軟體都得跟著改。
問題在於Windows使用範圍太大,歷史上開發過的軟體數量龐大,微軟無法保證全部即時更新。一個檔名今天看來不夠美觀,只要還有程式依賴它,貿然改名就可能帶來不可預測的後果。微軟面對的兩難是:保留舊名,系統看起來不夠現代,卻能避免打壞大量既有軟體;為了統一命名風格硬改,反而可能引入更大的相容性風險。對要支援數十年軟體生態的作業系統來說,前者通常是比較穩的選擇。Windows的檔名規則因此不只是外觀問題,而是牽涉到作業系統介面、程式依賴關係與長期相容性的技術決定。

CON、NUL這些特殊裝置名也沒刪
歷史遺留不止8.3檔名。Windows至今還保留DOS年代的特殊裝置名,例如CON、NUL、PRN,以及COM1、LPT1。這些名字在現代Windows裡仍有特殊意義:NUL常被當成丟棄程式輸出的目標,CON則對應主控台設備,系統會按既定規則特殊處理,而不是把它當普通檔名。
雷蒙德·陳也解釋過這些名稱為何一直留著。早期DOS還沒有成熟的多層目錄結構時,這些特殊名字就已經被軟體與批次腳本大量使用;後來作業系統加上目錄層級與其他功能,微軟仍然保留它們原本的行為,避免打壞既有程式。這也是Windows不是一個完全照現代設計原則重建的系統、而是在長期發展中不斷疊加新功能又盡量保留舊行為的具體寫照。

要說清楚的是,8.3規則並不代表現代Windows所有檔案都得受同樣限制。今天Windows支援遠超8字元的檔名,也能處理空白與各種Unicode字元;較新的系統組件,例如Windows安全中心的SecurityHealthService.exe,主檔名早就超過8字元。
微軟官方的檔名文件還描述了多種檔案路徑與命名空間規則,讓應用程式在符合條件下可以存取更長的路徑。Windows NT系列有自己獨立的核心與系統架構,現代Windows跟早期DOS在技術基礎上差很多,沿下來的主要是檔名與相關相容行為,而不是整個作業系統還受DOS技術限制。
這也是為什麼微軟能在現代Windows裡換新檔案系統、強化資安、加上AI功能,卻仍然留著看起來極古老的系統檔名。
對一般使用者來說,這些名稱通常不會造成實際困擾,Windows會透過系統機制處理相關檔案,不必因為看到kernel32.dll或ntoskrnl.exe像幾十年前的名字,就擔心作業系統還停在MS-DOS年代。真正值得看的,是Windows幾十年來始終得在創新與相容性之間找平衡——很多老設計留下來,不是做不到,而是改動的代價遠比保留它高。
- 延伸閱讀:微軟 Windows 11 效能大升級!最新版本記憶體占用暴減 3GB 告別卡頓
- 延伸閱讀:微軟副總親口證實!Windows傳奇遊戲《3D彈珠台》有望回歸 Windows 11
- 延伸閱讀:Windows 11 竟能執行 34 年前的古董軟體!開發者挖出 1992 年 CD 播放器,免模擬器直接啟動
請注意!留言要自負法律責任,相關案例層出不窮,請慎重發文!