Phoenix
Object-oriented orthogonally persistent operating system
Classes | Namespaces | Enumerations | Functions | Variables
boot.h File Reference

Kernel boot loading definitions. More...

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  boot::BootParam
 The kernel gets a pointer to this structure as its entry point argument. More...
struct  boot::BootstrapParam
 This structure is passed to the higher level kernel entry point. More...

Namespaces

namespace  boot
 

This namespace contains definitions related to the system boot loading.


Enumerations

enum  { boot::BOOT_STACK_SIZE = 0x8000 }

Functions

static vm::Vaddr boot::BootToMapped (vm::Vaddr va)
 Convert bootstrap identity mapped address to kernel virtual address.
static vm::Vaddr boot::MappedToBoot (vm::Vaddr va)
 Convert kernel virtual address to bootstrap identity mapped address.
void Main (void *arg) __NORETURN
 Kernel higher level entry point.

Variables

BootParam * boot::kernBootParam
 Boot parameters which were passed to the kernel by the boot loader are stored in this variable.
u8 kernBootBss
 Start of kernel boot region BSS section.
u8 kernBootEnd
 End of kernel boot region.
u8 kernText
 Start of kernel main text section.
u8 kernTextEnd
 End of kernel main text section.
u8 kernRodataEnd
 End of kernel read-only data section.
u8 kernRamdisk
 Start of kernel RAM disk section.
u8 kernRamdiskEnd
 End of kernel RAM disk section.
u8 kernDataEnd
 End of kernel data section.
u8 kernEnd
 End of kernel loadable sections.
u32 kernRamdiskSize
 Size of kernel RAM disk section.

Detailed Description

Kernel boot loading definitions.

This file contains definition related to the kernel boot loading. Should be compilable in both C and C++ contexts.


Function Documentation

void Main ( void *  arg)

Kernel higher level entry point.

It never returns to caller.

Parameters:
argPointer to boot::BootstrapParam structure with boot parameters.

Variable Documentation

Start of kernel boot region BSS section.

End of kernel boot region.

End of kernel data section.

End of kernel loadable sections.

Start of kernel RAM disk section.

End of kernel RAM disk section.

Size of kernel RAM disk section.

Emitted by linker script.

End of kernel read-only data section.

Start of kernel main text section.

End of kernel main text section.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines