FreeDOS

FreeDOS

FreeDOS booting screen shot
Company / developer Jim Hall & The FreeDOS team
OS family DOS
Working state Current
Source model Free and open source[1] with a few closed source utils[2]
Initial release June 28, 1994; 17 years ago (1994-06-28)
Latest stable release 1.1 / January 2, 2012; 44 days ago (2012-01-02)
Available language(s) English, German
Supported platforms x86
Kernel type Monolithic kernel[3]
Default user interface DOS Command line interface
License GNU GPL[1] with some freeware and shareware licensed utils[2]
Official website www.freedos.org

FreeDOS (formerly Free-DOS and PD-DOS) is an operating system for IBM PC compatible computers. FreeDOS is made up of many different, separate programs that act as "packages" to the overall FreeDOS Project.[1] As a member of the DOS family, it provides mainly disk access through its kernel, and partial memory management, but no default GUI (although OpenGEM is listed on the official FreeDOS website). FreeDOS 1.1 was released on January 2, 2012;[4] many of the packages making up FreeDOS are updated or added to frequently.

FreeDOS supports vintage hardware IBM PCs as well as modern ones, in addition to embedded computers. Unlike MS-DOS, it is composed of free and open source software, licensed under the terms of the GNU General Public License (GPL). It does not require license fees or royalties and creation of custom distributions is permitted.[1] However, in its "util" section, it includes non-GPL software such as 4DOS.[2]

FreeDOS has a sparsely-populated IRC channel, #freedos, on irc.i7c.org.

Contents

History

The FreeDOS project began June 29, 1994, after Microsoft announced it would no longer sell or support MS-DOS. Jim Hall then posted a manifesto proposing the development of an open-source replacement.[5] Within a few weeks, other programmers including Pat Villani (1954–2011) and Tim Norman joined the project. A kernel, the COMMAND.COM command line interpreter and core utilities were created by pooling code they had written or found available.[6][7] There have been several official pre-release distributions of FreeDOS before the final FreeDOS 1.0 distribution.[8] GNU/DOS, a distribution of FreeDOS, was discontinued after version 1.0 was released.[9][10]

Distribution

FreeDOS 1.0 is available for download as CD-ROM images: a base disc that only contains the kernel and basic applications, and a full disc that contains many more applications (games, networking, development, etc.), not available as of November 2011 but with a newer version announced "soon".[11] Versions of these two discs with source code, which can boot as LiveCDs, are also available.[12]

Commercial uses

FreeDOS is used by several companies:

Non-commercial uses

FreeDOS is also used in multiple independent projects:

Compatibility

FreeDOS Version History[8]
Version Status Codename Date
0.05 ALPHA None January 12, 1998
0.1 BETA Orlando March 25, 1998
0.2 BETA Marvin October 28, 1998
0.3 BETA Ventura April 21, 1999
0.4 BETA Lemur April 9, 2000
0.5 BETA Lara August 10, 2000
0.6 BETA Midnite March 18, 2001
0.7 BETA Spears September 7, 2001
0.8 BETA Nikita April 7, 2002
0.9rc1 BETA Methusalem July, 2003
0.9rc2 BETA None August 23, 2003
0.9rc3 BETA None September 27, 2003
0.9rc4 BETA None February 5, 2004
0.9rc5 BETA None March 20, 2004
0.9 BETA None September 28, 2004
0.9sr1 BETA None November 30, 2004
0.9sr2 BETA None November 30, 2005
1.0 FINAL None September 3, 2006
1.1 FINAL None January 2, 2012

MS-DOS and Win32 console

FreeDOS is mostly compatible with MS-DOS. It supports .COM executables, standard DOS executables and Borland's 16-bit DPMI executables. It is also possible to run 32-bit DPMI executables using DOS extenders. The operating system has several improvements relative to MS-DOS, mostly involving support of newer standards and technologies that did not exist when Microsoft ended support for MS-DOS, such as internationalization, Advanced Power Management TSRs, and integrated ASPI.[25] Furthermore, with use of HX DOS Extender, many Win32 console applications function properly in FreeDOS, as do some GUI programs, like QEMU and Bochs.[26]

Windows 1.0 to 3.xx

FreeDOS is able to run Microsoft Windows 1.0 and 2.0 releases. Windows 3.x releases, which had support for i386 processors, can be run in 386 Enhanced Mode since FreeDOS kernel build 2037.

Windows 9x and Windows Millennium Edition

Windows 95, 98 and Me use a stripped down version of MS-DOS as a bootloader. FreeDOS cannot be used as a replacement bootloader; however, it can be installed and used beside these systems using a boot manager program, such as the "METAKERN" included with FreeDOS. Problems running Windows result from Microsoft's efforts to prevent their products running on non-Microsoft DOS implementations.[27]

Windows NT and ReactOS

