II.1 MS-DOS
MS-DOS (MICROSOFT Disk Operating System) ist mit über 100 Millionen Installationen das mit Abstand am weitesten verbreitete Betriebssystem. Es ist für einen einzigen Arbeitsplatz konzipiert und unterliegt starken Restriktionen, die aus der ersten Rechnerarchitektur (INTEL 8086) resultieren, für die es entwickelt worden ist. Wir werfen zuerst einen Blick auf die Entstehungsgeschichte von MS-DOS, geben anschließend einen Überblick über die aktuellen Versionen, wobei wir insbesondere auf die Speicherverwaltung eingehen und stellen dann eine Auswahl der wichtigsten Kommandos zusammen. Zum Schluß gehen wir kurz auf das Betriebssystem OS/2 ein, das wesentliche Beschränkungen von MS-DOS aufhebt, aber mangels verfügbarer Anwendersoftware noch nicht die Nachfolgerschaft antreten konnte.
Historisches
Angefangen hat die Geschichte dieses am weitesten verbreitetsten Betriebssystems in den Jahren 1979/1980, als die Firma SEATTLE COMPUTER PRODUCTS nach einem Betriebssystem für ihren 8086-Rechner suchte. Da sich kein geeignetes auf dem Markt fand, implementierte man CP/M auf dem 8086-Prozessor. Man merzte dabei viele Schwächen aus, an denen CP/M krankte. Das entstandene QDOS (Quick and Dirty Operating System) setzte sich am Markt nicht durch. Alle Firmen warteten auf ein neues Betriebssystem von DIGITAL RESEARCH, die mit CP/M das Standardbetriebssystem der vorhergehenden Rechnergeneration (8-Bit-Mikroprozessoren) erstellt hatten.
Kurz vorher wurde bei der Firma MICROSOFT ein BASIC-Interpreter zusammen mit einem Primitiv-Betriebssystem für den 8086-Prozessor entwickelt. Der Vertrieb führte zu einem ähnlichen Mißerfolg, wie ihn QDOS hatte. Alles wartete nach wie vor auf CP/M-86, dem 16-Bit-Nachfolger von CP/M.
QDOS wurde während dieser Zeit weiterentwickelt und Anfang 1981 erschien eine neue Version. Nun entschloß sich MICROSOFT, diese unter dem Namen 86-DOS zu vertreiben. Doch bis Mitte 1981 interessierte sich gerade ein einziger Kunde für das Produkt. Trotzdem kaufte MICROSOFT im Juli 1981 alle Rechte an QDOS. Wie man heute weiß, ein genialer Schachzug. Kurze Zeit später kündigte IBM ihren Personalcomputer mit PC-DOS als Betriebssystem an. Für DIGITAL RESEARCH war der Zug abgefahren. Die Firma hatte immer noch kein CP/M-86 herausgebracht. Damit war der Standard für die 16-Bit-Mikroprozessoren geboren: MS-DOS (MICROSOFT Disk Operating System), oder, wie es in der IBM-Welt heißt, PC-DOS. Getragen vom Marktführer in der DV-Welt wurde MICROSOFT hiermit ein grandioser wirtschaftlicher Erfolg beschert. Inzwischen ist die Firma ein Milliardenunternehmen.
Die erste Version des Betriebssystems MS-DOS hatte noch eine starke Ähnlichkeit mit CP/M. Speziell auf der Ebene der Betriebssystemaufrufe ist darauf geachtet worden, daß viele Programme der 8-Bit-CP/M-Welt mit Hilfe eines Migrationspaketes schnell verfügbar gemacht werden konnten.
Bei der nächsten Version (2.x) und mit der Nachfrage der Kunden nach einem Betriebssystem, das auch größere Speichermedien sinnvoll verwaltet, wurde MS-DOS um eine hierarchische Dateiverwaltung (mit Ähnlichkeiten zu UNIX) und installierbaren Gerätetreibern erweitert. Die hierfür notwendigen Modifikationen wurden weitestgehend separat von den existierenden Systemdiensten implementiert, um die Kompatibilität zu der Vorgängerversion zu wahren. Daher existieren für viele Aufgaben zwei Möglichkeiten der Realisierung, eine, die CP/M nahe steht und eine, die UNIX entspricht.
Die Version 3.x wurde hauptsächlich entwickelt, um den IBM-AT und zu ihm kompatible Rechner zu unterstützen, sowie den inzwischen verfügbaren größeren Magetplatten und der fortschreitenden Vernetzung Rechnung zu tragen.
MS-DOS krankt an der Kompatibilitätsforderung. Ursprünglich für den INTEL 8080/8086 entwickelt, unterliegt MS-DOS allen Beschränkungen des REAL MODUS. Der Adreßraum umfaßt nur 1 MB, wobei der Bereich zwischen 640 KB und 1 MB für Systemaufgaben reserviert ist. Das System ist darüberhinaus nur singletasking-fähig.
Aktuelle Versionen
Wir führen im Überblick die Versionen des Betriebssystems MS-DOS auf und beschreiben die Erweiterungen und Verbesserungen, um zu zeigen, wo Engpässe mit welchen systemtechnischen Verfahren behoben worden sind.
MS-DOS 4.x belegt ca. 80 - 110 KB RAM vom eigentlichen Anwenderbereich bis 640 KB und bietet gegenüber der weit verbreiteten Version 3.3, die ca. 8O KB belegt, eine einfache fensterorientierte und menüunterstützte grafische Benutzeroberfläche, unterstützt den Speichererweiterungsstandard EMS (expanded memory support) sowie Festplatten mit einer Kapazität von mehr als 32 MB und bietet ein besseres Filecaching. EMS ermöglicht die Nutzung von Hauptspeicher oberhalb von 1 MB dadurch, daß im Systembereich zwischen 640 KB und 1 MB ein Rahmen (Page Frame) von 64 KB freigehalten wird. Die benötigte Seite aus dem Erweiterungsspeicher (dies ist der Speicher oberhalb 1 MB) wird dort eingeblendet. EMS ist von den Firmen LOTUS, INTEL, MICROSOFT (LIM) standardisiert worden.
Der Bereich zwischen 640 KB und 1 MB wird von der untersten Betriebssystemschicht BIOS (basic input output system) belegt sowie für Controller- und Grafikfunktionen benötigt. Das BIOS ist in einem EPROM gespeichert.
Systembereich zwischen 640 KB und 1 MB
|
Mittels des Treibers EMM386 (Bestandteil von MS-DOS 5.x) können freie Bereiche im diesem Systembereich auch von Anwenderprogrammen genutzt werden.
MS-DOS 5.x geht sehr viel sparsamer mit dem Hauptspeicher um, da Teile des Betriebssystems in den Bereich oberhalb 1 MB (HMA: high memory area; die ersten 64 KB oberhalb 1 MB) verlagert worden sind. Für Anwendungen bleiben bis zu 700 KB. Diese Version bietet eine manuelle Programmumschaltung (taskswitching). Da dies kein verdrängendes Multitasking ist, spricht man von unechtem Multitasking. Es wird im PROTECTED MODUS der INTEL-Prozessoren realisiert. Erwähnenswert ist noch ein nützlicher neuer Befehl UNDELETE, der es ermöglicht, versehentlich gelöschte Dateien wiederherzustellen.
MS-DOS 6.x bietet Virenschutzfunktionen und die Möglichkeit, durch Komprimiermechanismen den verfügbaren Plattenplatz zu verdoppeln.
Wir haben gesehen, daß die Umgehung der Hauptspeicherbeschränkung unter MS-DOS zu verschiedenen Techniken führte (die reale Hauptspeicherverwaltung von MS-DOS-Systemen ist wegen der vielfältigen Ergänzungen eine der kompliziertesten). Die nachfolgende Tabelle versucht nochmals einen Überblick zu geben.
Techniken zur Umgehung der Speicherbeschränkung von MS-DOS
Speicher oberhalb 1 MB in linear adressierbarer Form, Zugriff im PROTECTED MODUS
Extended Memory, der in Segmente von 64 KB unterteilt wird und in einen Rahmen zwischen 640 KB und 1 MB als Datenspeicher eingeblendet werden kann (EMS-Standard)
Speicher zwischen 640 KB und 1 MB, der für Anwender-Programmcode genutzt werden kann (EMM386-Treiber)
Der erste 64 KB-Block oberhalb 1 MB, der noch Anwender-Programmcode aufnehmen kann; dies ist möglich, weil noch genau ein 64 KB-Segment vom Betriebssystem adressiert werden kann |
Es gibt weitere Verfahren, um den Speicher oberhalb von 1 MB (Extended Memory) zu verwenden:
Für die Nutzung des Extended Memory ist ein Treiber (HIMEM.SYS) notwendig.
Die beiden Nutzungsmöglichkeiten sind in MS-DOS 5.x vorhanden.
MS-DOS ist wegen der extremen Beschränkungen (Adreßraum, Singletasking) vielfach abgeschrieben worden. Es sollte von OS/2, auf das wir weiter unten noch kurz eingehen werden, und jetzt von einem Nachfolger der grafischen Benutzeroberfläche MS-Windows) abgelöst werden. Tatsache ist, daß dieses antiquierte Betriebssystem nach wie vor die Basis eines breiten und sehr weit verbreiteten Anwendersoftwarespektrums ist. Letztendlich interessiert sich der weitaus überwiegende Teil der Benutzer nicht für Betriebssysteme, sondern ist primär bestrebt seine Anforderungen abzudecken. Hat man sein Unternehmen auf ein bestimmtes Produkt (z.B. ein elektronisches Textverarbeitungssystem) eingestellt, so ist ein Wechsel nur mit großem Aufwand möglich. Der Nachfolger von MS-DOS muß deshalb in erster Linie das bestehende Softwarespektrum mit mindestens vergleichbarer Effizienz betreiben können. Dies ist letztendlich wieder eine Kompatibilitätsforderung.
MS-DOS ist allerdings inzwischen ohne MS-Windows kaum noch denkbar. Hier scheinen zwei Produkte erfolgreich zusammenzuwachsen. Sie werden die führende Rolle bei den Einzelplatzsystemen auf absehbare Zeit behalten. OS/2 von IBM und Windows NT von MICROSOFT sind noch keine Konkurrenzprodukte hierzu, sondern dienen dazu, Dienste für mehrere Benutzer (Serverfunktionen) bereitzustellen.
Windows95 ist das Nachfolgeprodukt von MS-DOS und MS-Windows.
Überblick
MS-DOS ist der Industriestandard für Einzelplatzsysteme. Es ist ein Singleuser-, Singletasking-Betriebssystem, besitzt ein hierarchisches Dateisystem, die Möglichkeit der Ein/Ausgabe-Umlenkung und die Möglichkeit, einige ausgewählte Kommandos über Pipelines zu verknüpfen. Der Adreßraum ist auf 1 MB beschränkt.
Zusammenfassung
Minimale Anforderungen:
Einführung
Ein Betriebssystem ist eine Reihe ähnlicher Programme, die die Verwaltung und Verarbeitung per Computer steuern. Die Microsoft Disk Operating System, MS-DOS, ist ein traditionelles Mikrocomputer Betriebssystem besteht aus fünf Hauptkomponenten.
Das Betriebssystem des Laders
Die Betriebssysteme Lader bringt das Betriebssystem aus der Start in das RAM. Der vollständige Ladevorgang, genannt " Bootstrapping" entstanden, weil jede Stufe, um den nächsten Teil der Anlage zieht. Die ROM-Loader, das ist das erste Programm der Mikro-Computer führt, wenn es eingeschaltet wird, liest das Laufwerk Bootstrap Loader von der ersten (Booten) Sektor der Startdiskette und führt ihn aus. Die Diskette Bootstrap loader wiederum liest die wichtigsten Teile von MS-DOS-MSDOS.SYS und IO.SYS von herkömmlichen Festplatten in den Speicher.
Die MS-DOS-BIOS
Die MS-DOS-BIOS geladen von der Datei io.sys während der Initialisierung ist die Schicht des Betriebssystems, die zwischen dem Betriebssystemkern und der Hardware sitzt. Eine Anwendung führt Ein- und Ausgabe durch die Anforderungen an den Kernel des Betriebssystems, die wiederum ruft die MS-DOS-BIOS-Routinen, Zugang, direkt auf die Hardware zu.
USER INTERFACE (SHELL)
Die Benutzeroberfläche für ein Betriebssystem, genannt auch eine Shell oder Befehl Prozessor ist in der Regel eine herkömmliche Programm, das dem Benutzer ermöglicht, die mit dem Betriebssystem selbst zu interagieren. Die Standard-MS-DOS-Benutzeroberfläche ist eine austauschbare shell Programm namens COMMAND.COM.
Eine der grundlegenden Aufgaben einer Shell ist ein Programm in den Speicher auf Anfrage zu laden und die Steuerung des Systems an das Programm zu übergeben, so dass das Programm ausführen können. Wenn das Programm beendet wird, kehrt der Shell, das fordert den Benutzer zur Eingabe eines anderen Befehls. Zusätzlich, Shell umfasst in der Regel die Funktionen für Datei- und Verzeichnis-Pflege und Anzeige. In der Theorie, die meisten dieser Funktionen könnte als Programme zur Verfügung gestellt werden, sondern dass sie ihren Wohnsitz in die shell erlaubt Ihnen schneller zugegriffen werden. Der Kompromiss ist Speicherplatz und Geschwindigkeit und Flexibilität. Frühe Mikrocomputer basierte Betriebssysteme stellen eine minimale Anzahl der ansässigen Shell Befehle aufgrund der begrenzten Speicherplatz zur Verfügung; moderne Betriebssysteme wie MS-DOS fassen eine Vielzahl dieser Funktionen als interne Befehle zusammen.
SUPPORT PROGRAMME
Die MS-DOS-Software unterstützt Programme, die den Zugriff auf das Betriebssystem Einrichtungen nicht im Lieferumfang enthalten wie die dort ansässigen Shell Befehle in bieten integrierte COMMAND.COM. Da diese Programme als ausführbare Dateien auf der Festplatte gespeichert, aber sie sind im Wesentlichen dieselben wie Anwendungsprogramme und MS-DOS lädt und ausführt, wie es jedem anderen Programm würde.
Der MS-DOS-KERNEL
Die MS-DOS-Kernel ist das Herz eines MS-DOS. Es ist in einer eigenen Datei MSDOS.SYS, von der Microsoft Corporation ausgeliefert werden. Der Kernel stellt IT-Supportfunktionen wie Systemfunktionen, um Anwendungsprogramme in einer Hardware-unabhängige Art und Weise zu bedienen und ist von den Hardware Eigenschaften unabhängig , indem sie sich auf die Treiber Routinen in der MS-DOS-BIOS-Schicht als physische Ein- und Ausgang Operationen isoliertSystem-Programme haben Zugriff auf Systemfunktionen über Software Interrupt (INT) und sind an sonsten normale Anweisungen. MS-DOS behält sich Interrupts 20H bis 3FH für solche Zweck vor. Die MS-DOS-Interrupts sind
Interrupt name
20 Hex Beenden Programm
21H MS-DOS-Funktionsaufrufe
22 Hex beenden Routine Adresse
23 h Control-C Handler Adresse
24 Hex Critical Error Handler Adresse
25 Hex Absolute Festplatte lesen
26 Hex Absolute Datenträger schreiben
27 Hex Speicherresidenten
28 H - 2 EH Reserviert
2FH Multiplex
30H - 3FH Reserviert
Die Leistungen, die Anwendung, die von den MS-DOS-Kernel gehören
Der Schwerpunkt in diesem Bericht ist auf der oben genannten Themen, die wir im nächsten Abschnitt besprechen:
Das Dateisystem
Block Geräte sind auf Sektorbasis abgerufen. Die MS-DOS-Kernel, durch den Gerätetreiber, sieht einen Block Device als logische fester Größe Array von Sektoren und nimmt an, dass das Array enthält eine gültige MS-DOS-Dateisystem. Der Gerätetreiber, die wiederum übersetzt die logischen Sektor Anfragen von MS-DOS in den physischen Standorten auf dem Block Device.
Das Dateisystem ist eine der größten Teile des Betriebssystems. Das Dateisystem auf dem Speichermedium eines Block Device (in der Regel auf eine Diskette oder eine Festplatte) durch Zuordnung einer Verzeichnisstruktur und Dateien auf die physikalische Einheit des Storage. Ein Dateisystem auf einer Festplatte enthält mindestens eine Zuweisung Informationen, ein Verzeichnis, und Platz für Dateien.
Die Informationen können verschiedene Formen annehmen, je nach Betriebssystem, sondern alle Formen im Grunde verfolgen Sie den Speicherplatz, der von Dateien verwendet und der Raum für neue Daten verfügbar. Das Verzeichnis enthält eine Liste der Dateien, die auf dem Gerät gespeichert, deren Größen und Informationen darüber, wo die Daten für jede Datei befindet. MS-DOS verwendet eine bestimmte Zuordnung Methode namens "File Allocation Table" (FAT) und eine hierarchische Verzeichnisstruktur.
Layout der MS-DOS-Dateisystem
Block Geräte sind auf Sektorbasis abgerufen. Die MS-DOS-Kernel, durch den Gerätetreiber, sieht einen Block Device als logische fester Größe Palette von Sektoren und geht davon aus, dass das Array enthält eine gültige MS-DOS-Dateisystem. Der Treiber übersetzt die logische Zugriffe von der MS-DOS in den physischen Standorten auf dem Block Device.
|
Die MS-DOS-Dateisystem
Der Bootsektor
Der Bootsektor ist immer am Anfang einer Partition. Es enthält die OEM-Identifikation, ein Lader Routine und ein BIOS Parameter block (BPB) mit Informationen über das Gerät, und eine optionale Bereich der reservierten Sektoren folgt.
|
00 H
03 INT
0 BH
0 DH
0 EH
10 Hex
11 Hex BPB
13 Hex
15 Hex
16 Hex
18 Hex
1 AH
1 CH
1 EH
Beschreibung des Bootsektor von einer MS-DOS-Diskette
.
Die BPB Informationen in Byte 0 BH bis 17 Hex enthaltenen deutet darauf hin, dass es 512 Bytes pro Sektor, 2 Sektoren pro Cluster, 1 reservierten Bereich (für den Boot Sektor), 2 Fette, 112 root Verzeichnis Einträge, 1440 die Sektoren auf der Festplatte und 3 Sektoren pro Fett.
Zusätzliche Informationen nach der BPB zeigt an, dass Es gibt 9 Sektoren pro Spur, 2 Schreib-/Leseköpfe und 0 versteckt.
Die File AllocationTable
Die File Allocation Table bietet eine Belegungsmappe für die Speicherorte der Dateien auf einem Datenträger, der angibt, welche Cluster zu jeder Datei zugeordnet sind und in welcher Reihenfolge. Sie versuchen eine MS-DOS-Datei zu suchen, hierzu finden Sie in einem Verzeichniseintrag der Datei seinen Anfang im FAT-Eintrag eine Nummer. Diese FAT-Eintrag enthält wiederum als ihren Eintrag die ,Nummer des nächsten Cluste,r wenn die Datei größer ist als ein Cluster oder eine nicht existierende Cluster Nummer, wenn es nur einen Cluster mit der Datei verbunden ist.
Zusätzliche Kopien der FAT werden verwendet als Sicherung für den Fall der Beschädigung der ersten zur Verfügung stehenden FAT. Die FATs werden nacheinander nach dem Bootsektor, mit einigen möglichen eingreifenden reservierten Bereich angeordnet.
MS-DOS unterstützt zwei Arten von FATS: Bei der einen Verwendet man 12-Bit links; bei die andere, die mit Version 3.0 eingeführt feste grosse Größe von Festplatten mit mehr als 4087 Clustern wird die 16-Bit links verwendet. Die ersten beiden Einträge der FAT sind immer reserviert und sind mit einer Kopie der Media descriptor Bytes gefüllt. Die restlichen FAT-Einträge haben eine Eins-zu-eins Beziehung zu den Clustern in den Daten der Datei. Für jeden Cluster Status wird durch den entsprechenden Wert der FAT angezeigt. Wenn die FAT-Eintrag einen Wert ungleich Null haben, wird der entsprechende Cluster zugewiesen. Einen freien Cluster wird durch das Scannen der FAT von Beginn dsr ersten null Wert zu finden sein.
FAT-Eintrag:
0 1 2 3 4 5 6
FFDH FFFH 003H 005 H FF7H 000 H 000 H Weiter….
(4093) (4095) (3) (5) (4087) (0) (0)
Nicht verwendete; Cluster
Nicht verwendete; nicht verfügbar
Festplatte ist doppelseitig, doppelte Dichte
Space Allocation in der FAT für einen typischen MS-DOS-Diskette
Freie FAT Einträge er mit halten einen Link mit dem Wert null; ein link mit dem Wert 1 wird nie verwendet. Auf diese Weise wird die erste belegbare Link Nummer, mit dem ersten verfügbaren Cluster in dem Datenbereich der Datei Bereich verknüpft, der 2, Cluster steht nun in dem Cluter, der dem Eintrag der 1. Clusternummer entspricht. sie ist die Zahl, die der ersten physikalischen Cluster in der Datendatei Bereich zugeordnet ist.
Stammverzeichnis
Die Dateieinträge sind 32 Byte lang und sowohl im root-Verzeichnis als auch in den Unterverzeichnissen zu finden. Jeder Eintrag enthält ein Dateiname und eine Dateierweiterung, Größe der Datei, den FAT-Eintrag, wo die Datei auf der Festplatte beginnt, die Uhrzeit und das Datum, an dem die Datei erstellt oder zuletzt geändert worden ist, und die Attribute der Datei. Das root-Verzeichnis kann optional eine besondere Art des Eintrags genannt das Volume Label haben, durch ein Attribut Typ von 08 Hex, die verwendet wird, um die Scheiben mit Namen zu identifizieren identifiziert. Ein root Verzeichnis kann nur ein Volume Label enthalten. Das Stammverzeichnis enthält Einträge, die Unterverzeichnisse zeigen; ein Attribut Typ von 10 H und eine Größe von Null finden Sie solche Einträge.
Zwei weitere besondere Arten von Verzeichnis Einträge sind nur in Unterverzeichnissenzu finden. Diese Einträge enthalten den Dateinamen . Und .. Und entsprechen dem aktuellen Verzeichnis und das übergeordnete Verzeichnis des aktuellen Verzeichnisses. Diese speziellen Einträge, manchmal auch als "Verzeichnis Aliase bezeichnet, können verwendet werden, um sich schnell durch die Ordnerstruktur zu bewegen.
Die Dateibereiche
Die Datei enthäten Unterverzeichnisse, Dateien, und nicht zugewiesenen Cluster. Die Regionen sind in fixe Größe von Clustern eingeteilt und die Verwendung für einen bestimmten Cluster wird durch die entsprechenden FAT-Eintäge angegeben und aufgeteilt.
Speicherverwaltung
Wegen der Menge an Speicher variiert ein Programm von Programm zu Programm, das traditionelle Betriebssystem bietet normalerweise Memory- Management Funktionen an. Die Speicheranforderungen können auch während der Ausführung eines Programms variieren, und die Speicherverwaltung ist insbesondere dann erforderlich, wenn zwei oder mehr Programme im Arbeitsspeicher gleichzeitig vorhanden sind.
MS-DOS-Speicher Management basiert auf einen Pool von variabler Größe Speicherblöcke. Die zwei grundlegenden Speicher-Aktionen sind ein Baustein aus einem Pool zuweisen und einen zugewiesenen Block an den Pool zurück. MS-DOS stellt Programm Raum aus dem Pool, wenn das Programm geladen ist; Programme selbst zusätzliche Speicher aus dem Pool zugewiesen werden können. Viele Programme führen eigene Speicherverwaltung mit einem lokalen Speicher Pool, oder Heap - eine zusätzliche Speicherblock aus dem Betriebssystem, das die Anwendung Programm selbst teilt sich in die Bausteine für die Nutzung durch die verschiedenen Routinen zugeordnet.
Personal Computer, die MS-DOS-kompatiblen kann mit drei Arten von RAMs ausgestattet werden: konventionelle Speicher, erweiterten Arbeitsspeicher, und erweitertem Speicher.
Konventioneller Speicher
Konventioneller Speicher ist die Bezeichnung für die bis zu 1 MB Speicher, der direkt von einem Intel 8086/8088 Mikroprozessor Ausführen im Modus Real adressierbaren verwendet. Physikalische Adressen für Referenzen zu konventionellen Speicher werden durch einen 16-bit-Segment zu registrieren, die als Basis registrieren Handlungen und hält einen Absatz Adresse, kombiniert mit einem 16-bit Offset in einem Index Register enthaltenen oder in die Anweisung ausgeführt wird. Auf IBM-PCs und Kompatible, MS-DOS und den Programmen, die unter ihrer Kontrolle führen Sie die unteren 640KB oder weniger des konventionellen Speicher Platz belegen. Die unteren 640KB des Speichers, der von MS-DOS ist in drei Zonen unterteilt.
Der interrupt Vector table belegt den niedrigsten 1024 Bytes Speicher (Standorte 00000 - 003 FFH); seine Adresse und Länge sind in den Prozessor fest verdrahtet und können nicht geändert werden. Jede Doppelwort Position in der Tabelle ist Interrupt-vektor aufgerufen und enthält das Segment und Offset eines Interrupt Handler Routine für die zugehörige Hardware oder Software Interrupt number.
Das Betriebssystem beginnt Bereich beginnt unmittelbar über dem Interrupt-vektortabelle und hält das Betriebssystem korrekten, seine Tabellen und Puffer, zusätzliche installierbare Gerätetreiber und den residenten Teil der Befehlsinterpreter. Die Menge an Speicher, die vom Betriebssystem genutzten Fläche hängt mit der Version des MS-DOS verwendet, die Anzahl der Puffer und der Anzahl des zu installierenden Treiber.
Die transiente Bereich Programm (TPA) ist der Rest der RAM-Speicher oberhalb des Betriebssystems, auf die 640KB-Grenze oder die Größe des RAM. Der Übergangsbereich ist in einer Struktur organisiert, die Memory Arena, die in Portionen namens Arena Einträge (oder Speicherblöcke) unterteilt ist. Jeder Eintrag wird durch ein control Struktur namens Arena Eintrag Header, der enthält Informationen über die Größe und der Zustand der Arena Eintrag voraus.
MS-DOS inspiziert die Arena Eintrag Header, wenn eine Funktion, die eine Memory Block, Änderung, Verteilung oder Freigabe erteilt ist; wenn ein Programm geladen und ausgeführt wird mit der EXEC-Funktion (Interrupt 21h Funktion 4 BH); oder wenn ein Programm beendet wird. Wenn eine der Arena Eintrag Header scheinen beschädigt werden, MS-DOS liefert einen Fehler an den aufrufenden Prozess. Wenn der Prozess COMMAND.COM dann ist es angezeigt, Fehler bei der Speicherzuweisung und hält das System an.
MS-DOS-Unterstützung für herkömmliche Memory Management
Die MS-DOS-Kernel unterstützt drei Memory Management Funktionen, mit Interrupt 21h, die auf die TPA betreiben aufgerufen:
Diese drei Funktionen können durch die Anwendung von Programmen genannt werden, indem der Befehl Prozessor, und die von der MS-DOS selbst dynamisch frei, Zuordnen und Arena Einträge ändern. Wenn die MS-DOS-Kernel erhält eine Speicherzuordnung Anfrage, es prüft die Kette der Arena Eintrag Header einen kostenlosen Arena Eintrag, dass die Anforderung erfüllen kann zu finden. Der Memory Manager kann keine von drei Allocation Strategien verwenden:
Wenn die Arena Eintrag ausgewählt ist größer als die Größe, die erforderlich, um die Anforderung zu erfüllen, die arena Eintrag wird geteilt und das Programm ist genau die Größe, die er benötigt. Eine neue Arena Eintrag Kopfzeile wird dann für die verbleibende Teil der ursprünglichen Arena Eintrag erstellt; es ist mit der Aufschrift "Herrenloses" und kann dazu benutzt werden, um spätere Aufteilung fordert, zu befriedigen.
MS-DOS verwendet den ersten-fit-Ansatz, der als Ansatz. Aber MS-DOS Version 3.0 und höher können Sie eine andere Strategie für die Speicherverwaltung mit Interrupt 21h Funktion 58 UHR (Get/Zuweisung Strategie).
Erweiterter Speicher
Die ursprüngliche Expanded Memory Specification (EMS) wurde entwickelt, um eine einheitliche bedeutet für Anwendungen auf 8086/8088 Personal Computern oder 80286/80386-basierte Computer im Modus Real, die 1 MB- Grenze zu umgehen, die auf den konventionellen Speicher zur Verfügung zu stellen, damit solche Programme mit sehr schnell größere Mengen von Random Access Memory. Die EMS ist eine funktionale Definition einer Bank - die geschaltete Speicher Subsystem; es besteht aus vom Benutzer installiert werden Bretter, die in der IBM-PCs Erweiterungsbus und residenten Treiber Programm schließen Sie das Expanded Memory Manager aufgerufen. So viel wie 8 MB erweiterten Speicher können in einer einzigen Maschine installiert werden. Expanded Memory ist die Software in 16-KB-Seiten, die der EMMS in einem 64 KB Bereich abgebildet werden zur Verfügung gestellt Die Seite Rahmen irgendwo oberhalb des konventionellen Speicherbereichs von MS-DOS (0 - 640 KB). Eine Anwendung kann somit Zugriff auf vier 16 KB Speicher Seiten gleichzeitig erweitert.
Die Expanded Memory Manager
Die Expanded Memory Manager bietet eine hardware-unabhängige Schnittstelle zwischen Anwendungsprogrammen und der Erweiterte Speicherplatine (s). Das EMM ist vom Hersteller in Form eines installierbaren Charakter-Gerät geliefert und ist in MS-DOS von einem Gerät Richtlinie verknüpft.
Intern das EMM ist in zwei unterschiedliche Komponenten, die als Fahrer und Manager bezeichnet werden können. Der Fahrer Teil ahmt die einige der Aktionen, die von einem Echten installierbare Gerätetreiber, in die Initialisierung und Ausgang Status sub Funktionen und eine gültige device driver Header.
Der zweite, und die wichtigsten Element der EMM ist die eigentliche Schnittstelle zwischen Anwendungssoftware und der erweiterten Speicher Hardware. Mehrere Klassen von Diensten
Erweiterter Speicher
Der Erweiterungsspeicher ist, dass die Speicherung der Adressen oberhalb von 1 MB, die von 80286 und 80386 im geschützten Modus zugegriffen werden kann. Im Gegensatz zu den erweiterten Speicher extended Memory ist linear adressierbar. Die Adresse jeder Speicherzelle ist so festen Keine besonderen Manager Programm erforderlich ist.
Der geschützte Modus Betriebssysteme wie XENIX und MS OS/2, erweiterter Arbeitsspeicher für die Ausführung von Programmen verwenden. MS-DOS auf der anderen Seite läuft im Real Mode auf einer 80286 oder 80386, und Programme, die unter ihrer Kontrolle nicht normalerweise Ausführen von Extended Memory oder sogar, dass Speicher für die Speicherung von Daten.
Zu einigen Zugang zu erweiterten Speicher für real-mode-Programme bieten, IBM PC/AT-kompatiblen Maschinen enthalten zwei Routinen in Ihren ROM-BIOS, mit denen die Menge des erweiterten Speichers, der Gegenwart bestimmt werden (Interrupt 15H-Funktion 88H) und die Übertragung von Daten zwischen konventionellen Speicher und erweiterten Speicher (Interrupt 15H-Funktion 87H). Diese Routinen können durch elektronische Datenträger (RAM-Disks) und durch andere Programme, erweiterter Speicher für schnelle Speicherung und Abruf von Informationen, die sonst zu einem langsameren physische Festplatten geschrieben werden, verwenden möchten, verwendet werden.
Gerät Input und Output
MS-DOS kennt zwei Arten von Geräten: Block, die in der Regel auf Diskette oder Festplatte Laufwerke; und für zeichenorientierte Geräte, wie Tastatur, Bildschirm, Drucker und Ports.
MS-DOS identifiziert jeden Block Device durch ein Laufwerksbuchstabe zugewiesen, wenn die Geräte Controlling Software, der Treiber ist geladen. Ein character Gerät auf der anderen Seite, ist ein logischer Name (ähnlich wie ein Dateiname und viele der gleichen Einschränkungen)
Verlag: BookRix GmbH & Co. KG
Tag der Veröffentlichung: 25.11.2018
ISBN: 978-3-7438-8746-6
Alle Rechte vorbehalten
Widmung:
Diese Buch widme ich meinen 5 Großnichten Karla, Ellen, Martha,,Anne und Jule