StuBS
multiboot_info Struct Reference

Multiboot Information Structure according to Specification. More...

Collaboration diagram for multiboot_info:

Classes

struct  Array
 Helper Structure. More...
 

Public Types

enum  Flag : uint32_t {
  Memory = 1 << 0 , BootDev = 1 << 1 , CmdLine = 1 << 2 , Modules = 1 << 3 ,
  SymbolTable = 1 << 4 , SectionHeader = 1 << 5 , MemoryMap = 1 << 6 , DriveInfo = 1 << 7 ,
  ConfigTable = 1 << 8 , BootLoaderName = 1 << 9 , ApmTable = 1 << 10 , VbeInfo = 1 << 11 ,
  FramebufferInfo = 1 << 12
}
 

Public Member Functions

bool has (enum Flag flag) const
 Check if setting is available. More...
 

Public Attributes

struct {
   uint32_t   lower
 Amount of memory below 1 MiB in kilobytes.
 
   uint32_t   upper
 Amount of memory above 1 MiB in kilobytes.
 
mem
 Available memory retrieved from BIOS.
 
uint32_t boot_device
 "root" partition
 
uint32_t cmdline
 Kernel command line.
 
Array mods
 List of boot modules.
 
struct Array mmap
 Memory Map.
 
struct Array drives
 Drive Information.
 
uint32_t config_table
 ROM configuration table.
 
uint32_t boot_loader_name
 Boot Loader Name.
 
uint32_t apm_table
 APM table.
 
struct Multiboot::VBE vbe
 VBE Information.
 
struct Multiboot::Framebuffer framebuffer
 Framebuffer information.
 
uint32_t addr
 Start of the header table.
 
struct {
aout_symbol_table
 Symbol table for kernel in a.out format.
 
uint32_t num
 Number of entries.
 
uint32_t size
 Size per entry.
 
uint32_t shndx
 String table index.
 
struct {
   uint32_t   num
 Number of entries.
 
   uint32_t   size
 Size per entry.
 
   uint32_t   addr
 Start of the header table.
 
   uint32_t   shndx
 String table index.
 
elf_section_header_table
 Section header table for kernel in ELF.
 

Detailed Description

Multiboot Information Structure according to Specification.

See also
[Multiboot Specification]{Multiboot Specification (version 0.6.96)}

Member Enumeration Documentation

◆ Flag

enum multiboot_info::Flag : uint32_t
Enumerator
Memory 

is there basic lower/upper memory information?

BootDev 

is there a boot device set?

CmdLine 

is the command-line defined?

Modules 

are there modules to do something with?

SymbolTable 

is there an a.out symbol table loaded?

SectionHeader 

is there an ELF section header table?

MemoryMap 

is there a full memory map?

DriveInfo 

Is there drive info?

ConfigTable 

Is there a config table?

BootLoaderName 

Is there a boot loader name?

ApmTable 

Is there a APM table?

VbeInfo 

Vesa bios extension.

FramebufferInfo 

Framebuffer.

Member Function Documentation

◆ has()

bool multiboot_info::has ( enum Flag  flag) const
inline

Check if setting is available.

Parameters
flagFlag to check
Returns
true if available

The documentation for this struct was generated from the following file: