#include <load_elf.h>
内存相关
Definition at line 87 of file load_elf.h.
◆ Memory() [1/3]
◆ ~Memory()
◆ Memory() [2/3]
Memory::Memory |
( |
const Memory & |
| ) |
|
|
delete |
◆ Memory() [3/3]
◆ flush_desc()
void Memory::flush_desc |
( |
| ) |
|
|
private |
更新内存映射信息
Definition at line 22 of file memory.cpp.
26 throw std::runtime_error(
"memory_map == nullptr");
EFI_MEMORY_DESCRIPTOR * memory_map
static auto endl(ostream &_ostream) -> ostream &
static ostream debug
全局输出流
◆ operator=() [1/2]
auto Memory::operator= |
( |
const Memory & |
| ) |
-> Memory &=delete |
|
delete |
◆ operator=() [2/2]
◆ print_info()
void Memory::print_info |
( |
| ) |
|
输出内存映射信息
Definition at line 32 of file memory.cpp.
34 debug << L
"Type\t\t\t\tPages\tPhysicalStart\tVirtualStart\tAttribute"
37 auto *MMap =
reinterpret_cast<EFI_MEMORY_DESCRIPTOR *
>(
41 case EfiReservedMemoryType: {
42 debug << L
"iReservedMemoryType\t\t";
46 debug << L
"EfiLoaderCode\t\t\t";
50 debug << L
"EfiLoaderData\t\t\t";
53 case EfiBootServicesCode: {
54 debug << L
"EfiBootServicesCode\t\t";
57 case EfiBootServicesData: {
58 debug << L
"EfiBootServicesData\t\t";
61 case EfiRuntimeServicesCode: {
62 debug << L
"EfiRuntimeServicesCode\t\t";
65 case EfiRuntimeServicesData: {
66 debug << L
"EfiRuntimeServicesData\t\t";
69 case EfiConventionalMemory: {
70 debug << L
"EfiConventionalMemory\t\t";
73 case EfiUnusableMemory: {
74 debug << L
"EfiUnusableMemory\t\t";
77 case EfiACPIReclaimMemory: {
78 debug << L
"EfiACPIReclaimMemory\t\t";
81 case EfiACPIMemoryNVS: {
82 debug << L
"EfiACPIMemoryNVS\t\t";
85 case EfiMemoryMappedIO: {
86 debug << L
"EfiMemoryMappedIO\t\t";
89 case EfiMemoryMappedIOPortSpace: {
90 debug << L
"EfiMemoryMappedIOPortSpace\t\t";
94 debug << L
"EfiPalCode\t\t";
97 case EfiMaxMemoryType: {
98 debug << L
"EfiMaxMemoryType\t\t";
109 << MMap->VirtualStart << L
"\t" <<
ostream::hex_X << MMap->Attribute
static auto hex_x(ostream &_ostream) -> ostream &
static auto hex_X(ostream &_ostream) -> ostream &
◆ desc_count
uint64_t Memory::desc_count = 0 |
|
private |
◆ desc_size
uint64_t Memory::desc_size = 0 |
|
private |
◆ desc_version
uint32_t Memory::desc_version = 0 |
|
private |
◆ map_key
uint64_t Memory::map_key = 0 |
|
private |
◆ memory_map
EFI_MEMORY_DESCRIPTOR* Memory::memory_map = nullptr |
|
private |
The documentation for this class was generated from the following files:
- /home/runner/work/SimpleKernel/SimpleKernel/src/boot/include/load_elf.h
- /home/runner/work/SimpleKernel/SimpleKernel/src/boot/memory.cpp