工程師:FAT32 格式化 32G 限制是個不能被原諒的致命錯誤
眾所周知,在 Windows 上,只有低于 32GB 容量的分區(qū)才能選擇格式化為 FAT32。但這一限制到底是出于何種原因呢?近日,已退休的前微軟工程師 Dave Plummer 則在自己的 YouTube 頻道回憶了其當(dāng)初做出這一決定的心路歷程。
FAT32 指的是文件分配表是采用 32 位二進制數(shù)記錄管理的磁盤文件管理方式,因 FAT 類文件系統(tǒng)的核心是文件分配表,命名由此得來。FAT32 從 FAT 和 FAT16 發(fā)展而來,有著優(yōu)良地穩(wěn)定性和兼容性,能充分兼容 Win 9X 及以前版本、維護方便。但缺點是安全性差,且最大只能支持 32GB 分區(qū),單個文件也只能支持最大 4GB。
考慮到實際上 FAT32 文件系統(tǒng)可以管理高達 16TB 的容量,Plummer 當(dāng)初做出 32GB 這一限制似乎有點武斷。據(jù) Plummer 回憶稱,他于上世紀末期參與了將 Windows 95 shell 移植到 Windows NT 的工作。其中的一部分工作內(nèi)容就是對 Windows Format 的重做;對此,Plummer 表示“由于 Win95 系統(tǒng)有著明顯的不同,所以它必須進行替換并完全重寫”。
而在這一過程中,他曾認真過思考究竟什么樣的群集大小才能為將來的 Windows 用戶提供潛在的支持。然后發(fā)現(xiàn),龐大的群集數(shù)量會帶來同樣龐大的容量,但也會造成巨大的空間占用。譬如:選擇 32kb 的群集大小,即使是最小的 Hello, World 程序所需的幾個字節(jié),也會占用 32kb 甚至更多的磁盤空間 。
彼時,Plummer 能拿到手的最大的測試用存儲卡的容量為 16MB。因此他想的是,如果將 16MB 乘以 1000,然后再增大一倍以備不時之需,應(yīng)該是足夠 NT4.0 操作系統(tǒng)整個生命周期使用了。
所以,他選擇了 32GB 作為 FAT32 格式化的極限容量。但 Plummer 也表示,他當(dāng)時打算的是將這作為一個臨時化的決策;孰不料卻成為了永久性解決方案,一直影響到了 25 年后的今天。“這是我犯下的,一個不能被原諒的致命錯誤......歸根結(jié)底,這是一個簡單的缺乏遠見的問題,再加上臨時解決辦法變成永久性解決方案的老問題。”
不過好在如今 NTFS 和 exFAT 格式的普及已經(jīng)破除了 FAT32 所帶來的限制。
本文轉(zhuǎn)自O(shè)SCHINA
本文標題:工程師:FAT32 格式化 32G 限制是個不能被原諒的致命錯誤
本文地址:https://www.oschina.net/news/125659/windows-format-fat32