Top-Fragen
Zeitleiste
Chat
Kontext
DOS-Extender
Aus Wikipedia, der freien Enzyklopädie
Remove ads
Als DOS-Extender bezeichnet man Programme für MS-DOS bzw. dazu kompatibles DOS (wie PC DOS oder DR-DOS), die nicht im Real Mode sondern im Protected Mode laufen. Dieser steht bei der x86-Architektur ab dem Intel 80286 (16-Bit-Protected-Mode) und 80386 (zusätzlich 32-Bit-Protected-Mode) neben dem bisherigen Real Mode zur Verfügung und erlaubt linearen Speicherzugriff auf den erweiterten Speicher, der unter DOS ursprünglich nicht zur Verfügung stand.[1]
Der bekannteste Standard, der sich für DOS-Extender Anfang der 1990er Jahre etabliert hatte, ist DPMI.
Remove ads
Geschichte
Zusammenfassung
Kontext
In 86-DOS, das ab 1981 als PC DOS mit dem IBM PC, Modell 5150, der die PC-Plattform begründet, und mit MS-DOS vermarktet wurde, steht nur 1 MiB Arbeitsspeicher zur Verfügung. Dieses Limit ist auf den im IBM PC verwendeten 8088-Prozessor zurückzuführen, einer 16-Bit-Architektur mit 8-Bit-Adressbus. Dieser Speicher wurde auf 640 KiB für Betriebssystem und Programme und 384 KiB für den Zugriff auf Geräte wie das BIOS oder den Grafikspeicher aufgeteilt. Dadurch steht unter DOS nur 640 KiB „Konventioneller Speicher“ zur Verfügung.[2]
Mit dem IBM PC/AT verwendete IBM Ende 1984 erstmals einen 80286-Prozessor, bei dem Intel mit dem Protected Mode einen zusätzlichen Betriebsmodus hinzugefügt hatte. Da DOS jedoch für den 8086/8088 geschrieben worden war, lief es auch auf dem PC/AT im retronym mit Real Mode bezeichneten Modus des 8086 und machte vom neuen Betriebsmodus keinen Gebrauch. Im Protected Mode ist der Speicher linear adressierbar, beim 80286 16 MiB. Bereits im darauffolgende Jahr, 1985, stellte Intel mit dem 80386 den ersten 32-Bit-x86-Prozessor vor, dessen Protected Mode im 32-Bit-Modus bis zu 4 GiB Arbeitsspeicher linear adressieren kann.
Da dieser „Erweiterte Speicher“ für Anwendungsprogramme unter DOS brach lag, wurden Ende der 1980er Jahre die ersten „MS-DOS-Extender“ angeboten, die einzelnen DOS-Programmen den Protected Mode exklusiv zugänglich machten.[3]
Remove ads
Technik
Um unter DOS ein Program verwenden zu können, das im Protected Mode läuft, müsste dieses entweder alle Funktionen, die eigentlich vom Betriebssystem zur Verfügung gestellt werden (sollten), selbst implementieren, oder zu diesem Zwecke die DOS-Funktionen nutzen. Da DOS ein 16-Bit-Betriebssystem, das im Real Mode läuft, ist, muss ein Programm ebenfalls im Real Mode laufen, um die DOS-Funktionen ansprechen zu können. Diese Aufgabe übernimmt der DOS-Extender zur Laufzeit des Programms: der Extender stellt die Mechanismen bereit, kontrolliert in den Protected Mode zu wechseln, wo das DOS-Programm von der Beschränkung auf den konventionelle Speicher befreit Programmcode und Daten verarbeiten kann, und bei DOS-Funktionsaufrufen ebenso kontrolliert wieder in den Real Mode zurückwechselt.[4]
Dadurch sind Programme möglich, die mehr Speicher nutzen können, als DOS eigentlich bereitstellen kann, ohne gleichzeitig ein von sich aus größeres Betriebssystem zu benötigen.[5]
Viele Compiler für DOS bieten die Option, Protected-Mode-Programme zu erzeugen. Damit die Programme unter DOS ausführbar sind, muss ein DOS-Extender mitgeliefert werden.[6]
Remove ads
Bekannte DOS-Extender
Einer der bekanntesten DOS-Extender ist die grafische Betriebssystemerweiterung von Microsoft, Windows, ab Version 3.0, und OS/2, ab Version 2.0. Das darin enthaltene DPMI wurde zum Industriestandard für DOS-Extender in den 1990er Jahren.
Vor allem Ende der 1980er entstanden unterschiedliche, zueinander nicht kompatible DOS-Extender. Ein erster erfolgreicher Versuch einer Standardisierung ist das Virtual Control Program Interface, kurz VCPI, das von Phar Lap und Quarterdeck ab 1987 entwickelt wurde. VCPI setzt jedoch einen i386 voraus und ist mit dem 80286 nicht kompatibel, und ebenso wenig mit (kooperativen) Multitasking-Erweiterungen wie DESQview und Windows 3.x[7] Wenn ein Programm exklusiv unter DOS läuft, ist ein solcher Standard nicht von Bedeutung.
Beispiele für DOS-Extender vor VCPI und DPMI:
Einzelnachweise
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads