Memory management during POST in "legacy" BIOS is not well known to most system programmers. Probably, only a handful knows that this kind of routine even exists. Perhaps, you would ask why would anyone need a memory manager in BIOS level? Well, as you know, memory space in 16-bit environment is scarce. Moreover, BIOS modules are getting bigger and if all of them loaded at the same time to the 1 MB space available in 16-bit mode, we will run out of space very easily. The solution is obviously a memory manager. But, how would you go about creating a memory manager while everyone are developing propietary BIOS codes? As in other branch of software development. You create a standard interface for the memory manager, leaving out the details to implement the standard to the BIOS vendors. This is exactly what happens.
The standard for memory management during POST in BIOS code execution is the Post Memory Manager (PMM) specification. The document for this specification is rather hard to come by. PMM is a relatively short specification.
An in-depth coverage of the subject is currently in preparation for an upcoming article at the Pinczakko Official Website.
Post a Comment