Upper Memory Area

Die Upper Memory Area (UMA) ist ein Speichertyp von MS-DOS und dazu kompatiblem DOS, die im ursprünglichen Design des IBM Personal Computer mit 384 KB (= 393.216 Bytes) von IBM definiert wurde. Dabei wurde der maximal mögliche Speicherbereich des IBM PC, der mit dem 16-Bit-Prozessor Intel 8088 maximal 1 MiB adressieren kann, in zwei Bereiche unterteilt: den konventionellen Speicher bis 640 KB (= 655.360 Bytes) als Arbeitsspeicher für Betriebssystem und Programme und den Rest, der sich bis zur 1-MB-Grenze (= 1.048.576 Bytes) ausgeht, als reservierten Speicher für diverse ROMs und den Grafikspeicher. Weil die UMA in den meisten Fällen nicht vollständig genutzt wird, können bei 80286-PCs mit speziellem Chipsatz und ab dem i386 generell freie Bereiche daraus in zusammenhängenden Böcken, den UMBs (englisch Upper Memory Blocks“), für das Betriebssystem und Programme genutzt werden. Der deutsche Begriff „oberer Speicherblock“ für UMB findet sich jedoch selbst in der Speicherverwaltung von DOS kaum, wie auch „oberer Speicherbereich“ für die UMA, weil diese oft mit dem „hohen Speicherbereich“ (High Memory Area, HMA) verwechselt wurden.

Die Nutzung UMBs in DOS wurde von Digital Research im Mai 1990 mit DR DOS 5.0 eingeführt, Microsoft zog im Juni 1991 mit MS-DOS 5.0 nach.

  1. Van Wolverton: MS-DOS Version 5 – Das optimale Benutzerhandbuch von Microsoft. 5. Auflage. Friedrich Vieweg & Sohn Verlagsgesellschaft mbH, Braunschweig, Wiesbaden 1991, ISBN 978-3-528-44378-8, 17: Individuelles Anpassen Ihres Systems, S. 503, Konventioneller Speicher (englisch: Running MSDOS – The Definitive Guide to MS-DOS and PC-DOS, Now Completely Revised to Include Version 4 and the New Dos Shell. Redmond, Washington 1991. Übersetzt von Translingua Übersetzungsdienst GmbH, Bonn): „Alle Computerprogramme können konventionellen Speicher nutzen, doch sind IBM und kompatible Computer unter MS-DOS auf maximal 1 MB (1024 KB) dieses Speichertyps beschränkt. Selbst wenn Ihr Computer 1 MB konventionellen Speicher besitzt, steht dieser nicht vollständig für Anwendungsprogramme, Daten oder sogar DOS zur Verfügung. In Wirklichkeit verwendet DOS normalerweise nur die ersten 640 KB für Anwendungen und Daten. Die restlichen 384 KB des konventionellen Speichers werden als reservierter Speicher oder hoher Speicherbereich (Upper Memory Area) bezeichnet. Er wird für spezielle Zwecke, wie z. B. Hardwaresteuerung und Bildschirmspeicher, verwendet. Dieser reservierte Speicherbereich wird von Software zur Speicherverwaltung in Einheiten, Upper Memory Blocks (UMB) genannt, verwendet.“