FreeDOS

Betriebssystem
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 7. November 2007 um 21:37 Uhr durch Trublu (Diskussion | Beiträge). Sie kann sich erheblich von der aktuellen Version unterscheiden.

FreeDOS ist ein Projekt mit dem Ziel, ein freies, zu MS-DOS-Programmen und -Treibern kompatibles DOS-Betriebssystem zu entwickeln. Die Software ist weit fortgeschritten und bietet teilweise Funktionen und Eigenschaften, die MS-DOS vermissen lässt. Einige der mitgelieferten externen Kommandos bieten den gleichen, zum Teil auch erweiterten Funktionsumfang wie ihre MS-DOS-Pendants. Der Kommandozeileninterpreter heißt FreeCOM. Seit 3. September 2006 ist FreeDOS in der Version 1.0 zum Download verfügbar.

FreeDOS
The FreeDOS logo
FreeDOS booting screenshot
Ein einfaches und platzsparendes Betriebssystem
Entwickler Jim Hall & FreeDOS-Team
Lizenz(en) GPL
Akt. Version 1.0 final (3. September 2006)
Abstammung DOS (16 Bit)
Architektur(en) IBM PC 8086/80386
Sonstiges Sprache: Englisch / benutzerdefiniert
freedos.sourceforge.net

Unterschiede zu MS-DOS

  • LBA-Unterstützung für Datenträger bis 2 TiB (Aufhebung der Beschränkungen auf 504 MiB, 2 oder 8 GiB)
  • FAT32-Unterstützung
  • DOSLFN-Treiber (Lange Dateinamen)
  • Freie Software (GPL)
  • Benutzerdefiniertes Festlegen der Sprache möglich
  • Ultra-DMA-Treiber

Geschichte

FreeDOS wurde als Alternative zu MS-DOS geschaffen. Das Projekt wurde 1994 gestartet, als Microsoft bekannt gab, dass der Vertrieb und die Produktunterstützung für MS-DOS eingestellt werden würde. Die Entwicklung startete fast von Null, nur auf zwei schon vorhandene Projekte konnten die Entwickler aufbauen: DOS-C, das schließlich zum FreeDOS-Kernel wurde, und einem sehr primitiven Speichermanager, welcher nach sehr aufwendiger Überarbeitung zu EMM386 wurde. Die Entwicklung von FreeDOS verlief unabhängig von OpenDOS, welches 1996 ebenfalls unter einer Open-Source-Lizenz veröffentlicht wurde. Diese ist jedoch nicht mit der für FreeDOS verwendeten GNU General Public License vereinbar, weswegen die Übertragung von Quelltext ausgeschlossen ist.

Speicherverwaltung

FreeDOS umfasst eigene Treiber für XMS (HIMEM.EXE) und EMS (EMM386.EXE). EMM386 unterstützt mittlerweile auch die Speicher-Schnittstelle VCPI und verträgt sich somit mit DOS-Extendern und DPMI-Programmen zur Erweiterung des unter MS-DOS-Kompatiblen auf 640 KiB beschränkten, konventionellen Speicherraums. Statt HIMEM und EMM386 kann man auch den alternativen JEMM386 benutzen, welcher auf den beiden offiziellen Treibern aufbaut und einige Verbesserungen aufweist. In der FreeDOS-Distribution sind auch ein Ultra-DMA-Treiber und das Programm „LBAcache“ enthalten, welches ähnlich wie „SmartDrv“ von Microsoft Festplattendaten im XMS-Speicher puffert (siehe auch Festplattencache). Durch Einsatz solcher Treiber und Programme kann teilweise ein schnellerer Festplattenzugriff erzielt werden als unter dem 32-Bit-Betriebssystem Microsoft Windows.

Der FreeCOM-Befehlszeileninterpreter sowie der Kernel, Puffer, Treiber und TSRs lassen sich ähnlich wie in späten MS-DOS-Versionen in den UMB-Speicher laden, wodurch etwa 620 KiB des konventionellen DOS-Speichers verfügbar gemacht werden können. Das ist zum Beispiel für alte Spiele und Anwendungen wichtig, da diese oft viel des knappen, konventionellen Speichers benötigen.

Merkmale

Einige Vorteile von FreeDOS: Die Lizenz ist frei und offen und es wird – hauptsächlich deswegen – aktiv weiterentwickelt. Das neuere FAT32-Dateisystem wird unterstützt und man kann von FAT32-Laufwerken booten. LBA-Festplatten werden je nach Alter des BIOS bis 128 GiB (24-Bit LBA) oder sogar bis 2 TiB (48-Bit LBA) unterstützt. Der Treiber DOSLFN, der ursprünglich für Windows 95 entwickelt wurde, ermöglicht wenn nötig lange Dateinamen (siehe VFAT). Die benutzte Schnittstelle für langen Dateinamen wird inzwischen auch von FreeCOM, der Shell von FreeDOS, direkt unterstützt.

Es ist keine Unterstützung für NTFS geplant, es gibt allerdings Shareware-Treiber, die diese Aufgabe erfüllen. Durch Einsatz eines Emulators können aber alle Dateisysteme des Hauptsystems – selten direkt oder häufiger indirekt – benutzt werden.

Ein USB-Treiber ist im FreeDOS-Projekt bisher nicht vorhanden. Will man trotzdem einen USB-Stick oder eine externe USB-Festplatte benutzen, können dazu einige separate im Internet zur Verfügung stehende Closed-Source-Treiber verwendet werden, die manchmal gute Ergebnisse erzielen. Für USB-Tastaturen und -Mäuse braucht man mit neueren Computern keine DOS-Treiber, da die Signale von vielen BIOSen vom USB- auf den PS/2-Port übertragen werden können. Manche BIOSe bieten sogar auch für USB-Speichermedien einen „Treiber“, hier in Form einer Festplatten-Emulation. Wegen der großen Popularität von USB könnte ein eigener FreeDOS-Treiber nach der Veröffentlichung der Version 1.0 aber noch entwickelt werden.

Zu den wenigen Nachteilen in FreeDOS gehören: Microsoft Windows ist überhaupt nicht (ab Windows 95), nur eingeschränkt (Windows 3.x) oder nur in sehr alten Versionen (Windows 1.x oder 2.x) nutzbar. Ähnlich Probleme wie mit neueren Windows treten auch mit anderen Programmen auf, die viele undokumentierte Schnittstellen in MS-DOS benutzen. Außerdem befinden sich viele Programme in FreeDOS noch in der Beta-Phase, sind also nicht immer ausreichend auf Fehler geprüft und versagen in sehr unüblichen Szenarien möglicherweise den Dienst. Außerdem birgt die offene Lizenz auch Nachteile; so besteht keinerlei Garantie jeglicher Art. Dies ist allerdings vernachlässigbar, da der Support für fast alle anderen DOS-Betriebssysteme inzwischen bereits eingestellt wurde.

Der FreeDOS-Kernel wird auch zusammen mit dem für Linux verfügbaren, speziellen DOS-Emulator DOSEMU angeboten. Ein solches System läuft viel schneller als die freien PC-Emulatoren Bochs und QEMU oder das kommerzielle VMware, da bei diesen Programmen nicht nur die für DOS nötige, sondern eine komplette PC-Umgebung emuliert wird. Es werden natürlich nicht alle Hardware-Komponenten vollständig unterstützt, so dass sehr hardware-nah programmierte Anwendungen zu Problemen führen können.

Verbreitung

Gerüchten zufolge begann Dell aufgrund einer Lizenzvereinbarung mit Microsoft, die von manchen Computerherstellern verlangt, Computer nicht ohne Betriebssystem auszuliefern, verschiedene Modelle seiner n-Serie mit vorinstalliertem FreeDOS anzubieten. Ab Februar 2007 wird Dell erneut zwei Rechner seiner n-Serie in den USA mit FreeDOS ausliefern.

Software-Kompatibilität

Neben neuen für FreeDOS entwickelten Programmen laufen fast alle Programme, welche für MS-DOS geschrieben wurden, problemlos auch unter FreeDOS. Ausnahmen sind Windows-3.x-Versionen (siehe unten) sowie gewisse Programme, die sehr exakte MS-DOS-Versionsüberprüfungen durchführen. Auch Programme, welche von nicht standardisierten Verhaltensweisen oder undokumentierten Merkmalen von MS-DOS abhängen, können zu Problemen führen. Grundsätzlich unterstützt werden:

  • 16-Bit-Real-Mode-Programme: .COM- und .EXE-Dateien (DOS- oder MZ-executable genannt)
  • 16-Bit-DPMI – selten, vorwiegend (und nur optional) von Borland-Compilern generiert
  • 32-Bit-DPMI – viele DOS Extender wie DOS/4GW, PMODE/W, CauseWay, DOS/32A, DJGPP/GO32, etc.

Seit neuestem besteht zudem die Möglichkeit, einige für Windows (32-Bit) geschriebene Programme (in PE-EXE-Dateien vorliegend) mit Hilfe des Produkts HX DOS Extender unter FreeDOS zu betreiben.

Kompatibilität zu grafischen Benutzeroberflächen

Microsoft Windows

Die Windows-Versionen 1.0 bis 2.x stellen noch kein eigenes Speichermanagment und keine eigenen Treiber für den Datenträgerzugriff bereit und lassen sich somit problemlos unter FreeDOS benutzen. Windows 3.x und Windows for Workgroups 3.x laufen bisher nur im Standard Mode. Zur Verwendung des Enhanced Mode ist ein neuerer FreeDOS-Kernel notwendig, welcher sich noch in der Test-Phase befindet.

Diese Windows-Versionen greifen auf viele undokumentierte Funktionen des mitgelieferten MS-DOS zu. Da Microsoft die neuen Schnittstellen der sogenannten MS-DOS Versionen 7.x und 8.x nicht offenlegte, ist es nicht oder nur mit Schwierigkeiten möglich, diese in FreeDOS zu implentieren. Es ist aber problemlos möglich, FreeDOS auf jeder Windows-Partition zu installieren und einen Bootmanager zu Hilfe zu nehmen, der dem Benutzer beim Starten die Auswahl zwischen den Betriebssystemen bietet. FreeDOS selbst bietet einen solchen an. Als Alternative kann man auch FreeDOS mit dem Kernel (IO.SYS) und dem Speichermanager (EMM386.EXE) aus diesem MS-DOS benutzen; die FreeDOS-Programme sind kompatibel zu diesen beiden Komponenten.

Windows NT (und die Nachfolger 2000, XP, Vista) sowie ReactOS

Diese Systemen basieren nicht mehr auf DOS und sind infolgedessen natürlich nicht mehr von FreeDOS aus startbar. Allerdings kann man FreeDOS auch mit diesen Systemen über einen Bootmanager parallel benutzen. Im Gegensatz zu älteren Windows-Versionen bieten diese Systeme zudem bereits selbst einen einfachen Bootmanager. Einschränkend wirkt sich aber aus, dass FreeDOS nicht auf die nativen, NTFS-formatierten Partitionen dieser Systeme zugreifen kann. Wenn das andere System nicht von einer solchen Partition gestartet wird, lässt sich der FreeDOS-Kernel in die Konfigurationsdatei BOOT.INI oder FREELDR.INI eintragen und beim Starten des Betriebssystems erscheint eine Auswahl zwischen DOS und dem Hauptsystem.

OpenGEM

OpenGEM ist eine freier Klon der grafischen Benutzeroberfläche GEM für DOS, die auch auf FreeDOS läuft

ct-FRAME

ct-FRAME ist eine Grafische Benutzeroberfläche für DOS, die auch auf FreeDOS läuft.

Weitere

Weitere mit FreeDOS kompatible grafische Benutzeroberflächen sind PC/GEOS, oZone und SEAL.

Sonstiges

Unter Anderem diese speziellen Programme sind auf der vollständigen FreeDOS-Distribution auf CD enthalten:

  • MPXPLAY Audio-Player mit Unterstützung für Ogg Vorbis, MP3, WAVE und andere Formate
  • Arachne Web-Browser für DOS, grafischer Internetbrowser, der sich über einen eigenen TCP/IP-Stack einwählt
  • CuteMouse, ein DOS-Maustreiber, der auch das auf fast allen neueren Mäusen auffindbare Mausrad unterstützt
  • FreeDOS DEFRAG, erstes frei verfügbares DOS-Programm zur Defragmentierung von (DOS-)Datenträgern (in neueren Versionen auch FAT32)
Wikibooks: FreeDOS-Kompendium – Lern- und Lehrmaterialien
Commons: FreeDOS – Album mit Bildern, Videos und Audiodateien