absmiddle FAT32 不能執行 16-bit 程式?


[搞笑] jackei.bbs@bbs.csie (逸容): 一個程式能不能執行跟檔案系統 (FAT16/32, NTFS, HPFS, EXT2...) 沒什麼關係. 檔案系統負責的是磁碟跟 RAM 間資料的交流. 講明白點, 不同的檔案系統資料存放在 磁碟的方式不同. 一個程式能不能運作要看它是否符合作業系統的要求. 這也是為什 麼有 DOS 程式, Windows 程式, OS/2 程式... 一個 Windows 程式能在 DOS 下跑嗎? 不行. 為什麼不行? 它不符合 DOS 的要求. DOS 程式為什麼能在 Windows 95 下 DOS 視窗跑? Windows 95 模擬出一個 DOS 的環 境, 程式符合這個 "虛擬 DOS" 的要求便能執行. 有的 DOS 程式為什麼 "不" 能在 Windows 95 下 DOS 視窗跑? "虛擬 DOS" 畢竟是假 的, 有它設計上的限制. (這方面 OS/2 做的好很多, 很少有不能跑的.) DOS 程式, 16-bit 程式甚至是 32-bit 程式能不能在 NT 下跑沒有絕對的關係. 要看 程式是否符合 NT 的要求. 而 NT 管的比較嚴格, 若是妄想直接存取硬體它會阻止你 執行. 問 95 能用的軟體能不能在 NT 下用, 就好比問 DOS 軟體是否都能在 95 下用 一般, 沒有必然的結果, 試了才知道. Windows 講究的是相容性, 但不能要求它 100% 相容, 太多包袱反而是累贅. 只能期望在無痛狀態下慢慢升級, 這方面 MS 做的相當不錯, 不會讓你找不到軟體用. 或許有人有疑問, 為什麼舊版的 Norton Utility 不能用在 FAT32 上? FAT16/32 的 16/32 跟軟體的 16, 32-bit 是兩碼子事. 管它 NU 是 16 還是 32-bit, 不同的檔案系統所能使用的磁碟工具就不同. DOS 6.22 的 Defrag 為何不能用在 Win95 的檔案系統上? 因為 Win95 用的是 VFAT 的檔案系統. (類似 FAT, 小部份不同) 對所不認識的檔案系統做處理, 死路一條. 同理, 英文 NU (for 95 的喔!) 也不能用在中文 Win95 上, 因為它不認識中文:P 舊的中文 NU 也不能用在 FAT32 上, 因為它不認識 FAT32. 這種檔案工具軟體不能用是檔案系統的關係沒錯, 但其它軟體就沒什麼關係. 16-bit, 32-bit 軟體能不能跑也不干檔案系統的事.
上一層目錄