Hallo Herr Paul Dufresne via Freedos-devel,

am Donnerstag, 20. Februar 2025 um 11:34 schrieben Sie:

> I realize I tended to wrongly think that HIGH was in EMS or XMS regions (over 
> 1 Mb).
> But now I kind of realize that HIGH is really above 640 kb, while still lower 
> than 1 MB (default addressable part).

DOS=HIGH in config.sys instructs the kernel to load between 1MB and (1MB+64K)
DOS=UMB instructs the kernel to load some data in UMB (between 640K and 1MB).

Everywhere else 'HIGH' is actually 'UMB'.

I admit that the wording is misleading, but has been in use for the last 40 
years, and unlikely to change.

> So High is a 1024 kb - 640 kb (Low) = 384 kb area.
Thats UMB, actually.

> And the basic idea is conventional area is for the main running application, 
> while High is mostly resident programs.
if you exchange High with UMB, correct.

> And XMS_Swap, is a feature that, when DOS is loaded in conventional memory 
> (Low), when calling a program, it
> can remove almost all of itself from memory (except for about 3k), and after 
> the program returns, the 3k part
> copy DOS back to conventional memory (Low) by using a copy of DOS in XMS 
> memory (over 1M area).

XMS_SWAP is not a DOS feature, but a COMMAND.COM feature. And it works where 
ever it is loaded.

> So when loaded High, DOS "waste" about 100k? (even more I think) from the 384 
> kb area.... while loaded Low it "waste" only 3kb (if XMS_SWAP works).
Nope. You could have tested this before stating this as 'fact'.

> Not all High is available... there is a few regions for video memory, and 
> others things (frankly I cannot really say what)... is used for other things
> than residents DOS programs and drivers.

> Also I begin to see more why loading logger (High) was more likely to result 
> in the Out of memory when loading DOS high.
right. You accidentally triggered a COMMAND.COm bug (failure to force 
allocation of enough heap), which is directly
coupled to the available UMB space.
 
> The basic idea, is that we choose in fdconfig.sys if we load DOS high or low, 
> before knowing how much of HIGH we need,
> because it is mostly decided in FDAUTO.BAT.
wrong.
in config.sys is decided to load the kernel high (DOS=HIGH) and load command in 
UMB (SHELLHIGH= )

in autoexec.bat TSR'S may be loaded in UMB with LH somestuff

> But from what I said, the 3K cost of reduction to loading DOS programs in 
> Low, seems a small price to me, compare to
> the about 100k (or more?) of DOS loaded High.
wrong facts, nonsense conclusion.

> I prefer giving more space to residents programs.

> So my proposition is to load DOS low, if XMS_SWAP is available.

My suggestion is to learn your "101 DOS memory allocation" and "202 DOS 
advanced memory juggling" before
coming up with propositions.
  
Thanks for your time.


Tom



_______________________________________________
Freedos-devel mailing list
Freedos-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-devel

Reply via email to