[Krafton Jungle] PintOS 2.0.0
크래프톤 정글 PintOS
 
Loading...
Searching...
No Matches
loader.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define LOADER_BASE   0x7c00 /* Physical address of loader's base. */
 
#define LOADER_END   0x7e00 /* Physical address of end of loader. */
 
#define LOADER_KERN_BASE   0x8004000000
 
#define LOADER_PHYS_BASE   0x200000
 
#define MULTIBOOT_INFO   0x7000
 
#define MULTIBOOT_FLAG   MULTIBOOT_INFO
 
#define MULTIBOOT_MMAP_LEN   MULTIBOOT_INFO + 44
 
#define MULTIBOOT_MMAP_ADDR   MULTIBOOT_INFO + 48
 
#define E820_MAP   MULTIBOOT_INFO + 52
 
#define E820_MAP4   MULTIBOOT_INFO + 56
 
#define LOADER_SIG   (LOADER_END - LOADER_SIG_LEN) /* 0xaa55 BIOS signature. */
 
#define LOADER_ARGS   (LOADER_SIG - LOADER_ARGS_LEN) /* Command-line args. */
 
#define LOADER_ARG_CNT   (LOADER_ARGS - LOADER_ARG_CNT_LEN) /* Number of args. */
 
#define LOADER_SIG_LEN   2
 
#define LOADER_ARGS_LEN   128
 
#define LOADER_ARG_CNT_LEN   4
 
#define SEL_NULL   0x00 /* Null selector. */
 
#define SEL_KCSEG   0x08 /* Kernel code selector. */
 
#define SEL_KDSEG   0x10 /* Kernel data selector. */
 
#define SEL_UDSEG   0x1B /* User data selector. */
 
#define SEL_UCSEG   0x23 /* User code selector. */
 
#define SEL_TSS   0x28 /* Task-state segment. */
 
#define SEL_CNT   8 /* Number of segments. */
 

Macro Definition Documentation

◆ E820_MAP

#define E820_MAP   MULTIBOOT_INFO + 52

◆ E820_MAP4

#define E820_MAP4   MULTIBOOT_INFO + 56

◆ LOADER_ARG_CNT

#define LOADER_ARG_CNT   (LOADER_ARGS - LOADER_ARG_CNT_LEN) /* Number of args. */

◆ LOADER_ARG_CNT_LEN

#define LOADER_ARG_CNT_LEN   4

◆ LOADER_ARGS

#define LOADER_ARGS   (LOADER_SIG - LOADER_ARGS_LEN) /* Command-line args. */

◆ LOADER_ARGS_LEN

#define LOADER_ARGS_LEN   128

◆ LOADER_BASE

#define LOADER_BASE   0x7c00 /* Physical address of loader's base. */

◆ LOADER_END

#define LOADER_END   0x7e00 /* Physical address of end of loader. */

◆ LOADER_KERN_BASE

#define LOADER_KERN_BASE   0x8004000000

◆ LOADER_PHYS_BASE

#define LOADER_PHYS_BASE   0x200000

◆ LOADER_SIG

#define LOADER_SIG   (LOADER_END - LOADER_SIG_LEN) /* 0xaa55 BIOS signature. */

◆ LOADER_SIG_LEN

#define LOADER_SIG_LEN   2

◆ MULTIBOOT_FLAG

#define MULTIBOOT_FLAG   MULTIBOOT_INFO

◆ MULTIBOOT_INFO

#define MULTIBOOT_INFO   0x7000

◆ MULTIBOOT_MMAP_ADDR

#define MULTIBOOT_MMAP_ADDR   MULTIBOOT_INFO + 48

◆ MULTIBOOT_MMAP_LEN

#define MULTIBOOT_MMAP_LEN   MULTIBOOT_INFO + 44

◆ SEL_CNT

#define SEL_CNT   8 /* Number of segments. */

◆ SEL_KCSEG

#define SEL_KCSEG   0x08 /* Kernel code selector. */

◆ SEL_KDSEG

#define SEL_KDSEG   0x10 /* Kernel data selector. */

◆ SEL_NULL

#define SEL_NULL   0x00 /* Null selector. */

◆ SEL_TSS

#define SEL_TSS   0x28 /* Task-state segment. */

◆ SEL_UCSEG

#define SEL_UCSEG   0x23 /* User code selector. */

◆ SEL_UDSEG

#define SEL_UDSEG   0x1B /* User data selector. */