FreeDOS
開發者 | Jim Hall與FreeDOS團隊 |
---|---|
程式語言 | C語言 |
作業系統家族 | DOS |
運作狀態 | 進行中 |
原始碼模式 | 自由軟件/開放原始碼 |
首次釋出 | 1998年1月12日 |
目前版本 | |
支援的語言 | 英語 |
支援平台 | x86 |
內核類別 | 整塊性核心[3] |
預設用戶介面 | DOS 命令列介面 |
特許條款 | GNU通用公眾特許條款 |
官方網站 | www |
倉庫 |
FreeDOS(曾叫做Free-DOS和PD-DOS)是一個在IBM PC相容機下執行的作業系統。FreeDOS由許多不同的獨立程式組成,這些程式就是整個FreeDOS專案中的「包」。[4]
它主要通過OP來提供磁碟訪問和檔案系統,以及部分主記憶體管理,但是沒有預設的GUI(儘管FreeDos 0.9及以上版本推薦使用OpenGEM)。
FreeDOS支援老式和新式PC,以及嵌入式系統。像MS-DOS一樣,它可以從軟碟、硬碟以及ROM啟動。[5] 與MS-DOS不同的是,它支援從CD-ROM安裝,並且人們可以自由地建立屬於自己的客製化發行版,而不用為再發行支付使用費。FreeDOS是自由且開源的,遵守GNU(GPL)。但是在其"util"部分中,FreeDOS也包含專有軟件,例如4DOS。
歷史
FreeDOS專案開始於1994年6月26日,當微軟宣佈不會發售和支援MS-DOS。Jim Hall隨後宣佈了要開發一個開源替代品的宣言。幾個星期內,其他的程式設計師包括Pat Villani和Tim Norman加入了這個專案。一個內核,command.com命令列解釋程式(shell)和核心實用工具通過共用自己編的原始碼而被創造出來。1.0版於2006年9月23日釋出。
在FreeDOS 1.0最終釋出之前,有過一些官方的預釋出版[6]:
版本 | 狀態 | 代號 | 日期 |
---|---|---|---|
0.05 | ALPHA | 沒有 | 1998年1月12日 |
0.1 | BETA | Orlando | 1998年3月25日 |
0.3 | BETA | Ventura | 1999年4月21日 |
0.4 | BETA | Lemur | 2000年4月9日 |
0.5 | BETA | Lara | 2000年8月10日 |
0.6 | BETA | Midnite | 2001年3月18日 |
0.7 | BETA | Spears | 2001年9月7日 |
0.8 | BETA | Nikita | 2002年4月7日 |
0.9rc1 | BETA | Methusalem | 2003年7月 |
0.9rc2 | BETA | 沒有 | 2003年8月23日 |
0.9rc3 | BETA | 沒有 | 2003年9月27日 |
0.9rc4 | BETA | 沒有 | 2004年2月5日 |
0.9rc5 | BETA | 沒有 | 2004年3月20日 |
0.9 | BETA | 沒有 | 2004年9月28日 |
0.9sr1 | BETA | 沒有 | 2004年9月30日 |
0.9sr2 | BETA | 沒有 | 2005年11月30日 |
1.0 | FINAL | 沒有 | 2006年9月3日 |
1.1 | FINAL | 沒有 | 2012年1月2日 |
1.2 | FINAL | 沒有 | 2016年12月26日 |
發行
FreeDOS不要求任何費用和版稅。FreeDOS 1.0提供CD-ROM鏡像下載:一個只含有內核和基礎程式的基本光碟和一個擁有更多程式(例如遊戲、網絡和開發)並可作為Live CD使用的完整光碟。另外,還存在一個可以製作Live CD的軟碟鏡像。這兩個版本都提供了原始碼。可以使用BitTorrent下載得到。
現在還有一個官方的Live USB版本。
一些電腦品牌可讓客戶選擇預載FreeDOS的電腦,通常供貨給已購買大量特許Windows的企業用戶,或是需安裝其他作業系統的用戶。戴爾有預裝FreeDOS的n-series[7],但是這些產品和執行Windows的同一型號機器相比並沒有多便宜,而且又很難買到,戴爾公司因此受到了批評。[8]。另外,戴爾還時常提供FreeDOS電腦一些像雙核心一類FreeDOS不能利用的特性。惠普把FreeDOS作為DC5750桌上電腦的一個可選組態。GRC的SpinRite 6引導鏡像裝載FreeDOS,並顯示在底部的啟動畫面。華碩利用FreeDOS讓它們的用戶引導主機板驅動CD來建立SATA裝置驅動光碟給Windows XP SP2以前的Windows版本。
與MS-DOS的關係
FreeDOS大部分相容MS-DOS,並允許一些早期版本的Windows像在MS-DOS上一樣執行。
FreeDOS跟MS-DOS相比有一些改進,大部分改進支援了在微軟停止支援MS-DOS時不存在的新標準和技術,例如國際化,進階能源管理,主記憶體常駐程式並且綜合了ASPI。另外還支援邏輯塊定址和FAT32檔案系統(包括從FAT32引導)。儘管由6.22版以前的MS-DOS不能支援這些功能,但是MS-DOS 7.10等的版本有了部分支援[9]。
相容性
綜合
大部分為DOS 家族所寫的程式可以在FreeDOS上有效執行。大部分類型的可執行檔案已經被支援:
進一步的,由於HX DOS 擴充器的使用,許多Win32終端程式也能在FreeDOS上執行。
Windows 1.0至3.xx
FreeDOS能夠相容1.0和2.0版本的Microsoft Windows。然而,已支援i386處理器的3.x版本的Windows,卻不能在 386增強模式中執行。其中,Windows 3.0 可以在真實模式或者標準模式中執行,而其他的Windows 3.x版本只能在標準模式中執行。 因為Windows for Workgroups 3.11捨棄了標準模式的支援,它不能在FreeDOS中執行,除非FreeDOS中涉及himem.exe和emm386.exe的部分被替換為Windows下的himem.sys和emm386.exe。雖然Windows for Workgroups 3.11支援一個可以在FreeDOS下執行的除錯模式,但是這個模式會比在標準模式下執行的先前版本還要有限的多。
Windows 9x和Windows Millennium Edition
Windows 95,98和Me把一個僅剩下內核的MS-DOS作為Boot Loader。 FreeDOS不能作為這個裝載器的替身;然而,它可以被安裝並通過一個引導管理器程式在這些系統之間使用,例如FreeDOS中包含的"METAKERN"。
Windows NT/2000/XP/2003和ReactOS
基於Windows NT的作業系統,包括Windows 2000,XP,和2003都沒有把MS-DOS當作系統的核心成分。這些系統可以使用FAT,一個MS-DOS和早期版本的Windows所使用的檔案系統;但是,他們一般預設使用NTFS(NT 檔案系統)。FreeDOS不能和這些系統在一個單獨的NTFS或FAT檔案系統裏和平共處,但是FreeDOS內核還是可以被添加到Windows NT Boot Loader設定檔,boot.ini,或React OS中的freeldr.ini來引導它啟動。 FreeDOS也可以在虛擬化軟件Virtual PC和VirtualBox或Bochs和QEMU一類模擬器軟件中執行。
FreeDOS-32
FreeDOS-32是一個有不同目標且單獨的專案。FreeDOS要再造一個MS-DOS,因此不僅僅有它的特點也有它的局限性。FreeDOS-32希望在其基礎上有所擴充和改進。FreeDOS-32可以在FreeDOS和其他DOS 家族之上執行。它被計劃成為一個32位元系統,與16位元系統相比,能提供更強的效能與更多的功能。另外,這個以32位元執行的作業系統移除了DOS 擴充器的需要,從真實模式轉換到了保護模式,還且擁有了對保護模式程式的支援。
技術細節
FreeDOS完整的支援FAT32,並可以從FAT32上啟動。根據BIOS的情況,容量達到128G的LBA硬碟,甚至2TB的容量都可能被支援。使用超大容量的硬碟需要小心,因為這到現在只經過非常少的測試,並且一些BIOS雖支援LBA但會在容量超過32GB硬碟上產生錯誤。一些OnTrack或者是EzDrive 的驅動解決了這些問題。 FreeDOS可以同一種叫DOSLFN的驅動使用,它支援長檔名(參見VFAT),但是大部分早期程式就算裝載了這個驅動也不能使用長檔名。
FreeDOS沒有支援NTFS或ext2的計劃,但是有一些外部第三方驅動能達到使用這些檔案系統的目的。為了接受ext2檔案系統,LTOOLS(與MTOOLS相當)可以在ext2檔案系統上讀取和寫入數據。NTFSDOS和NTFS4DOS一類產品則提供了對NTFS的支援。
目前FreeDOS專案內還沒有USB驅動, 但是許多新主機板BIOS有「Legacy USB」設置,它可以允許USB裝置在缺少USB支援的系統(如FreeDOS)上使用。 這一般運用在滑鼠和鍵盤上,但一些BIOS甚至可以讓它支援儲存裝置。 一些提供給儲存裝置的外部USB驅動(例如DUSE,USBASPI和USBMASS)在一番努力和運氣成分之下也能工作。一個更好的執行DOS程式並能同時使用USB裝置的選擇會是DOSBox,它會從宿主系統中認出USB裝置並把它們扮演成「傳統埠」裝置(例如帶有遊戲埠的搖杆,並列埠的印表機,而USB手指則會當作DOS下的硬碟)。
FreeDOS與Windows XP雙啟動
第一種方法是格式化磁碟分區為FAT32,先安裝FreeDOS到第一分區,再安裝Windows XP到第二分區,開機時就可以看到雙啟動選單。
第二種方法就是使用gag4.11.zip,或者是freedos內建的XOSL 1.1.5.zip或者是grub,可以很好的解決。
可開機軟碟
FreeDOS可以從單一軟碟安裝。
主記憶體管理
FreeDOS中的HIMEM和EMM386主記憶體管理程式為真實模式提供了延伸主記憶體(XMS)和擴充主記憶體(EMS)。 EMM386還支援VCPI,它使得DPMI內核與DOS擴充器同FreeDOS和平共處。FreeDOS還包括用於高速硬碟的UDMA驅動,這個驅動能和其他DOS相容。LBAcache在XMS中留有最近存取的磁碟數據,使之得到更快的儲存速度並能較少的直接讀寫磁碟,其功能類似MS-DOS中的SMARTDRV。
FreeDOS外殼——FreeDOS版COMMAND.COM,又稱FreeCOM——可以把自身一部分移動到擴充主記憶體,將多至620KB的常規主記憶體釋放出來。這對於只利用常規主記憶體的DOS程式來說非常有用處。
FreeDOS並沒有100%的相容度,但足夠執行大部分程式。高質素且使用標準API的程式執行良好。而執行Windows 9x的問題則是源於微軟設法阻止他們的產品在非微軟DOS執行。[10]
截圖
在Infobox中可檢視更多截圖。
GUI
OpenGEM
唯一被FreeDOS所支援的OpenGEM是一個為了支援DOS環境而正在積極開發的圖形介面。如果你正在使用Blair's FreeDOS磁碟或者是GNU/DOS的話,你就已經擁有了OpenGEM的最新版本。 要啟動這個圖形介面,你只需要切換到c:\並輸入gem就可以了。
SEAL
SEAL是DOS上的一個32位元的圖形介面
參考
- ^ FreeDOS 1.3: Release Build Environment (RBE) - 3rd Edition, report file. 2022年2月20日.
- ^ FreeDOS officially releases the FreeDOS 1.3 distribution (20 February 2022). 2022年2月20日 [2023年8月8日].
- ^ Villani, Pat. FreeDOS Kernel. Emeryville, CA, USA: Miller Freeman. 1996. ISBN 0-87930-436-7.
- ^ FreeDOS. FreeDOS. [2017-12-14]. (原始內容存檔於2017-12-14) (英語).
- ^ FreeDOS website about. FreeDOS. [2008-06-02]. (原始內容存檔於2007-05-27) (英語).
- ^ FreeDOS Old Distributions[永久失效連結]
- ^ Dell OptiPlex Desktops. [2008-06-02]. (原始內容存檔於2004-04-05) (英語).
- ^ How Dell repels attempts to buy its 'open source' PC. 2005-10-06 [2017-12-14]. (原始內容存檔於2017-12-14) (英語).
- ^ MS-DOS: A Brief Introduction. The Linux Information Project. [2017-12-14]. (原始內容存檔於2017-12-14) (英語).
- ^ Graham Lea. Caldera vs Microsoft - the settlement. BBC News. 2000-01-13 [2017-12-14]. (原始內容存檔於2017-12-14) (英語).
參見
外部連結
- FreeDOS Homepage (official)(頁面存檔備份,存於互聯網檔案館)
- FreeDOS Homepage (SourceForge)(頁面存檔備份,存於互聯網檔案館)
- FD-DOC FreeDOS Documentation Project
- Official Download - FreeDOS 1.0(頁面存檔備份,存於互聯網檔案館)
- Summary of FreeDOS Commands(頁面存檔備份,存於互聯網檔案館)
- Virtual Machine in Java with FreeDOS
- How to Create a BootableFreeDOS Floppy Disk(頁面存檔備份,存於互聯網檔案館)
- FreeDOS on a USB Flash DriveArchive.is的存檔,存檔日期2012-07-09
- Install FreeDOS without any removable media(頁面存檔備份,存於互聯網檔案館)。
- Virtual Machine for Microsoft Virtual PC 2007 with FreeDOS 1.0 O.S. (西班牙文)
- FreeDOS-32(頁面存檔備份,存於互聯網檔案館) FreeDOS-32 Homepage(SourceForge)