FreeDOS(曾叫做Free-DOSPD-DOS)是一个在IBM PC兼容机下运行的操作系统。FreeDOS由许多不同的独立程序组成,这些程序就是整个FreeDOS项目中的“包”。[4]

FreeDOS
FreeDOS 1.1的預設殼層,FreeCOM
开发者Jim Hall與FreeDOS團隊
编程语言C語言
作業系統家族DOS
運作狀態進行中
源码模式自由软件/开放源代码
首次发布1998年1月12日,​26年前​(1998-01-12
当前版本
  • 1.3 (2022年2月20日;穩定版本)[1][2]
編輯維基數據鏈接
支持的语言英语
支援平台x86
内核类别整塊性核心[3]
默认用户界面DOS 命令行界面
许可证GNU通用公共许可证
官方網站www.freedos.org
仓库 編輯維基數據鏈接

它主要通过OP来提供磁盘访问和文件系统,以及部分内存管理,但是没有默认的GUI(尽管FreeDos 0.9及以上版本推荐使用OpenGEM)。

FreeDOS支持老式和新式PC,以及嵌入式系统。像MS-DOS一样,它可以从软盘硬盘以及ROM启动。[5] 与MS-DOS不同的是,它支持从CD-ROM安装,并且人们可以自由地创建属于自己的定制发行版,而不用为再发行支付使用费。FreeDOS是自由开源的,遵守GNU(GPL)。但是在其"util"部分中,FreeDOS也包含专有软件,例如4DOS英语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.05ALPHA沒有1998年1月12日
0.1BETAOrlando1998年3月25日
0.3BETAVentura1999年4月21日
0.4BETALemur2000年4月9日
0.5BETALara2000年8月10日
0.6BETAMidnite2001年3月18日
0.7BETASpears2001年9月7日
0.8BETANikita2002年4月7日
0.9rc1BETAMethusalem2003年7月
0.9rc2BETA沒有2003年8月23日
0.9rc3BETA沒有2003年9月27日
0.9rc4BETA沒有2004年2月5日
0.9rc5BETA沒有2004年3月20日
0.9BETA沒有2004年9月28日
0.9sr1BETA沒有2004年9月30日
0.9sr2BETA沒有2005年11月30日
1.0FINAL沒有2006年9月3日
1.1FINAL沒有2012年1月2日
1.2FINAL沒有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.02.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 9598Me把一个仅剩下内核的MS-DOS作为Boot Loader。 FreeDOS不能作为这个装载器的替身;然而,它可以被安装并通过一个引导管理器程序在这些系统之间使用,例如FreeDOS中包含的"METAKERN"。

Windows NT/2000/XP/2003和ReactOS编辑

基于Windows NT的操作系统,包括Windows 2000XP,和2003都没有把MS-DOS当作系统的核心成分。这些系统可以使用FAT,一个MS-DOS和早期版本的Windows所使用的文件系统;但是,他们一般默认使用NTFSNT 文件系统)。FreeDOS不能和这些系统在一个单独的NTFS或FAT文件系统里和平共处,但是FreeDOS内核还是可以被添加到Windows NT Boot Loader配置文件,boot.ini,或React OS中的freeldr.ini来引导它启动。FreeDOS也可以在虚拟化软件Virtual PCVirtualBoxBochsQEMU一类模拟器软件中运行。

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没有支持NTFSext2的计划,但是有一些外部第三方驱动能达到使用这些文件系统的目的。为了接受ext2文件系统,LTOOLS(与MTOOLS相当)可以在ext2文件系统上读取和写入数据。NTFSDOS和NTFS4DOS一类产品则提供了对NTFS的支持。

目前FreeDOS项目内还没有USB驱动, 但是许多新主板BIOS有“Legacy USB”设置,它可以允许USB设备在缺少USB支持的系统(如FreeDOS)上使用。 这一般运用在鼠标和键盘上,但一些BIOS甚至可以让它支持存储设备。 一些提供给存储设备的外部USB驱动(例如DUSE,USBASPI和USBMASS)在一番努力和运气成分之下也能工作。一个更好的运行DOS程序并能同时使用USB设备的选择会是DOSBox,它会从宿主系统中认出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位的图形界面

参考编辑

  1. ^ FreeDOS 1.3: Release Build Environment (RBE) - 3rd Edition, report file. 2022年2月20日. 
  2. ^ FreeDOS officially releases the FreeDOS 1.3 distribution (20 February 2022). 2022年2月20日 [2023年8月8日]. 
  3. ^ Villani, Pat. FreeDOS Kernel. Emeryville, CA, USA: Miller Freeman. 1996. ISBN 0-87930-436-7. 
  4. ^ FreeDOS. FreeDOS. [2017-12-14]. (原始内容存档于2017-12-14) (英语). 
  5. ^ FreeDOS website about. FreeDOS. [2008-06-02]. (原始内容存档于2007-05-27) (英语). 
  6. ^ FreeDOS Old Distributions[永久失效連結]
  7. ^ Dell OptiPlex Desktops. [2008-06-02]. (原始内容存档于2004-04-05) (英语). 
  8. ^ How Dell repels attempts to buy its 'open source' PC. 2005-10-06 [2017-12-14]. (原始内容存档于2017-12-14) (英语). 
  9. ^ MS-DOS: A Brief Introduction. The Linux Information Project. [2017-12-14]. (原始内容存档于2017-12-14) (英语). 
  10. ^ Graham Lea. Caldera vs Microsoft - the settlement. BBC News. 2000-01-13 [2017-12-14]. (原始内容存档于2017-12-14) (英语). 

参见编辑

外部链接编辑