|
SimpleKernel 1.17.0
|


Go to the source code of this file.
Functions | |
| auto | switch_to (cpu_io::CalleeSavedContext *prev, cpu_io::CalleeSavedContext *next) -> void |
| auto | kernel_thread_entry () -> void |
| auto | trap_return (void *) -> void |
| auto | trap_entry () -> void |
| auto | ArchInit (int argc, const char **argv) -> void |
| 体系结构相关初始化 | |
| auto | ArchInitSMP (int argc, const char **argv) -> void |
| 从核的体系结构相关初始化 | |
| auto | WakeUpOtherCores () -> void |
| 唤醒其余 core | |
| auto | InterruptInit (int argc, const char **argv) -> void |
| 体系结构相关中断初始化 | |
| auto | InterruptInitSMP (int argc, const char **argv) -> void |
| 从核的体系结构相关中断初始化 | |
| auto | TimerInit () -> void |
| 初始化定时器 | |
| auto | TimerInitSMP () -> void |
| 从核的定时器初始化 | |
| auto | InitTaskContext (cpu_io::CalleeSavedContext *task_context, void(*entry)(void *), void *arg, uint64_t stack_top) -> void |
| 初始化内核线程的任务上下文(重载1) | |
| auto | InitTaskContext (cpu_io::CalleeSavedContext *task_context, cpu_io::TrapContext *trap_context_ptr, uint64_t stack_top) -> void |
| 初始化用户线程的任务上下文(重载2) | |
| __always_inline auto | backtrace (void **buffer, int size) -> int |
| 获取调用栈 | |
| auto | DumpStack () -> void |
| 打印调用栈 | |
Variables | |
| static constexpr size_t | kMaxFrameCount = 128 |
| 最多回溯 128 层调用栈 | |
| auto ArchInit | ( | int | argc, |
| const char ** | argv | ||
| ) | -> void |
体系结构相关初始化
| argc | 在不同体系结构有不同含义,同 _start |
| argv | 在不同体系结构有不同含义,同 _start |
Definition at line 48 of file arch_main.cpp.


| auto ArchInitSMP | ( | int | argc, |
| const char ** | argv | ||
| ) | -> void |
从核的体系结构相关初始化
| argc | 在不同体系结构有不同含义,同 _start |
| argv | 在不同体系结构有不同含义,同 _start |
Definition at line 65 of file arch_main.cpp.

| __always_inline auto backtrace | ( | void ** | buffer, |
| int | size | ||
| ) | -> int |
获取调用栈
| buffer | 指向一个数组,该数组用于存储调用栈中的返回地址 |
| size | 数组的大小,即调用栈中最多存储多少个返回地址 |
| auto DumpStack | ( | ) | -> void |
打印调用栈
Definition at line 34 of file backtrace.cpp.


| auto InitTaskContext | ( | cpu_io::CalleeSavedContext * | task_context, |
| cpu_io::TrapContext * | trap_context_ptr, | ||
| uint64_t | stack_top | ||
| ) | -> void |
初始化用户线程的任务上下文(重载2)
| task_context | 指向任务上下文的指针 |
| trap_context_ptr | 指向 Trap 上下文的指针 |
| stack_top | 内核栈顶地址 |
Definition at line 90 of file arch_main.cpp.

| auto InitTaskContext | ( | cpu_io::CalleeSavedContext * | task_context, |
| void(*)(void *) | entry, | ||
| void * | arg, | ||
| uint64_t | stack_top | ||
| ) | -> void |
初始化内核线程的任务上下文(重载1)
| task_context | 指向任务上下文的指针 |
| entry | 线程入口函数 |
| arg | 传递给线程的参数 |
| stack_top | 内核栈顶地址 |
Definition at line 77 of file arch_main.cpp.


| auto InterruptInit | ( | int | argc, |
| const char ** | argv | ||
| ) | -> void |
体系结构相关中断初始化
| argc | 在不同体系结构有不同含义,同 _start |
| argv | 在不同体系结构有不同含义,同 _start |
Definition at line 175 of file interrupt_main.cpp.


| auto InterruptInitSMP | ( | int | argc, |
| const char ** | argv | ||
| ) | -> void |
从核的体系结构相关中断初始化
| argc | 在不同体系结构有不同含义,同 _start |
| argv | 在不同体系结构有不同含义,同 _start |
Definition at line 200 of file interrupt_main.cpp.

| auto kernel_thread_entry | ( | ) | -> void |
| auto switch_to | ( | cpu_io::CalleeSavedContext * | prev_ctx, |
| cpu_io::CalleeSavedContext * | next_ctx | ||
| ) |
Definition at line 15 of file arch.cpp.


| auto TimerInit | ( | ) | -> void |
初始化定时器
Definition at line 47 of file timer.cpp.


| auto TimerInitSMP | ( | ) | -> void |
从核的定时器初始化
Definition at line 35 of file timer.cpp.

| auto trap_entry | ( | ) | -> void |
| auto trap_return | ( | void * | ) | -> void |
| auto WakeUpOtherCores | ( | ) | -> void |
唤醒其余 core
Definition at line 68 of file arch_main.cpp.

