Struct multiboot2::BasicMemoryInfoTag
source · #[repr(C)]pub struct BasicMemoryInfoTag { /* private fields */ }
Expand description
Basic memory info tag.
This tag includes “basic memory information”. This means (legacy) lower and upper memory: In Real Mode (modeled after the 8086), only the first 1MB of memory is accessible. Typically, the region between 640KB and 1MB is not freely usable, because it is used for memory-mapped IO, for instance. The term “lower memory” refers to those first 640KB of memory that are freely usable for an application in Real Mode. “Upper memory” then refers to the next freely usable chunk of memory, starting at 1MB up to about 10MB, in practice. This is the memory an application running on a 286 (which had a 24-bit address bus) could use, historically.
Nowadays, much bigger chunks of continuous memory are available at higher addresses, but the Multiboot standard still references those two terms.
Implementations§
source§impl BasicMemoryInfoTag
impl BasicMemoryInfoTag
pub fn new(memory_lower: u32, memory_upper: u32) -> Self
pub fn memory_lower(&self) -> u32
pub fn memory_upper(&self) -> u32
Trait Implementations§
source§impl Clone for BasicMemoryInfoTag
impl Clone for BasicMemoryInfoTag
source§fn clone(&self) -> BasicMemoryInfoTag
fn clone(&self) -> BasicMemoryInfoTag
1.0.0§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for BasicMemoryInfoTag
impl Debug for BasicMemoryInfoTag
source§impl Hash for BasicMemoryInfoTag
impl Hash for BasicMemoryInfoTag
source§impl Ord for BasicMemoryInfoTag
impl Ord for BasicMemoryInfoTag
source§impl PartialEq for BasicMemoryInfoTag
impl PartialEq for BasicMemoryInfoTag
source§fn eq(&self, other: &BasicMemoryInfoTag) -> bool
fn eq(&self, other: &BasicMemoryInfoTag) -> bool
self
and other
values to be equal, and is used
by ==
.source§impl PartialOrd for BasicMemoryInfoTag
impl PartialOrd for BasicMemoryInfoTag
source§impl TagTrait for BasicMemoryInfoTag
impl TagTrait for BasicMemoryInfoTag
source§fn dst_size(_base_tag: &Tag)
fn dst_size(_base_tag: &Tag)
source§fn as_base_tag(&self) -> &Tag
fn as_base_tag(&self) -> &Tag
source§fn size(&self) -> usize
fn size(&self) -> usize
size
field of
the tag.source§fn as_bytes(&self) -> &[u8]
fn as_bytes(&self) -> &[u8]
size
field of the tag.source§unsafe fn from_base_tag(tag: &Tag) -> &Self
unsafe fn from_base_tag(tag: &Tag) -> &Self
Self::dst_size
implementation. Read more