- FreeDos
-
FreeDOS Basisdaten Entwickler Jim Hall & FreeDOS-Team Version 1.0 final
(3. September 2006)Abstammung DOS (16 Bit) Kernel monolitisch (C und Assembler) Architekturen IBM PC (x86 ab 8086/8088) Lizenz GPL Sonstiges Sprache: Englisch / benutzerdefiniert Website freedos.sourceforge.net FreeDOS ist ein Betriebssystem aus der Gruppe der DOS-Betriebssysteme. Die Entwicklung von FreeDOS findet innerhalb des FreeDOS-Projektes statt, in dem sich mehrere Einzelprojekte zusammengefunden haben, um eine freie und kompatible Alternative zum Betriebssystem MS-DOS zu schaffen, dessen Weiterentwicklung von seinem Hersteller Microsoft eingestellt wurde. Viele der Einzelprojekte verfolgen oder verfolgten ursprünglich das Ziel, Bestandteile wie beispielsweise den DOS-Kern, Treiber- und Dienstprogramme von MS-DOS oder anderen DOS-Betriebssystemen durch Pendants mit vergleichbarer oder gar erweiterter Funktionalität zu ersetzen oder zu ergänzen. Das Gesamtprojekt hat dabei den Anspruch, zeitgemäße Erweiterungen und Anpassungen vorzunehmen und dabei trotzdem den Charakter von FreeDOS als ein MS-DOS-kompatibles Betriebssystem zu erhalten.
Am 3. September 2006 wurde die Version 1.0 fertiggestellt – Version 1.1 hätte im April 2008 verfügbar sein sollen. [1]
Inhaltsverzeichnis
Unterschiede zu MS-DOS
FreeDOS ist ein quelloffenes und freies Betriebssystem, das der GPL-Lizenz unterliegt und aktiv weiterentwickelt wird. Darüber hinaus bietet es aber auch technische Vorteile gegenüber anderen DOS-Betriebssystemen. So unterstützt es unter anderem:
- Logical Block Addressing (LBA) – ermöglicht den Zugriff auf Datenträger bis zu einer Größe von 2 TB und hebt damit die Beschränkung vieler DOS-Betriebssysteme (von entweder 504 MB, 2, 8 oder 128 GB) auf.
- Partitionen mit FAT32-Dateisystem – ermöglicht wird hier nicht nur der Zugriff auf, sondern auch das Booten von diesen Dateisystemen.
- DOSLFN-Treiber – gestattet die Verwendung langer Dateinamen, wie sie für das FAT-Dateisystem auch unter Windows-9x-Betriebssystemen unterstützt werden (siehe auch VFAT).
- Ultra-DMA-Treiber – hierdurch werden schnelle Zugriffe auf IDE-Datenträger möglich. Die unter DOS-Betriebssystemen üblichen BIOS-Aufrufe über den Software-Interrupt 13h sind auf moderneren Rechnern zumeist sehr langsam, stellen andererseits aber auch das Funktionieren auf allen IBM-AT-kompatiblen Rechnern sicher.
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, dessen Kernel schließlich von FreeDOS übernommen wurde, und einem sehr primitiven Speichermanager, der nach sehr aufwendiger Überarbeitung zu EMM386 wurde. Die Entwicklung von FreeDOS verlief unabhängig von OpenDOS, das 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 funktioniert somit mit DOS-Extendern und DPMI-Programmen zur Erweiterung des unter MS-DOS-Kompatiblen auf 640 KB beschränkten, konventionellen Speicherraums. Statt HIMEM und EMM386 kann man auch die Alternativen HIMEMX (Ersatz für und Verbesserungen gegenüber dem originalen HIMEM), JEMM386 (leistungsfähiger Ersatz für EMM386) oder JEMMEX (kombiniert die Funktionalität von HIMEM und EMM386 in einem Programm) benutzen, die auf den beiden offiziellen FreeDOS-Treibern aufbauen.[2] In der FreeDOS-Distribution sind auch Ultra-DMA-Treiber und das Programm „LBAcache“ enthalten, das ä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 modernen 32-Bit-Betriebssystemen wie Microsoft Windows oder Linux.
Der FreeCOM-Befehlszeileninterpreter sowie Teile des Kernels, Puffer, Treiber und TSRs lassen sich ähnlich wie in späten MS-DOS-Versionen in den UMB- beziehungsweise HMA-Speicher laden, wodurch bis zu 620 KB des konventionellen DOS-Speichers (der 640 KB umfasst) 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.
Einschränkungen
Es ist keine Unterstützung für NTFS geplant, es gibt allerdings Shareware-Treiber, die diese Aufgabe erfüllen. Ebenso existiert kein USB-Treiber im FreeDOS-Projekt, jedoch gibt es einige Closed-Source-Treiber (DOSUSB von Georg Potthast, USBASPI/Panasonic) dafür.
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. Ähnliche Probleme wie mit neueren Windows treten auch mit anderen Programmen auf, die viele undokumentierte Schnittstellen in MS-DOS benutzen. Außerdem befinden sich einige Programme in FreeDOS noch in der Beta-Phase, sind also nicht immer ausreichend auf Fehler geprüft und versagen möglicherweise den Dienst.
Verbreitung
Das System wird vornehmlich genutzt, damit Komplettsysteme nominell nicht ohne Betriebssystem ausgeliefert werden, so etwa von Dell für seine n-Serie. Gerüchten zufolge ist diese Lösung aufgrund einer Lizenzvereinbarung mit Microsoft erforderlich, die verlangt, Computer nicht ohne Betriebssystem auszuliefern. Außerdem wird FreeDOS gerne für bootbare Disketten verwendet, z.B. um Testprogramme mit vollem Hardwarezugriff zu starten.
Software-Kompatibilität
Neben neuen für FreeDOS entwickelten Programmen laufen fast alle Programme, die für MS-DOS geschrieben wurden, problemlos auch unter FreeDOS. Ausnahmen sind einzelne Programme, die eine MS-DOS-Versionsüberprüfung durchführen, oder die von nicht standardisierten Verhaltensweisen oder undokumentierten Merkmalen von MS-DOS abhängen. 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.
Mit Hilfe des HX DOS Extender besteht zudem die Möglichkeit, einige für Windows (32-Bit) geschriebene PE-EXE-Dateien unter FreeDOS auszuführen.
Kompatibilität zu grafischen Benutzeroberflächen
Für MS-DOS geschriebene grafische Benutzeroberflächen (kurz „GUI“) sollten grundsätzlich auch auf FreeDOS lauffähig sein. Auch hier gilt, falls das betreffende GUI von standardisierten Verhaltensweisen abweicht oder undokumentierte Merkmale von MS-DOS verwendet, treten Probleme auf. Das betrifft beispielsweise Windows-3.x-Versionen (siehe unten).
Sehr gute Kompatibilität weist OpenGEM auf, eine grafische Benutzeroberfläche für MS-DOS-kompatible Betriebssysteme, die unter einer freien Lizenz steht. OpenGEM ist eine Weiterentwicklung der Mitte der 1980er Jahre populären Benutzeroberfläche GEM von Digital Research, die unter anderem durch den Atari ST weite Verbreitung fand und bereits damals in einer Version für den IBM-PC verfügbar war.
Weitere mit FreeDOS kompatible grafische Benutzeroberflächen sind unter anderem ct-FRAME, PC/GEOS, oZone und SEAL.
Kompatibilität zu Microsoft Windows
Windows 1.0 bis 3.x
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.
Windows 95 bis Me
Abgesehen von der theoretischen Möglichkeit, Windows 4.0 (die grafische Bedienoberfläche von Windows 95) direkt unter FreeDOS zu starten, beinhalten alle DOS-basierten Windows-Versionen als vollwertige Betriebssysteme einen angepassten DOS-Unterbau in Form von MS-DOS 7.0/7.1 (Windows 95/98) bzw. MS-DOS 8.0 (Windows Me).
Da diese Windows-Versionen auf viele undokumentierte Funktionen des mitgelieferten MS-DOS zugreifen, sind sie nicht von FreeDOS aus startbar.
Windows NT (und die Nachfolger 2000, XP, Vista) sowie ReactOS
Diese Systemen basieren nicht mehr auf DOS und sind infolgedessen nicht von FreeDOS aus startbar. FreeDOS kann aber, wie auch MS-DOS, parallel zu Windows installiert werden. Bei einer vorhandenen DOS-Installation richtet Windows als zweites Betriebssystem seinen eigenen Bootmanager so ein, dass das vorhandene DOS gestartet werden kann.
Multiboot
Ab Windows 95 ist ein eigenes angepasstes MS-DOS im Lieferumfang. Um FreeDOS neben Windows 95 und allen Nachfolgeversionen betreiben zu können, ist daher ein Mechanismus erforderlich, der sich „Dualboot“ oder „Multiboot“ nennt. Windows 95 bringt generell bereits alle Voraussetzungen dazu mit – wenn es zum Beispiel auf einer Partition mit bereits vorhandenem DOS installiert werden soll, konfiguriert es automatisch ein geeignetes Bootmenü zur Auswahl des zu startenden Betriebssystems. Dieser Mechanismus funktioniert jedoch nur zusammen mit MS-DOS und PC-DOS.
Daher bietet die FreeDOS-Distribution das Programm MetaKern, das für DOS-basierte Windows-Versionen (Windows 95 bis Windows Me) ebenfalls ein Bootmenü zur Verfügung stellt.
Mit Windows-Versionen, die von Windows NT abstammen und daher NTLDR verwenden, wird FreeDOS als „unbekanntes Betriebssystem“ erkannt und kann auch gestartet werden. Im Fall von Windows NT bis einschließlich Version 4.0 jedoch nur, wenn FreeDOS auf einer FAT16-Partition installiert ist. Alternativ kann man die Datei BOOT.INI, bei ReactOS FREELDR.INI, manuell anpassen.
Mit Windows Vista wurde ein neues System mit dem Namen „Boot Configuration Data Store“ eingeführt, das nur über das Kommandozeilenprogramm BCDEDIT.EXE geändert werden kann.
FreeDOS-Distribution
Seit Version 1.0 gibt es eine offizielle FreeDOS-Distribution auf CD, die als ISO-Abbild vom Internet heruntergeladen werden kann. Mit der bootfähigen Live-CD, womit man ohne Installation FreeDOS einfach ausprobieren kann, ist auch eine Installation auf die Festplatte möglich. Enthalten sind neben den Systemdateien von FreeDOS und der grafischen Benutzeroberfläche OpenGEM auch eine Reihe von nützlichen Programmen, die im Folgenden auszugsweise gelistet sind.
- 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)
Da die Distributions-CD nicht ständig auf dem aktuellen Stand gehalten wird, kann man sich aktualisierte Versionen der einzelnen Programme auch separat herunterladen. Links dazu finden sich jeweils auf der FreeDOS-Homepage.
Siehe auch
Weitere zu MS-DOS kompatible Betriebssysteme:
- DCP – „Disk Control Program“, ein in der DDR verbreiteter MS-DOS-Clone
- DR-DOS – ursprünglich von Digital Research entwickelt (von denen auch CP/M stammt), mittlerweile von DRDOS, Inc. für eingebettete Systeme vertriebenes DOS
- MS-DOS – aus QDOS entwickeltes DOS-Betriebssystem von Microsoft, das zum Standard für den PC wurde
- PC-DOS – MS-DOS-Variante von IBM (bis Version 5.0 von Microsoft mitentwickelt)
- PTS DOS – in Russland entwickelter und dort weit verbreiteter, weitestgehend in Assembler geschriebener DOS-Clone
Weblinks
Einzelnachweise
Wikimedia Foundation.