Windows NT-based operating systems, including Windows 2000, XP, 2003, Vista, 2008, 7 and 2008 R2 do not make use of MS-DOS as a core component of the system. These systems can make use of the FAT file systems, which are used by MS-DOS and earlier versions of Windows; however, they typically use the NTFS (NT File System) by default. FreeDOS can coexist on these systems on a separate partition on NTFS systems, or on the same partition on FAT systems. The FreeDOS kernel can be booted by adding it to the Windows NT Boot Loader configuration file, boot.ini, or freeldr.ini for ReactOS.[28]

File systems

FAT32 is fully supported and can be booted from. Depending on the BIOS used, up to four LBA hard disks up to 128 GB, or 2 TB, in size are supported. There has been little testing with large disks, and some BIOSes support LBA but produce errors on disks larger than 32 GB; a driver such as OnTrack or EZ-Drive resolves this problem. FreeDOS can also be used with a driver called DOSLFN, which supports long file names (see VFAT), but most old programs do not support long file names even if the driver is loaded. There is no planned support for NTFS or ext2, but there are several external third-party drivers available for that purpose. To access ext2fs, LTOOLS (counterpart to MTOOLS) can be used to copy data to and from ext2fs drives. NTFS support is provided by software such as NTFSDOS and NTFS4DOS.

Universal Serial Bus

As of 2011 there was no USB driver support inside the FreeDOS project, but many modern motherboards contain BIOS settings for "Legacy USB" support which allow USB devices to be used in operating systems that lack support for them (such as FreeDOS). This applies to keyboards and mice; some BIOSes support storage devices. Some external DOS USB drivers (such as DUSE, USBASPI and USBMASS) for storage devices work with some effort. There is also DOSUSB which offers an API and supports storage devices, printers and serial adapters. An alternative to running DOS programs with USB devices is to use virtualisation software, such as DOSBox, which recognizes USB devices from the host operating system to act as if they were "legacy port" devices (e.g. joysticks with game ports, printers with parallel ports, and USB flash drives would act as if they were a hard drive for DOS), but this requires an OS with a GUI.

Features

Technical details

Booting

FreeDOS can be booted from a hard drive, live CD, USB flash drive or floppy disk.[30][31][32][33] It can also be run using virtualization software like Virtual PC and VirtualBox or emulation software like Bochs and QEMU.[6] To use the Windows Boot Menu the following line can be added to C:\BOOT.INI:[28]

C:\FDOSBOOT.BIN="FreeDOS"

To boot using GRUB something similar to the following can be added to menu.lst:

title FreeDOS           # Anything you want
root hd(x,y)            # x = device and y = partition on which FreeDOS resides
chainloader /kernel.sys # Boots FreeDOS's bootloader

Memory management

The FreeCOM shell, FreeDOS's version of COMMAND.COM, can move portions of itself into extended memory freeing up large portions of conventional memory, up to 620 kB. This is useful for DOS programs which only use conventional memory. The HIMEM and EMM386 memory management programs included with FreeDOS provide extended memory (XMS) and expanded memory (EMS) for old real mode software, EMM386 also supports VCPI, which allows DPMI kernels and DOS extenders to coexist with it. FreeDOS also contains an UDMA driver for faster disk access, which is also compatible with other DOS versions. The LBAcache disk cache stores recently accessed disk data in XMS for faster access and less direct disk access.

See also

