www.wikidata.de-de.nina.az
Als Konventioneller Speicher werden die ersten 640 KiB 1 KiB 1024 Byte Arbeitsspeicher eines IBM PC kompatiblen Rechners bezeichnet Inhaltsverzeichnis 1 Die 640 KiB Grenze 2 Speicheroptimierung 3 DOS Protected Mode Interface 4 Situation bei 32 64 Bit Betriebssystemen 5 Siehe auchDie 640 KiB Grenze BearbeitenAnfang der 1980er Jahre wurde beim Entwurf der Architektur des IBM PCs ein Adressraum von 640 KiB fur Arbeitsspeicher vorgesehen da dies als ausreichend fur den typischen Benutzer empfunden wurde es war das Zehnfache des Adressraums der meisten anderen damals am Markt befindlichen Kleincomputer und das erste PC Modell der IBM 5150 wurde anfanglich mit maximal 64 KiB 65536 Byte tatsachlich installiertem Arbeitsspeicher ausgeliefert Zudem erlaubte der eingesetzte Prozessor Intel 8088 nur einen maximalen Adressraum von 1024 KiB die oberen 384 KiB wurden fur ROM und Memory Mapped I O reserviert so dass 640 KiB Adressraum fur den RAM Arbeitsspeicher ubrig blieben Niemand rechnete damals damit dass die IBM PC Architektur so lange Bestand haben wurde bis diese Grenze ausgeschopft werden wurde waren doch die meisten anderen damaligen Rechnerarchitekturen nach wenigen Jahren wieder vom Markt verschwunden Die PC Architektur uberdauerte jedoch und im Laufe der Zeit stellte sich diese Grenze immer mehr als Hindernis dar da sie bestehen blieb als die PCs mehr RAM besassen Mit dem Intel 80286 Prozessor des IBM AT von 1984 konnte im Protected Mode ein Adressraum von 16 MiB 1 MiB 1024 KiB angesprochen werden die PC Architektur musste jedoch die ursprungliche Speicheraufteilung aus Kompatibilitatsgrunden beibehalten Somit war der RAM Speicher an den Adressen A0000hex bis FFFFFhex nicht ohne Weiteres nutzbar lag also bei fruhen Chipsatzen fur 80286 ungenutzt brach Einige PC Chipsatze wie bspw der NEAT Chipsatz unterstutzten dafur ein so genanntes Remapping das diesen Speicher an hohere Adressen einblendete Wie der ganze Speicherbereich oberhalb der 1 MiB Grenze war ein derart umgelagerter Speicher im Real Mode nicht nutzbar mit Ausnahme der ersten 65520 Bytes der so genannten High Memory Area Ein Wechsel aus dem Real Mode in den Protected Mode veranderte das Verhalten der CPU aber so stark dass keine Kompatibilitat mehr gegeben war das damals populare Betriebssystem MS DOS sowie seine Nachahmer und die darunter ausgefuhrten Anwendungen mussten deshalb weiterhin im Real Mode laufen DOS bot jedoch spezielle Funktionen um diesen Speicher zumindest als Datenspeicher anzusprechen siehe XMS dafur wurde der Prozessor vom Betriebssystem zeitweise in den Protected Mode geschaltet und dann ein Datenblock aus dem konventionellen Speicher in den Bereich uber 1 MiB kopiert oder umgekehrt danach folgte eine Ruckschaltung in den Real Mode Real Mode Programmcode konnte im XMS Speicher somit zwischengelagert jedoch nicht direkt dort ausgefuhrt werden Eine andere Variante war den Speicher in maximal 64 KiB grossen Blocken per Expanded Memory Specification EMS wieder in den UMB Bereich einzublenden so dass Real Mode Programme darauf wieder zugreifen konnten Ab dem 386er Prozessor existierte ein dritter Betriebsmodus der Virtual 8086 Mode der es gestattete uber die virtuelle Speicherverwaltung des Protected Mode die von der PC Architektur vorgegebene Aufteilung des physischen Adressraums zu uberwinden und den gesamten 1 MiB Adressraum der von DOS aus sichtbar war auf physisch vorhandenes RAM abzubilden wobei aber im Gegensatz zum normalen Protected Mode die Kompatibilitat zum Real Mode gewahrt blieb Somit konnten diejenigen Teile des Bereichs zwischen der 640 KiB Grenze und der 1 MiB Grenze die nicht fur die Adressierung von Hardware benotigt wurden fur Programm und Datenspeicher genutzt werden In MS DOS gab es hierfur wieder eigene Speicherverwaltungsfunktionen siehe Upper Memory Block Da normale DOS Programme hiervon jedoch nur selten Gebrauch machten wurde dieser Bereich vorwiegend vom DOS Kernel selbst und von ladbaren Geratetreibern genutzt Diese belegten somit nicht mehr den knappen und somit kostbaren Speicherbereich unterhalb der 640 KiB Grenze so dass dort mehr fur die Anwendungsprogramme frei blieb Speicheroptimierung BearbeitenDie fur Systemzwecke reservierten oberen 384 KiB des Adressraums der 8086er CPU erwiesen sich anders als die 640 KiB fur Anwenderprogramme als uberdimensioniert sie wurden kaum jemals komplett ausgenutzt meist blieben davon zwischen 128 und 256 KiB frei In dieser Ausgangslage entwickelte sich die Idee den unbenutzten Teil der 384 KiB zum Beispiel fur Geratetreiber zu verwenden was ab 1990 mit der Veroffentlichung von MS DOS 5 0 moglich wurde Indem Geratetreiber oder TSR Programme in diesen sogenannten Upper Memory Block geladen werden oder wenn unnotig ganz aus dem Speicher entfernt steht durch diese Treiber Programme benotigter Speicherplatz wieder als konventioneller Speicher zur Verfugung d h von den 640 KiB bleibt mehr Speicher fur Anwendungsprogramme ubrig Zur Vereinfachung konnen Batchdateien oder Bootdisketten erstellt werden die die benotigten Treiber und Einstellungen beinhalten Die benotigten Angaben dazu befanden sich in den Spiele Dokumentationen In spaten Versionen von MS DOS wurde ein Tool namens MemMaker RamBoost in PC DOS mitgeliefert das diese Optimierung teilweise automatisieren konnte DOS Protected Mode Interface BearbeitenMit Hilfe von so genannten DOS Extendern kann die 640 KiB Speichergrenze umgangen werden Eines der ersten Computerspiele das diese Technik verwendet hat war Doom von id Software Situation bei 32 64 Bit Betriebssystemen BearbeitenWindows 9x bootet nur wenn genugend konventioneller Speicher frei ist danach spielt der konventionelle Speicher ausser wenn DOS Anwendungen gestartet werden keine Rolle mehr Bei modernen 32 64 Bit Betriebssystemen wie beispielsweise Microsoft Windows NT basierenden Betriebssystemen hat die 640 KiB Speichergrenze fur Anwendungen keine Bedeutung mehr da der Speicherzugriff grundsatzlich im Protected Mode erfolgt Zwar findet sich auf der untersten Ebene der physischen Adressen bis heute ein Loch im Speicherbereich zwischen 640 KiB und 1024 KiB diese Tatsache muss aber nur noch Bootloader und Betriebssystem Programmierern bewusst sein da sie fur Anwendungsprogramme unsichtbar ist Allerdings konnen diese 384 KiB Arbeitsspeicher nicht genutzt werden was aber bei modernen Rechnern vernachlassigbar ist Siehe auch BearbeitenReal Mode High Memory Area Extended Memory Specification EMS Expanded Memory Specification XMS 4 GB Grenze Abgerufen von https de wikipedia org w index php title Konventioneller Speicher amp oldid 218525230