Meminfo.c32

From Syslinux Wiki

Jump to: navigation, search


Meminfo.c32 displays the output of the various memory size/range functions.

Contents

[edit] Example

Here's an example from within bochs with 64 MiB of RAM.

boot: meminfo.c32
INT 15h = f000:f859  DOS RAM: 639K (0x9fc00)  INT 12h: 639K (0x9fc00)
INT 15 88: 0xfc00 (64512K)  INT 15 E801: 0x3c00 (15360K) 0x0300 (49152K)
       0 0000000000000000 000000000009f000 000000000009f000 1 [-] usable
       1 000000000009f000 0000000000001000 00000000000a0000 2 [-] reserved
       2 00000000000e8000 0000000000018000 0000000000100000 2 [-] reserved
       3 0000000000100000 0000000003ef0000 0000000003ff0000 1 [-] usable
       4 0000000003ff0000 0000000000010000 0000000004000000 3 [-] ACPI reclaim
       5 00000000fffc0000 0000000000040000 0000000100000000 2 [-] reserved

[edit] Meaning

[edit] INT 15h e820

Results from INT 15h AX=e820h. This is, for the most part, the most important of all of the memory functions as it provides a map of available memory. This is the last lines of output (in this instance, 6) starting with

       0 0000000000000000 000000000009f000 000000000009f000 1 [-] usable

Line numbers are printed in hex as 8 characters wide with a space prefix. Each line represents the purpose/availability, address and length/size of a block of memory.

The first 64 bit hex quantity is the start address. The second is the length/size. The third is the end address (exclusive of the mentioned byte; calculated as start plus length). The next number is decimal for the type of memory. The next column is bracketed and either a single hyphen or a hex number representing the extended attributes. The last column is the string representation of the type.

[edit] INT 15h

This lists the segment and offset of the INT 15h handler, as read from the interrupt vector table.

[edit] DOS RAM

It appears that this reads a value directly from memory.

[edit] INT 12h

The results from calling INT 12h. This lists the available low memory (under 640k)

[edit] INT 15h 88

Results from INT 15h, AH=88h. This returns the size of extended memory (total RAM in KiB as a 16 bit quantity).

[edit] INT 15h e801

Results from INT 15h AX=e801h. Extended memory size with a larger limit (superseding AH=88h). The first is the return (in CX) and size of memory between 1 MiB and 16 MiB. The second is the return (in DX) and size of memory above 16 MiB in 64 KiB pages.

[edit] Comments

[edit] References

Personal tools