DOS memory management (CONFIG.SYS/AUTOEXEC) Which directive enables the use of Upper Memory Blocks (UMBs) so that device drivers and TSRs can be loaded high?

Difficulty: Medium

Correct Answer: DOS=UMB

Explanation:


Introduction / Context:
In MS-DOS memory management, conserving conventional memory (the first 640 KB) is crucial. Loading device drivers and TSRs into Upper Memory Blocks (UMBs) frees conventional memory for applications, improving compatibility and performance of legacy software.



Given Data / Assumptions:

  • CONFIG.SYS and AUTOEXEC.BAT are used with HIMEM.SYS and EMM386.EXE (or equivalent) to manage memory.
  • Question asks which setting allows UMB usage so items can be loaded high.


Concept / Approach:

Two things are needed: 1) enable UMBs, and 2) actually load modules into them. The directive DOS=UMB tells DOS to use Upper Memory Blocks. Once UMBs exist, you can use devicehigh=... in CONFIG.SYS and loadhigh (LH) ... in AUTOEXEC.BAT to place drivers and TSRs into UMBs. The enabling step is DOS=UMB.



Step-by-Step Solution:

Ensure HIMEM.SYS and EMM386.EXE (with the RAM switch) are loaded to create UMBs.Add the directive: DOS=HIGH,UMB to move DOS to HMA and allow UMB usage. The key part for UMB availability is “UMB”.Then use devicehigh= and loadhigh to place specific drivers/TSRs into UMBs.


Verification / Alternative check:

Microsoft DOS manuals show DOS=UMB as the switch that permits DOS to manage UMBs, while DOS=HIGH moves DOS into the High Memory Area (HMA).



Why Other Options Are Wrong:

DOS=High only moves DOS to HMA, not enabling UMBs by itself. devicehigh= and loadhigh= are commands used after UMBs are enabled; they are not the enabling directive. “None of the above” is incorrect because DOS=UMB is correct.



Common Pitfalls:

Using devicehigh/loadhigh without first enabling UMBs; forgetting EMM386 RAM switch; expecting DOS=HIGH alone to create UMBs.



Final Answer:

DOS=UMB.

Discussion & Comments

No comments yet. Be the first to comment!
Join Discussion