Kernel Loader: Difference between revisions
| No edit summary | |||
| Line 29: | Line 29: | ||
|      uintptr_t kernel_relocation_offset = KernelLdr_LoadKernel(kernel_base, kernel_map, ini_base); |      uintptr_t kernel_relocation_offset = KernelLdr_LoadKernel(kernel_base, kernel_map, ini_base); | ||
|      //  |      // finalize called for static page allocator. | ||
|      g_InitialPageAllocator. |      g_InitialPageAllocator.Finalize(); | ||
|      // Jumps back to the kernel code that called KernelLdr_Main. |      // Jumps back to the kernel code that called KernelLdr_Main. | ||
| Line 136: | Line 136: | ||
| </pre> | </pre> | ||
| == KInitialPageAllocator:: | == KInitialPageAllocator::Initialize == | ||
| This  | This sets the allocator's next address (function inferred as it is (presumably) inlined and next_address is (presumably) private). | ||
| <pre> | <pre> | ||
|      this->next_address =  |      this->next_address = address; | ||
| </pre> | </pre> | ||
| == KInitialPageAllocator:: | == KInitialPageAllocator::Finalize == | ||
| This  | This just clears the allocator's next address. | ||
| <pre> | <pre> | ||
|      this->next_address =  |      this->next_address = 0; | ||
| </pre> | </pre> | ||