MCPcopy Create free account
hub / github.com/Simple-XX/SimpleKernel / BasicInfo

Class BasicInfo

src/include/basic_info.hpp:26–65  ·  view source on GitHub ↗

@brief 内核基础信息(物理内存、内核地址、CPU 核数等)

Source from the content-addressed store, hash-verified

24
25/// @brief 内核基础信息(物理内存、内核地址、CPU 核数等)
26struct BasicInfo {
27 /// physical_memory 地址
28 uint64_t physical_memory_addr{0};
29 /// physical_memory 大小
30 size_t physical_memory_size{0};
31
32 /// kernel 地址
33 uint64_t kernel_addr{0};
34 /// kernel 大小
35 size_t kernel_size{0};
36
37 /// elf 地址
38 uint64_t elf_addr{0};
39
40 /// fdt 地址
41 uint64_t fdt_addr{0};
42
43 /// cpu 核数
44 size_t core_count{0};
45
46 /// 时钟频率
47 size_t interval{0};
48
49 /// @name 构造/析构函数
50 /// @{
51 /**
52 * 构造函数,在 arch_main.cpp 中定义
53 * @param argc 同 _start
54 * @param argv 同 _start
55 */
56 explicit BasicInfo(int argc, const char** argv);
57
58 BasicInfo() = default;
59 BasicInfo(const BasicInfo&) = default;
60 BasicInfo(BasicInfo&&) = default;
61 auto operator=(const BasicInfo&) -> BasicInfo& = default;
62 auto operator=(BasicInfo&&) -> BasicInfo& = default;
63 ~BasicInfo() = default;
64 /// @}
65};
66
67using BasicInfoSingleton = etl::singleton<BasicInfo>;

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected