Re: Memory management FAQ
"Arkady V.Belousov" <[email protected]>
| Newsgroups | gmane.os.freedos.devel |
|---|---|
| Message-ID | <[email protected]> |
X-Comment-To: Eric Auer Hi! 25-Окт-2002 18:51 [email protected] (Eric Auer) wrote to [email protected]: EA> (unprotected mode, so to say), kind of a virtual 8086 CPU, but with the EA> 32bit stuff still available. However, in the "DOS task", 32bit addressing EA> is NOT available, and this is why our "extended friends" need to use the EA> VCPI backdoor to get into full protected mode. Without emm386 running, This is wrong. 32-bit addressing _is_ available in v86 mode, also as in real mode of 80386+ with help of instruction prefixes. Request to use protected mode cause by other needs: in protected mode application work in virtual, flat memory, which may also be swapped to disk to extend physical RAM. EA> VCPI - virtual control programming interface "Programs", not "programming", AFAIR. EA> UMB - upper memory blocks (640k ... 1 MB area) "Block" (singular). :) EA> HMA - high memory area (1 MB ... 1 MB + 64k area) EA> CMOS - hm... "C" metal on semiconductor :-) "Complementary Metal-Oxide Semiconductor". This is name of technology, which also was used as name for chip with small amount of nonvolatile memory (to be precise: there was used simple accumulator). This memory was appeared before when flash memory was developed, but this name up to now used for nonvolatile memory, which used to store hardware timer value and BIOS settings. EA> MB - megabyte (1024*1024 byte, or 1000*1000 byte, depends ;-)) To be precise: traditionally size of memory computed by power 2 base, so: Kb=2^10=1024, Mb=2^20=1024*1024, etc. But hard disk vendors, to "increase" size of their disks usually use decimal multipliers (1000, 1000*1000, etc). This makes a big confusion, because so called "540 Mb" disks really have 516 Mb (516*1024*1024=541,065,216 bytes). Moreover, when we (humans) count size of free memory, we also often use decimal multipliers. For example, when someone says "621 Kb of free memory" this usually mean ~607 Kb (=621000/1024/1024).