GitOS
Operating system exercise
Loading...
Searching...
No Matches
Bootloader.hpp
Go to the documentation of this file.
1//
2// Created by Pawel Reich on 2/18/25.
3//
4
5#pragma once
6
7#include <stdint-gcc.h>
8
9#pragma once
10
12 friend class GitBoot;
13 friend class Multiboot;
14
15 public:
16 virtual void init(uint32_t magic, void* info_ptr) = 0;
17 virtual ~Bootloader() = default;
18 static Bootloader* the() {
19 return m_bootloader;
20 };
21
22 virtual const char* get_cmdline() const = 0;
23 virtual const char* get_bootloader_name() const = 0;
24
25 virtual uint64_t get_heap_base_address() const = 0;
26 virtual uint64_t get_heap_size() const = 0;
27
28 private:
29 static Bootloader* m_bootloader;
30};
uint32_t magic
Definition Multiboot.hpp:0
Definition Bootloader.hpp:11
virtual const char * get_cmdline() const =0
virtual uint64_t get_heap_size() const =0
virtual void init(uint32_t magic, void *info_ptr)=0
virtual uint64_t get_heap_base_address() const =0
virtual ~Bootloader()=default
virtual const char * get_bootloader_name() const =0
static Bootloader * the()
Definition Bootloader.hpp:18
Definition GitBoot.hpp:9
Definition Multiboot.hpp:12