MS-DOS
MS-DOS, kurz für Microsoft-Disk Operating System (deutsch: Disketten-Betriebssystem), ist Microsofts erstes Betriebssystem für PCs.
MS-DOS ist ursprünglich für den Intel-Prozessor 8086/8088 entwickelt worden und war in den späten 1980er Jahren das dominierende Betriebssystem für Einzelplatzrechner.
Heute wird MS-DOS, welches immer wieder erweitert wurde (u.a. durch graphische Benutzeroberflächen), und sein Konkurrent DR-DOS, das spätere Novell-DOS, sowie andere DOS-Versionen für den Betrieb von PC/GEOS, OpenGEM, sowie den GUI Entwicklungen um MatrixOS, Qube3P und SEALOS eingesetzt; MS-DOS dient weiterhin auch für Sicherheitsrelevante Anwendungen, Startmedien (Boot-Disketten) oder, im Bezug auf das Format FAT12, zum Sichern von kryptografischen Schlüsseln (z. B. Home Banking). Außerdem wird DOS, welches nach wie vor von manchen für das schnellste und stabilste Betriebssystem gehalten wird, gelegentlich im Embedded Markt eingesetzt. Auch die inzwischen veralteten und vom Markt genommenen Windows 1.0 sowie die nachfolgenden Versionen bis 3.11, und Windows 95, 98, 98SE sowie ME waren von DOS abhängig. Windows NT und die darauf basierenden Microsoft-Betriebssysteme Windows 2000, sowie die aktuell erhältlichen Windows XP und Windows Server 2003 bauen nicht mehr auf MS-DOS auf.
Entwicklungsgeschichte
MS-DOS wurde ursprünglich als QDOS (Quick and Dirty Operating System = schnell und nicht ganz sauber programmiertes Betriebssystem) von Tim Paterson bei der Firma Seattle Computer entwickelt und 1980 an Microsoft verkauft. MS-DOS setzte sich gegen das damalige Konkurrenzprodukt CP/M von Digital Research durch, da es durch IBM für die damals neuen Personal Computer (PC) als Standard-Betriebssystem zum Einsatz kam. Was jedoch, so wird berichtet, nicht an der Qualität von CP/M gelegen haben dürfte, vielmehr wollte der damalige Entwicklungschef lieber in den Surfurlaub auf Hawaii fahren, anstatt für den damals wegen als schlecht angenommener Marktchancen belächelten PC von IBM ein Betriebssystem zu entwickeln.
Die erste Version von MS-DOS ähnelte sehr stark CP/M von Digital Research, so dass Programme, die vormals unter CP/M liefen, sehr schnell auch unter MS-DOS verfügbar waren. Hauptunterschied war das besser durchdachte Dateisystem namens FAT (= File Allocation Table).
In der zweiten Version integrierte Microsoft Konzepte aus Xenix, um Probleme mit den neu aufkommenden Festplatten zu umgehen. Xenix ist ein UNIX-Abkömmling von Microsoft. Die übernommenen Konzepte ermöglichten hauptsächlich ein hierarchisches Dateisystem und ein Treiberkonzept für block-/zeichenorientierte Geräte.
Die dritte Version enthielt Erweiterungen, um über ein Netzwerk Daten von entfernten Rechnern nutzen zu können (Lan-Manager).
Bei der vierten Version wurde im Wesentlichen die Begrenzung der Festplatten-Kapazität auf mehr als 32MB pro logischem Laufwerk erweitert. Daneben wurden hier erstmals 3,5 Zoll-Diskettenlaufwerke vollständig unterstützt. Zur Arbeitserleichterung wurde die DOSSHELL als graphische Oberfläche eingeführt.
Mit der fünften Version versuchte man den knappen Hauptspeicher, der architekturbedingt auf 640kB begrenzt war, durch die Einführung von HMA (High Memory Area) und UMA (Upper Memory Area) etwas zu erweitern. Ab dieser Version wurde EMS und XMS-Speicher für Prozessoren ab dem i386 direkt unterstützt. Auch die maximale Größe von logischen Laufwerken wurde auf 2GB erhöht. Ansonsten enthielt die Version hauptsächlich Erleichterungen bei der Benutzerführung. Dazu gehörten u. a. eine erweiterte DOS-Shell, ein neuer Editor und eine Online-Hilfe.
In der sechsten Version wurden neben diversen Detailverbesserungen der bestehenden Konzepte und dem Hinzufügen verschiedener Fremdprodukte keine wesentlichen Veränderungen mehr vorgenommen. Erwähnenswert ist höchstens noch DoubleSpace (später DriveSpace) mit dem es möglich wurde, Daten ohne zusätzliche Maßnahmen komprimiert auf der Festplatte zu speichern und damit bis zu 50 Prozent Speicher zu sparen.
Tabellarischer "Lebenslauf"
Version | Ausgabedatum | Funktionen |
---|---|---|
Q-DOS 0.1 | August 1980 | erste Version für eine S100-Steckkarte mit 8086-Prozessor von Seattle Computer Products; kennt bereits FAT |
Q-DOS 0.2 | August 1980 | identisch zur Version 0.1, aber jetzt mit dem "provisorischen" Zeileneditor edlin, der eigentlich nur als Übergangslösung gedacht war |
86-DOS 0.3 | Dezember 1980 | Umbenennung in 86-DOS; erste von MS lizenzierte Version |
86-DOS 1.0 | April 1981 | diese Version war MS-DOS 1.0 schon sehr ähnlich |
86-DOS 1.14 | Juli 1981 | MS kauft für 50000 US-$ alle Rechte an 86-DOS |
DOS 1.0 | 12. August 1981 | für den ersten IBM PC; einseitige 160 KB-Disketten |
DOS 1.1 | Mai 1982 | doppelseitige Disketten mit 360 KB; kleine Fehlerbereinigung |
DOS 1.25 | 1982 | erste Version für alle IBM-kompatiblen PC; Unterverzeichnisse |
DOS 2.0 | März 1983 | Version für PC XT mit Festplatte (10 MB); in weiten Teilen neu geschrieben; Unterverzeichnisse; ladbare Gerätetreiber |
DOS 2.1 | Oktober 1983 | Version für IBM PC junior und tragbaren PC; internationale Zeichensatz-Varianten |
DOS 3.0 | August 1984 | Version für PC AT; HD-Disketten mit 1,2 MB; größere Festplatten (20 MB) |
DOS 3.1 | März 1985 | erste Netzwerkunterstützung; Speichernutzung oberhalb 640 KB |
DOS 3.2 | Dezember 1985 | Disketten mit 3½-Zoll-Laufwerken mit 720 KByte |
DOS 3.3 | April 1987 | PS/2-Unterstützung; 1,44 MB 3,5" Disketten; Batch-Dateien |
DOS 3.31 | 1988 | OEM-Version von Compaq; Festplattenpartitionen mit mehr als 32 MB |
DOS 4.0 | Juli 1988 | erste MS-DOS-Shell; EMS-Speicher-Unterstützung; Festplattenpartitionen mit mehr als 32 MB |
DOS 4.01 | November 1988 | Fehlerbereinigte Version |
DR-DOS 3.41 | Juli 1989 | erste erfolgreiche Konkurrenz zu MS-DOS; erweiterte Speichernutzung; Passwortschutz |
DR-DOS 5.0 | Juni 1990 | XMS-, EMS-, HMA-Speichermanagement (DOS-Extender); Protected Mode; Festplattenbeschleunigung; serielle Rechnerkopplung |
MS-DOS 5.0 | Juni 1991 | Verbessertes Speichermanagement (XMS-DOS-Extender); Taskswitching; Online-Hilfe; Texteditor; verbesserte MS-DOS Shell |
DR-DOS 6.0 | August 1991 | Online-Datenträgerkomprimierung |
MS-DOS 6.0 | März 1993 | Virenschutz; Rücklöschungen; Festplatten-Defragmentierung; automatisierte Speicheroptimierung; Backup; serielle Datenübertragung; Boot-Menü für unterschiedliche Systemkonfigurationen; CD-ROM-Laufwerke |
DOS 6.10 | ... | Online-Datenkomprimierung |
DOS 6.20 | ... | Verbesserte Online Datenträgerkomprimierung; automatische Korrektur von Datenträgerfehlern; |
DOS 6.21 | ... | Online Datenträgerkomprimierung wg. Urheberrechten entfernt |
DOS 6.22 | 1994 | letzte echte Version; Festplattenoptimierung; andere Online-Datenträgerkompression |
DOS 7.0 | September 1995 | DOS ist nur noch ein WINDOWS 95-Unterbau und kein selbständiges zu erwerbendes Betriebssystem mehr; lange Dateinamen |
DOS 7.10 | 1996 | ab Win95B mit neuem Dateisystem FAT32 |
DOS 8.0 | Ende 1999 | Teil von Windows ME |
Probleme von MS-DOS
Bei der Einführung neuer Intel-Prozessoren wurde von Intel immer darauf geachtet, dass die Prozessoren ihre Arbeit in einem Modus verrichten, der sich kompatibel zu einem 8088-/8086-Prozessor verhält. Dieser Modus wird Realmode genannt und ist auch noch bei aktuellen Pentium-4 Prozessoren enthalten.
Im Realmode kann maximal 1MB des Arbeitsspeichers verwendet werden. Durch die Aufteilung des Arbeitsspeichers in Speicher für das Betriebssystem und Speicher für Hardwarekomponenten sowie das BIOS, steht MS-DOS und den unter MS-DOS laufenden Applikationen ein maximaler Hauptspeicher von 640kB zur Verfügung. Diese Beschränkung des Arbeitsspeichers wurde im Laufe der Zeit immer mehr zu einer problematischen Hürde, die mittels eines aufwändigen Speichermanagements, beginnend mit der Version 5, teilweise aufgehoben wurde.
Die 1MB-Grenze im Realmode ist seit dem 80386 jedoch nur Folge eines Standardwerts, der beim Initialisieren der CPU gesetzt wird und die Länge eines Segments bestimmt (64 KB). Die Länge ist nachträglich auf bis zu 4 GB erweiterbar. Die Erweiterung selbst muss im so genannten protected Mode erfolgen. Nach Rückkehr in den Realmode steht sie auch diesem zur Verfügung (Big real mode).
Auch die Verwaltung von immer größer werdenden Festplatten führte MS-DOS immer wieder an die Grenze seiner Leistungsfähigkeit. Die maximal unterstützte Kapazität von Festplattenpartitionen musste bei jeder neuen Version des Betriebssystems erhöht werden. Problematisch war auch das für Disketten entwickelte FAT-Dateisystem (FAT12). Dieses war für Disketten mit einer anfänglichen Kapazität von 360kB entwickelt worden und war für die Verwaltung von Festplatten ungeeignet. Später wurde immer wieder die maximale Kapazität der Datenträger erhöht (FAT16) und unter Windows 95 (MS-DOS 7) lange Dateinamen unterstützt. Mit Windows 95B (MS-DOS 7.10) kam die Einführung des neuen Dateisystems FAT32 das Laufwerksgrößen bis mindestens 32GB adressieren konnte. Die strukturellen Probleme wurden allerdings bis zum Ende der MS-DOS-Ära mit MS-DOS 8.0 (Windows ME) nie ganz beseitigt. Dies führte dazu, dass MS-DOS in seiner gesamten Geschichte nie die kompletten Datenträger richtig verwenden konnte.
Häufige und wichtige Befehle
Der Kommandozeileninterpreter 'command.com' versteht folgende wichtige Befehle (interne Kommandos):
dir | Zeigt Dateien im gegenwärtigen oder einem angegebenen Verzeichnis |
cd {verzeichnis} | Wechselt in das angeführte Verzeichnis |
cd .. | Wechselt in das nächsthöhere Verzeichnis |
cd \ | Wechselt in das Stammverzeichnis des ausgewählten Laufwerks |
copy {von} [nach] | Kopiert Dateien |
move {von} [nach] | Verschiebt Dateien (erst ab DOS 6) |
del {datei} bzw. erase {datei} |
Löscht Dateien |
deltree {verzeichnis} | Löscht Verzeichniss inklusive aller enthaltenen Dateien und Unterverzeichnisse. |
md [name] | Erstellt ein Verzeichnis |
rd [name] | Löscht ein leeres Verzeichnis |
format [laufwerksbuchstabe] | Formatiert ein Laufwerk |
set [variable[=wert]] | Gibt die angegebene Umgebungsvariable (bzw. alle) aus bzw. weist ihr einen neuen Wert zu |
path [[=]wert] | Gibt den Wert von PATH aus bzw. weist ihn neu zu |
type {dateiname} | Gibt den Inhalt einer Datei aus |
exit | Schließt die Eingabeaufforderung und kehrt ins aktuell laufende Programm zurück (funkltioniert nur, wenn die Eingabeaufforderung von einem anderen Programm gestartet wurde). In Windows entspricht das dem Schließen des DOS-Fensters. |
Wird kein internes Kommando eingegeben, so durchsucht der Interpreter das aktuelle Verzeichis bzw. die in der Umgebungsvariablen PATH angegebenen Verzeichnisse nach einem Programm und führt es aus. Verhält sich dieses Programm wie ein Kommando, d. h. macht es Ausgaben auf zum Bildschirm und beendet es sich anschließend, so bezeichnet man es als externes Kommando. Zu diesen externen Kommandos gehören:
help | Zeigt die Hilfe mit weiteren Befehlen an (erst ab DOS 6) |
more [dateiname] | Gibt den Inhalt der angegebenen Datei oder der Standardeingabe seitenweise aus |
tree | Listet alle Unterverzeichnisse eines Verzeichnisses auf |
xcopy [von] [nach] | Weiterentwicklung des copy-Befehls mit mehr Optionen |
Die Funktionsweise vieler Kommandos kann mit Optionen (auch Schaltern genannt) beeinflußt werden, die mit dem Slash eingeleitet werden. Die Aufrufsyntax der einzelnen Befehle wird üblicherweise ausgegeben, wenn als Argument "/?" übergeben wird.
grafische Benutzeroberflächen
Erhältliche grafische Benutzeroberflächen für MS-DOS sind PC/GEOS, SEALOS und OpenGEM.
Siehe auch
Weblinks
- Microsoft Deutschland
- Einführung in MS-DOS
- Start mit Batch-Programmierung - Ein kostenloses (PDF-)Heft vom KnowWare-Verlag
- DOS-History