References

  1. ^ a b c d "The FreeDOS Project". SourceForge. 2006-05-21. http://sourceforge.net/projects/freedos/. Retrieved 2008-01-02. 
  2. ^ a b c "FreeDOS Software: util section". The FreeDOS Project. http://www.freedos.org/software/?cat=util. Retrieved 09-05-26. 
  3. ^ Villani, Pat (1996). FreeDOS Kernel. Emeryville, CA, USA: Miller Freeman. ISBN 0-87930-436-7. 
  4. ^ "Official homepage of FreeDOS". FreeDOS. http://www.freedos.org/. Retrieved 2008-01-02. 
  5. ^ Jim Hall (1994-06-29). "PD-DOS project *announcement*". comp.os.msdos.apps. (Web link). Retrieved 2008-06-14. 
  6. ^ a b Hall, Jim (2002-03-25). "The past, present, and future of the FreeDOS Project". http://www.linuxfordevices.com/c/a/News/The-past-present-and-future-of-the-FreeDOS-Project/. Retrieved 2008-06-14. 
  7. ^ Hall, Jim (September 23, 2006). "History of FreeDOS". freedos.org. http://www.freedos.org/freedos/about/. Retrieved 2007-05-28. 
  8. ^ a b Jim Hall (2007-10-02). "Removing old distributions from ibiblio". Freedos-devel. (Web link). Retrieved 2009-10-07. 
  9. ^ "GNU/DOS". SourceForge. 2007-03-29. http://sourceforge.net/projects/gnudos/. Retrieved 2009-01-02. 
  10. ^ Marinof, Mihai (2006-12-02). "GNU/DOS Project Discontinued". Softpedia. http://news.softpedia.com/news/GNU-DOS-Project-Discontinued-41470.shtml. Retrieved 2009-01-02. 
  11. ^ "FreeDOS: Files". http://www.freedos.org/freedos/files/. Retrieved 2011-11-04. 
  12. ^ "FreeDOS: Files". http://www.freedos.org/freedos/files/. Retrieved 2009-05-26. 
  13. ^ Vance, Ashlee. "How Dell repels attempts to buy its 'open source' PC". The Register. http://www.theregister.co.uk/2005/10/06/dell_open_pc/. Retrieved 2008-01-02. 
  14. ^ "DC5750 Product Specifications". HP. 2008-10-29. http://h18000.www1.hp.com/products/quickspecs/12546_na/12546_na.HTML. Retrieved 2009-08-01. 
  15. ^ "First Look at HP's Low-Cost ProBook Laptop Lineup". EWeek. http://www.eweek.com/c/a/Desktops-and-Notebooks/First-Look-at-HPs-LowCost-ProBook-Laptop-Lineup-880043/. Retrieved 2009-03-26. 
  16. ^ McCracken, Harry (2009-06-23). "HP’s Mini 5101: Netbook Deluxe, With All the Trimmings". Technologizer. http://technologizer.com/2009/06/23/hps-mini-5101-netbook-deluxe-with-all-the-trimmings/. Retrieved 2009-08-01. 
  17. ^ "FreeDOS Bootable Media". HP. 2010-10-25. http://h20000.www2.hp.com/bizsupport/TechSupport/SoftwareDescription.jsp?lang=en&cc=us&prodTypeId=321957&prodSeriesId=3442832&swItem=ob-88522-1&mode=4&idx=3. Retrieved 2011-01-13. 
  18. ^ "GRC dard drive data recovery software". Gibson Research Corporation. 2006-02-02. http://www.grc.com/sr/spinrite.htm. Retrieved 2009-05-16. 
  19. ^ Gibson, Steve. with Leo Laporte. Call for Help. TechTV. Toronto, Canada. http://www.youtube.com/watch?v=DjHtJxsVEd4. Retrieved 2009-05-26. 
  20. ^ "SeaTools for DOS Download". Seagate. http://www.seagate.com/www/en-us/support/downloads/seatools/seatooldreg. Retrieved 2009-03-06. 
  21. ^ "Intel Solid-State Drive Firmware Update Tool boot cd". Intel. http://downloadcenter.intel.com/detail_desc.aspx?agr=&ProductID=&DwnldID=18363&strOss=&OSFullName=&lang=eng. Retrieved 2010-03-25. 
  22. ^ "FUZOMA Educational Software". http://superkeen.com/peacecorpsweblog/learning-software/. Retrieved 2009-12-18. 
  23. ^ "Floppy Enhanced DivX Universal Player". http://membres.multimania.fr/zeroiq/index.php?page=40..FED-UP%20boot%20floppy%20.php. Retrieved 2009-12-18. 
  24. ^ "Doscore homepage". http://www.doscore.net. 
  25. ^ Matthew Broersma (2006-09-04). "DOS lives! Open source reinvents past". Techworld. http://www.techworld.com/networking/news/index.cfm?newsid=6783. Retrieved 2009-05-26. 
  26. ^ japheth. "HX DOS Extender". http://www.japheth.de/HX.html. Retrieved 2009-01-02. 
  27. ^ Lea, Graham (2000-01-13). "Caldera vs Microsoft - the settlement". BBC News. http://news.bbc.co.uk/2/hi/business/600488.stm. Retrieved 2009-01-02. 
  28. ^ a b Marc Herbert (2004-10-01). "Install FreeDOS without any CD, floppy, USB-key, nor any other removable media". http://marc.herbert.free.fr/linux/freedos_no_removable.html. Retrieved 2009-05-26. 
  29. ^ "SourceForge.net: freedos". http://sourceforge.net/apps/mediawiki/freedos/index.php?title=Main_Page#Features.  090911 sourceforge.net
  30. ^ "How to Create a Bootable FreeDOS Floppy Disk". 2005-07-19. http://www.linfo.org/freedos_floppy.html. Retrieved 2008-08-04. 
  31. ^ Franske, Ben (2007-08-21). "Booting DOS from a USB flash drive". http://ben.franske.com/blogs/2007/08/21/booting_dos_from_a_usb_flash_drive. Retrieved 2008-08-04. 
  32. ^ genetikayos (2005-12-19). "FreeDOS on a USB Flash Drive". http://genetikayos.livejournal.com/43998.html. Retrieved 2008-08-04. 
  33. ^ "FreeDOS Files". FreeDOS. http://www.freedos.org/freedos/files/. Retrieved 2008-08-04. 

External links