Upper Memory Block

Upper Memory Block

UMB (Upper Memory Block, englisch für „oberer Speicherblock“) ist ein Begriff aus der Speicherverwaltung von DOS und bezeichnet die frei nutzbaren Bereiche im UMA (Upper Memory Area, englisch für „oberer Speicherbereich“) oberhalb des konventionellen Arbeitsspeichers von 640-KB (=655360 Byte) und unterhalb der 1-MB-Grenze (= 1048576 Byte).

Details

Der Adressraum oberhalb der Speicheradresse 0xA0000 (entspricht 640 KB) ist unter DOS für Zusatzhardware (Grafikkarten, SCSI-Controller und ähnliches) und für das BIOS reserviert. Bei den ersten IBM PCs, die gerade einmal 16 oder 64 KB RAM-Speicher mitbrachten, bedeutete dies keine nennenswerte Einschränkung. Später wurden die Programme jedoch immer speicherhungriger, viele verlangten, dass ein sehr großer Teil des konventionellen Speichers (unterhalb von 0xA0000) für sie selbst verfügbar war. Dies stellte dann ein Problem dar, wenn auch noch diverse Treiber und TSR-Programme in den konventionellen Speicher geladen werden sollten - der verbleibende Speicher war dann letztlich für viele Programme zu klein. Zugleich wurde der Adressraum oberhalb von 0xA0000 aber nur in den seltensten Fällen von Zusatzhardware und dem BIOS komplett belegt; meist blieben hier zwischen 128 und 256 KB ungenutzt, und zwar nicht direkt nach dem Ende des konventionellen Speichers bei 0xA0000 (hier sitzt die Grafikkarte) sondern in der Mitte des reservierten Bereiches, maximal von 0xC8000 bis 0xF8000.

Konventionelle DOS-Programme können diesen speziellen Adressraum zwar adressieren und problemlos nutzen, allerdings befindet sich hier eben kein RAM-Speicher, da der Bereich ja für Zusatzhardware freigehalten wird. Möchte man Programme, Treiber oder TSR-Programme nicht in den konventionellen Speicher laden, sondern dafür UMBs nutzen, benötigt man einen Treiber, der mit Hilfe von speziellen Registern des Chipsatzes bei 80286-basierten PCs oder mit Hilfe der ab dem i386 vorhandenen MMU gewöhnlichen RAM-Speicher von höheren Adressen (jenseits der 1-MB-Grenze) in diesen Adressraum "verlegt". Solche Treiber sind beispielsweise EMM386.EXE oder UMBPCI.SYS. Diese sorgen dann dafür, dass RAM in den UMBs sichtbar wird. Der konventionelle Speicher muss unter DOS immer ein einziger zusammenhängender Adressraum sein, daher sind die UMBs nicht direkt als Teil des konventionellen Speichers verwendbar. Damit nun trotzdem Treiber und TSR-Programme in dieses RAM geladen werden können, muss auch das Betriebssystem mitspielen; es stellt die neuen Befehle DEVICEHIGH (für Treiber) und LOADHIGH (kurz LH, für TSR-Programme) zur Verfügung, die ihr Ziel jeweils in UMBs laden. Außerdem wurden neue Systemaufrufe (via Interrupt 21h) eingeführt, mit denen ein Programm Speicher aus dem UMA belegen konnte. Auf diese Weise kann die Menge an frei bleibendem konventionellen Speicher erhöht werden, so dass für gewöhnliche Anwendungsprogramme und Spiele mehr Speicher übrigbleibt.

Von Digital Research wurde die UMB-Nutzung im Mai 1990 mit DR-DOS 5.0 eingeführt, Microsoft zog im Juni 1991 mit MS-DOS 5.0 nach.

Begriffsverwirrung

In den deutschsprachigen MS-DOS-Versionen, die die High Memory Area (HMA) unterstützten, wurde diese als "Oberer Speicherbereich" bezeichnet. Als die Unterstützung für UMBs hinzukam, verwendete man dann für diese den Namen "Hoher Speicherbereich". Die Benennung war also im Deutschen gerade umgekehrt gehandhabt wie im Englischen, was zusammen mit der insgesamt schweren Verständlichkeit der MS-DOS-Speicherverwaltung zu viel Verwirrung bei den Anwendern führte. Erst unter Windows 95 wurden die deutschen Begriffe vertauscht, so dass sie nun den Englischen direkter entsprachen.


Wikimedia Foundation.

Игры ⚽ Нужна курсовая?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Upper Memory Block — Upper Memory Area (UMA, неформально верхняя память)  это 384 килобайт памяти, расположенных между адресами А0000h (640 Кб) и до FFFFFh (1024 Кбайт, 1 Мбайт). Является особенностью архитектуры IBM PC совместимого компьютера. Содержание 1… …   Википедия

  • Upper Memory Block —   [Abk. UMB, dt. »Block im oberen Speicher«] der, Upper Memory Area …   Universal-Lexikon

  • upper memory block —    Abbreviated UMB. The memory between 640KB and 1MB in a personal computer running MS DOS. This area was originally reserved for system and video use; however, not all the space is used. The unused portions are the UMBs. With an Intel 80386 (or… …   Dictionary of networking

  • Upper Memory Area — Иное название этого понятия  «UMA»; см. также другие значения. Upper Memory Area (UMA), Upper Memory Blocks (UMB), неформально верхняя память  384 килобайта памяти, расположенные после основной памяти по адресам от А000016 (640 Кб) до… …   Википедия

  • Upper Memory Area — UMB (Upper Memory Block, englisch für „oberer Speicherblock“) ist ein Begriff aus der Speicherverwaltung von DOS und bezeichnet die frei nutzbaren Bereiche im UMA (Upper Memory Area, englisch für „oberer Speicherbereich“) oberhalb des… …   Deutsch Wikipedia

  • Memory management unit — This 68451 MMU could be used with the Motorola 68010 A memory management unit (MMU), sometimes called paged memory management unit (PMMU), is a computer hardware component responsible for handling accesses to memory requested by the CPU. Its… …   Wikipedia

  • Expanded Memory System — Die Expanded Memory Specification (kurz: EMS genannt), ist eine Software Schnittstelle zum Zugriff auf so genanntes expanded memory (oft unglücklich zu Expansionsspeicher eingedeutscht) auf einem x86 kompatiblen PC im Real Mode. Heutzutage hat… …   Deutsch Wikipedia

  • High Memory Area — High Memory Area, HMA  начальный участок дополнительной памяти объёмом 65520 байт (64 килобайта минус 16 байт) с адресами от 10000016 до 10FFEF16 (сразу после Upper Memory Area), доступный в реальном режиме через верхние сегменты адресного… …   Википедия

  • Expanded memory — In computing, expanded memory (commonly known as EMS memory) is a system of bank switching introduced around 1984 that provided additional memory to MS DOS programs that required more than what was available in conventional memory. Expanded… …   Wikipedia

  • Expanded Memory Specification — Die Expanded Memory Specification (kurz: EMS genannt), ist eine Software Schnittstelle zum Zugriff auf so genanntes expanded memory (oft unglücklich zu „Expansionsspeicher“ eingedeutscht) auf einem x86 kompatiblen PC im Real Mode. Sie war für PC… …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”