Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/Simple-XX/SimpleKernel
/ functions
Functions
1,141 in github.com/Simple-XX/SimpleKernel
⨍
Functions
1,141
◇
Types & classes
206
Method
Lock
src/memory/memory.cpp:36
Method
LockGuard
* @brief 构造函数,自动获取锁 * @param mutex 要保护的锁对象 */
src/include/spinlock.hpp:142
Function
Log
src/include/kernel_log.hpp:143
Method
Lookup
src/filesystem/ramfs/ramfs.cpp:171
Method
Lookup
src/filesystem/fatfs/fatfs.cpp:301
Method
MPMCQueue
* @brief Construct a new MPMCQueue object */
3rd/MPMCQueue/include/MPMCQueue.hpp:42
Method
MapBlkStatus
* @brief 将设备 BlkStatus 映射为 ErrorCode * * @param status 设备返回的原始状态字节 * @return 对应的 ErrorCode */
src/device/virtio/device/blk/virtio_blk.hpp:727
Method
MatchStatic
* @brief 硬件检测:MMIO 区域大小是否足够 NS16550A? * * NS16550A 没有可读的 magic 寄存器,仅验证 MMIO 资源。 * * @return true 如果 mmio_base 非零且 mmio_size 足够 */
src/device/ns16550a/ns16550a_driver.hpp:53
Method
MatchStatic
src/device/virtio/virtio_driver.cpp:16
Method
MatchStatic
* @brief 硬件检测:MMIO 区域大小是否足够 PL011? * * PL011 没有可读的 magic 寄存器,仅验证 MMIO 资源。 * * @return true 如果 mmio_base 非零且 mmio_size 足够 */
src/device/pl011/pl011_driver.hpp:57
Method
Mkdir
src/filesystem/fatfs/fatfs.cpp:385
Method
MmioAccessor
@name 构造/析构函数 @{
src/include/mmio_accessor.hpp:36
Method
MmioTransport
* @brief 构造函数 * * 在构造时完成以下初始化: * 1. 验证 MMIO 魔数和版本号 * 2. 检查设备是否存在(Device ID != 0) * 3. 执行设备重置 * 4. 缓存设备 ID 和 Vendor ID * * @par
src/device/virtio/transport/mmio.hpp:126
Method
MockAllocator
tests/unit_test/virtual_memory_test.cpp:61
Method
MockFs
tests/unit_test/vfs_test.cpp:47
Method
Mount
src/filesystem/ramfs/ramfs.cpp:36
Method
Mount
src/filesystem/fatfs/fatfs.cpp:109
Method
MountTable
@name 构造/析构函数 @{
src/filesystem/vfs/include/mount.hpp:41
Method
MsgBlock
@name 构造/析构函数 @{
src/task/include/task_messages.hpp:78
Method
MsgExit
@name 构造/析构函数 @{
src/task/include/task_messages.hpp:99
Method
MsgSleep
@name 构造/析构函数 @{
src/task/include/task_messages.hpp:59
Method
Mutex
@name 构造/析构函数 @{
src/include/mutex.hpp:73
Method
NeedsReset
* @brief 检查设备是否需要重置 * * @return true 表示设备需要重置 * @see virtio-v1.2#2.1 Device Status Field */
src/device/virtio/transport/transport.hpp:120
Method
NotifyQueue
通知设备有新的可用缓冲区
src/device/virtio/transport/mmio.hpp:294
Method
Ns16550a
@name 构造/析构函数 @{
src/device/ns16550a/ns16550a.hpp:115
Method
Ns16550aDriver
@name 构造/析构函数 @{
src/device/ns16550a/ns16550a_driver.hpp:100
Method
NumFree
* @brief 获取当前空闲描述符数量 */
src/device/virtio/virt_queue/split.hpp:590
Method
OnPreempted
* @brief 任务被抢占时调用 * * FIFO 是不可抢占调度器,但如果外部强制抢占,则需要统计 * * @param task 被抢占的任务 */
src/task/include/fifo_scheduler.hpp:83
Method
OnPreempted
* @brief 任务被抢占时调用 (从 Running 变为 Ready) * * 用于支持状态跟踪和统计 * * @param task 被抢占的任务 */
src/task/include/scheduler_base.hpp:131
Method
OnPreempted
* @brief 任务被抢占时调用 * @param task 被抢占的任务 */
src/task/include/rr_scheduler.hpp:116
Method
OnPreempted
* @brief 任务被抢占时的处理(idle 任务不需要特殊处理) * @param task 被抢占的任务 */
src/task/include/idle_scheduler.hpp:93
Method
OnScheduled
* @brief 任务被调度时的处理(idle 任务不需要特殊处理) * @param task 被调度的任务 */
src/task/include/idle_scheduler.hpp:102
Method
OnTick
* @brief Tick 更新:每个时钟中断时调用,用于更新调度器状态 * * @param current 当前正在运行的任务 * @return true 表示需要重新调度 * @return false 表示继续运行当前任务 */
src/task/include/scheduler_base.hpp:86
Method
OnTick
* @brief Tick 更新(idle 任务不需要时间片管理) * @param current 当前任务 * @return 始终返回 false(不需要重新调度) */
src/task/include/idle_scheduler.hpp:74
Method
OnTimeSliceExpired
* @brief 时间片耗尽处理 * @param task 时间片耗尽的任务 * @return bool 返回 true 表示需要重新入队 * * Round-Robin 调度器在时间片耗尽时重置时间片并将任务放回队列尾部。 */
src/task/include/rr_scheduler.hpp:102
Method
OnTimeSliceExpired
* @brief 时间片耗尽处理(idle 任务不使用时间片) * @param task 任务 * @return 始终返回 false(不需要重新入队) */
src/task/include/idle_scheduler.hpp:84
Method
Open
src/filesystem/fatfs/fatfs.cpp:396
Function
PageFaultHandler
src/arch/riscv64/interrupt_main.cpp:53
Method
PerCpu
@name 构造/析构函数 @{
src/include/per_cpu.hpp:36
Method
PickNext
* @brief 选择下一个要运行的任务(队列头部) * @return 下一个任务,如果队列为空则返回 nullptr */
src/task/include/fifo_scheduler.hpp:50
Method
PickNext
* @brief 选择下一个要运行的任务 * @return TaskControlBlock* 下一个任务,如果队列为空则返回 nullptr * * 从队列头部取出任务,实现 Round-Robin 轮转。 */
src/task/include/rr_scheduler.hpp:69
Method
PickNext
* @brief 选择下一个要运行的任务(返回 idle 任务) * @return idle 任务,如果没有则返回 nullptr */
src/task/include/idle_scheduler.hpp:45
Method
Pl011
@name 构造/析构函数 @{ * @brief 构造函数 * @param dev_addr 设备 MMIO 基地址 * @param clock 串口时钟(0 表示不设置波特率) * @param baud_rate 波特率(0 表示不设置波特率) */
src/device/pl011/pl011.hpp:124
Method
Pl011Driver
@name 构造/析构函数 @{
src/device/pl011/pl011_driver.hpp:98
Method
PlatformBus
src/device/include/platform_bus.hpp:16
Method
Plic
src/arch/riscv64/plic/plic.cpp:24
Method
Plic
src/arch/riscv64/plic/include/plic.h:83
Method
Point
tests/unit_test/sk_unique_ptr_test.cpp:194
Method
Ppi
* @brief 设置 PPI 中断 * @param intid 中断号 * @param cpuid CPU 编号 */
src/arch/aarch64/include/interrupt.h:85
Method
PriorityThreshold
src/arch/riscv64/plic/plic.cpp:143
Method
Probe
* @brief 初始化 NS16550A UART。 * * @pre node.mmio_base != 0 * @post uart_ 有效;node.type == DeviceType::kChar */
src/device/ns16550a/ns16550a_driver.hpp:65
Method
Probe
src/device/virtio/virtio_driver.cpp:20
Method
Probe
* @brief 初始化 PL011 UART。 * * @pre node.mmio_base != 0 * @post uart_ 有效;node.type == DeviceType::kChar */
src/device/pl011/pl011_driver.hpp:68
Method
ProcessCompletions
src/device/virtio/device/blk/virtio_blk.hpp:644
Method
ProcessUsedWithCallback
src/device/virtio/virt_queue/virtqueue_base.hpp:85
Method
PutChar
* @brief 写入一个字符 * @param c 待写入的字符 */
src/device/ns16550a/ns16550a.hpp:53
Method
RamFs
src/filesystem/ramfs/ramfs.cpp:15
Method
RamFs
禁止拷贝和移动
src/filesystem/ramfs/include/ramfs.hpp:32
Method
RamFsFileOps
src/filesystem/ramfs/include/ramfs.hpp:110
Method
RamFsInodeOps
src/filesystem/ramfs/include/ramfs.hpp:93
Method
Read
src/arch/aarch64/gic/include/gic.h:396
Method
Read
src/arch/aarch64/gic/include/gic.h:618
Method
Read
src/filesystem/fatfs/fatfs.cpp:403
Method
Read
src/include/mmio_accessor.hpp:19
Method
ReadConfig
* @brief 读取块设备配置空间 * * 读取设备的配置信息,包括容量、几何信息、拓扑信息等。 * 配置空间的可用字段取决于协商的特性位。 * * @return 块设备配置结构 * @see virtio-v1.2#5.2.4 Device configur
src/device/virtio/device/blk/virtio_blk.hpp:365
Method
ReadConfigU16
* @brief 读取配置空间 16 位值 * * @param offset 相对于配置空间起始的偏移量 */
src/device/virtio/transport/mmio.hpp:321
Method
ReadConfigU32
* @brief 读取配置空间 32 位值 * * @param offset 相对于配置空间起始的偏移量 */
src/device/virtio/transport/mmio.hpp:330
Method
ReadConfigU64
* @brief 读取配置空间 64 位值 * * 使用 generation counter 机制保证读取的 64 位配置数据一致性: * 1. 读取 ConfigGeneration * 2. 读取配置数据 * 3. 再次读取 ConfigGeneration
src/device/virtio/transport/mmio.hpp:348
Method
ReadConfigU8
* @brief 读取配置空间 8 位值 * * @param offset 相对于配置空间起始的偏移量 * @see virtio-v1.2#4.2.2.2 */
src/device/virtio/transport/mmio.hpp:312
Method
ReadDir
src/filesystem/fatfs/fatfs.cpp:485
Method
ReapTask
src/task/task_manager.cpp:260
Method
RecursiveClonePageTable
src/memory/virtual_memory.cpp:244
Method
RecursiveFreePageTable
src/memory/virtual_memory.cpp:210
Method
RegisterInterruptFunc
src/arch/riscv64/plic/plic.cpp:61
Method
RegisterTaskContext
tests/unit_test/mocks/test_environment_state.cpp:106
Method
Remove
* @brief 卸载驱动 * @param node 设备节点 * @return Expected<void> 成功返回空值 */
src/device/ns16550a/ns16550a_driver.hpp:87
Method
Remove
* @brief 卸载所有 VirtIO 块设备 * @param node 设备节点 * @return Expected<void> 成功返回空值 */
src/device/virtio/virtio_driver.hpp:95
Method
Remove
* @brief 卸载驱动 * @param node 设备节点 * @return Expected<void> 成功返回空值 */
src/device/pl011/pl011_driver.hpp:85
Method
ReparentChildren
src/task/task_manager.cpp:284
Method
ResetAllCores
tests/unit_test/mocks/test_environment_state.cpp:40
Method
ResourceId
* @brief 构造资源 ID * @param type 资源类型 * @param data 资源数据 (如地址、PID 等) */
src/task/include/resource_id.hpp:143
Method
Rmdir
src/filesystem/fatfs/fatfs.cpp:390
Method
RoundRobinScheduler
@name 构造/析构函数 @{
src/task/include/rr_scheduler.hpp:122
Method
SchedulerBase
@name 构造/析构函数 @{
src/task/include/scheduler_base.hpp:153
Method
Seek
src/filesystem/fatfs/fatfs.cpp:436
Method
SendIpi
src/arch/riscv64/interrupt.cpp:87
Method
SendIpi
src/arch/aarch64/interrupt.cpp:75
Function
SerialIrqHandler
串口外部中断处理
src/arch/riscv64/interrupt_main.cpp:84
Method
SetBlockDevice
src/filesystem/fatfs/fatfs.cpp:78
Method
SetConfig
src/arch/aarch64/gic/gic.cpp:96
Method
SetDriverFeatures
* @brief 写入 64 位驱动特性 * * @param features 驱动程序接受的特性位 * @see virtio-v1.2#4.2.2.1 */
src/device/virtio/transport/mmio.hpp:211
Method
SetEnableBit
src/arch/riscv64/plic/plic.cpp:104
Method
SetNumCores
* @brief 设置测试使用的核心数量(在 SetUp 前调用) */
tests/unit_test/task/fixtures/task_test_harness.hpp:27
Method
SetPendingBit
src/arch/riscv64/plic/plic.cpp:131
Method
SetPrio
src/arch/aarch64/gic/gic.cpp:88
Method
SetQueueAvail
* @brief 设置 Available Ring 物理地址 * * @param queue_idx 队列索引 * @param addr Available Ring 的 64 位物理地址 */
src/device/virtio/transport/mmio.hpp:260
Method
SetQueueDesc
* @brief 设置描述符表物理地址 * * @param queue_idx 队列索引 * @param addr 描述符表的 64 位物理地址 */
src/device/virtio/transport/mmio.hpp:246
Method
SetQueueNum
src/device/virtio/transport/mmio.hpp:235
Method
SetQueueReady
src/device/virtio/transport/mmio.hpp:287
Method
SetQueueUsed
* @brief 设置 Used Ring 物理地址 * * @param queue_idx 队列索引 * @param addr Used Ring 的 64 位物理地址 */
src/device/virtio/transport/mmio.hpp:274
← previous
next →
601–700 of 1,141, ranked by callers