Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

Bootstrapping
[Intel IA32 (32-bit) Architecture]

Collaboration diagram for Bootstrapping:


Detailed Description

Zygoma uses a 'multiboot' bootstrapping strategy on the Intel architecture.


Classes

struct  Zygoma::ia32::MultibootHeader
 Header found in the OS image describing the OSs' needs to the bootloader. More...
struct  Zygoma::ia32::LoadModuleDescriptor
 Multiboot Load Module descriptor. More...
struct  Zygoma::ia32::MemoryMapDescriptor
 Multiboot System Memory Map descriptor. More...
struct  Zygoma::ia32::DiskDriveMapDescriptor
 Multiboot Disk Drive Map desriptor. More...
struct  Zygoma::ia32::MultibootInfo
 Structure passed to the OS by the multiboot loader on startup. More...

Variables

static const u32 kMULTIBOOT_HEADER_FLAGS
 The multiboot header flags required to load the Zygoma kernel.
MultibootHeader gMultibootHeader (".multiboot")
 This is the instance of the multiboot header the kernel supplies to the multiboot loader.


Variable Documentation

MultibootHeader gMultibootHeader(".multiboot")
 

Initial value:

{
  MultibootHeader::kMAGIC,
  kMULTIBOOT_HEADER_FLAGS,
  -(MultibootHeader::kMAGIC + kMULTIBOOT_HEADER_FLAGS),
  0
}
This is the instance of the multiboot header the kernel supplies to the multiboot loader.

It gets instantiated in its own link section which the linker should explicitly put at or near the begiing of the kernel image, because the multiboot header must be initialized and supplied as early as possible in the first 8192 bytes of the OS image, and must be aligned on a 4-byte bounday.

const u32 kMULTIBOOT_HEADER_FLAGS [static]
 

Initial value:

 MultibootHeader::kFLAGS_ALIGN_ON_4K
                                         | MultibootHeader::kFLAGS_INCLUDE_MEM_FIELDS
The multiboot header flags required to load the Zygoma kernel.

Since on an ia32 architecture the Zygoma kernel uses the ELF executable object format, only a minimum of fields are supplied in the multiboot header.


Generated on Fri Sep 2 10:45:03 2005 for zygoma by doxygen 1.4.2