RSDP: Difference between revisions

115 bytes added ,  9 years ago
no edit summary
[unchecked revision][unchecked revision]
m (s/dword/uint32_t/g)
No edit summary
Line 10:
uint8_t Revision;
uint32_t RsdtAddress;
} __attribute__ ((packed));
}
</source>
 
Line 23:
uint8_t ExtendedChecksum;
uint8_t reserved[3];
} __attribute__ ((packed));
};
</source>
==Detecting the RSDP==
 
The RSDP is either located within the first 1 KB of the [[EBDA]] (Extended BIOS Data Area) (a 2 byte real mode segment pointer to it is located at 0x040E0x40:0x0E, which translates to the protected/long mode address 0x4000E), or in the memory region from 0x000E0000 to 0x000FFFFF (the main [[BIOS]] area below 1 MB). To find the table, the Operating System has to find the "RSD PTR " string (notice the last space character) in one of the two areas. This signature is always on a 16 byte boundary.
 
==Validating the RSDP==
Anonymous user