Back to home page

DOS ain't dead

Forum index page

Log in | Register

Back to the forum
Board view  Mix view

giving back a block of HMA (Announce)

posted by Ninho E-mail, 10.06.2010, 16:03

> There would be few risks unloading UIDE, as it "hooks" only the Int 13h
> vector and can easily "give back" its XMS and upper memory. The problem
> is that most users load it in the HMA, and I am not sure if HMA space can
> be "given back".

Not in MSDOS 5/6, but yes in MSDOS 7+ it is easy enough to free a block of HMA (that you "own"!) and give it back to DOS - each allocated block is preceded by a control block (similar to an MCB, let's call them HMCBs). There is no API for giving the block back,[°edit : or maybe there is one, I don't recall and can't check now but it doesn't matter as...] we can achieve that by direct HMCB editing... However that will leave a hole in the HMA which probably won't be reused anyway, there is no way to move system blocks around and defragment the HMA ;)

As for FreeDOS and others, I have no idea how they manage allocation from the HMA. Oh, I seem to remember DRDOS 6 had a working scheme, much in advance of MS-DOS (of course...)

---
Ninho

 

Complete thread:

Back to the forum
Board view  Mix view
22781 Postings in 2123 Threads, 402 registered users (0 online)
DOS ain't dead | Admin contact
RSS Feed
powered by my little forum