MCPcopy Create free account

hub / github.com/Simple-XX/SimpleKernel / functions

Functions1,141 in github.com/Simple-XX/SimpleKernel

↓ 2 callersMethodRegisterExternalInterrupt
src/arch/riscv64/interrupt.cpp:116
↓ 2 callersFunctionRemoveChild
src/filesystem/vfs/vfs.cpp:63
↓ 2 callersMethodRemoveFromDirectory
src/filesystem/ramfs/ramfs.cpp:544
↓ 2 callersMethodReset
* @brief 重置设备 * @see virtio-v1.2#2.1 Device Status Field */
src/device/virtio/transport/transport.hpp:110
↓ 2 callersMethodReset
tests/unit_test/virtual_memory_test.cpp:49
↓ 2 callersMethodSetDriverFeatures
src/device/virtio/transport/pci.hpp:26
↓ 2 callersMethodSetQueueAvail
src/device/virtio/transport/pci.hpp:33
↓ 2 callersMethodSetQueueDesc
src/device/virtio/transport/pci.hpp:32
↓ 2 callersMethodSetQueueNum
src/device/virtio/transport/pci.hpp:31
↓ 2 callersMethodSetQueueReady
src/device/virtio/transport/pci.hpp:38
↓ 2 callersMethodSetQueueUsed
src/device/virtio/transport/pci.hpp:34
↓ 2 callersFunctionSetRootDentry
内部接口:设置根 dentry
src/filesystem/vfs/vfs.cpp:99
↓ 2 callersMethodSubmitChain
* @brief 提交 Scatter-Gather 描述符链 * * 从空闲链表分配描述符,按顺序组装 readable(设备只读)和 * writable(设备可写) 缓冲区为描述符链,自动设置 NEXT 标志串联,并提交到 * Available Ring。 *
src/device/virtio/virt_queue/split.hpp:460
↓ 2 callersMethodTickUpdate
src/task/tick_update.cpp:9
↓ 2 callersFunctionTimerInit
src/arch/riscv64/timer.cpp:36
↓ 2 callersFunctionTimerInitSMP
src/arch/riscv64/timer.cpp:28
↓ 2 callersMethodToDmaRegion
src/io_buffer.cpp:56
↓ 2 callersMethodTryLock
src/task/mutex.cpp:101
↓ 2 callersMethodUnLock
* @brief 释放锁 * @return Expected<void> 成功返回空值,失败返回错误 */
src/include/spinlock.hpp:66
↓ 2 callersMethodUnmount
src/filesystem/vfs/mount.cpp:108
↓ 2 callersFunctionWakeUpOtherCores
src/arch/riscv64/arch_main.cpp:62
↓ 2 callersMethodWrite
tests/unit_test/vfs_test.cpp:24
↓ 2 callersMethodavail_event
* @brief 获取 avail_event 字段的指针 * @param queue_size 队列大小 * @return avail_event 字段指针 * @note 仅当协商 VIRTIO_F_EVENT_IDX 特性时使用 * @see vir
src/device/virtio/virt_queue/split.hpp:178
↓ 2 callersFunctionisalpha
src/libc/sk_ctype.c:13
↓ 2 callersFunctionislower
src/libc/sk_ctype.c:23
↓ 2 callersFunctionisspace
src/libc/sk_ctype.c:29
↓ 2 callersFunctionisupper
src/libc/sk_ctype.c:34
↓ 2 callersFunctionstrtod
src/libc/sk_stdlib.c:160
↓ 2 callersFunctionstrtol
src/libc/sk_stdlib.c:136
↓ 2 callersFunctionstrtoll
src/libc/sk_stdlib.c:117
↓ 2 callersFunctionstrtox_main
Internal helper for string to number conversion Parses magnitude into unsigned long long. handles base detection, whitespace, signs.
src/libc/sk_stdlib.c:27
↓ 2 callersFunctionsyscall_dispatcher
src/syscall.cpp:17
↓ 2 callersMethodused_event
* @brief 获取 used_event 字段的指针 * @param queue_size 队列大小 * @return used_event 字段指针 * @note 仅当协商 VIRTIO_F_EVENT_IDX 特性时使用 * @see virti
src/device/virtio/virt_queue/split.hpp:123
↓ 1 callersMethodActivate
* @brief 激活设备,开始正常运行 * * 设置 DRIVER_OK 状态位,完成设备初始化流程(步骤 8)。 * 必须在所有队列配置完成后调用。 * 调用后设备开始正常运行,可以处理队列中的请求。 * * @return 成功或失败 * @pre t
src/device/virtio/device/device_initializer.hpp:153
↓ 1 callersMethodAddToDirectory
src/filesystem/ramfs/ramfs.cpp:497
↓ 1 callersMethodAlignedAlloc
tests/unit_test/virtual_memory_test.cpp:29
↓ 1 callersMethodAllocateDir
src/filesystem/fatfs/fatfs.cpp:244
↓ 1 callersMethodAllocateInode
src/filesystem/ramfs/ramfs.cpp:109
↓ 1 callersMethodAllocateInode
tests/unit_test/vfs_test.cpp:73
↓ 1 callersMethodAvailIdx
* @brief 获取当前 Available Ring 索引 */
src/device/virtio/virt_queue/split.hpp:630
↓ 1 callersMethodAvailPhys
* @brief 获取 Available Ring 的物理地址 * @see virtio-v1.2#2.7.6 */
src/device/virtio/virt_queue/split.hpp:570
↓ 1 callersMethodAvailUsedEvent
* @brief 获取 Available Ring 的 used_event 字段 * * @return used_event 字段指针,未启用 EVENT_IDX 则返回 nullptr * @see virtio-v1.2#2.7.10 */
src/device/virtio/virt_queue/split.hpp:598
↓ 1 callersMethodBroadcastIpi
src/arch/riscv64/interrupt.cpp:99
↓ 1 callersMethodCheckPSCI
* @brief 判断 PSCI 信息 * @return Expected<void> 成功返回空,失败返回错误 * @pre fdt_header_ 不为空 */
src/include/kernel_fdt.hpp:71
↓ 1 callersMethodClearPending
* @brief 清除待处理信号 * @param signum 信号编号 */
src/include/signal.hpp:155
↓ 1 callersMethodClearSwitchHistory
tests/unit_test/mocks/test_environment_state.cpp:162
↓ 1 callersMethodClose
src/filesystem/ramfs/ramfs.cpp:415
↓ 1 callersMethodDescPhys
* @brief 获取描述符表的物理地址 * @see virtio-v1.2#2.7.5 */
src/device/virtio/virt_queue/split.hpp:562
↓ 1 callersMethodDo
src/arch/aarch64/interrupt.cpp:63
↓ 1 callersMethodDone
src/arch/riscv64/plic/plic.cpp:56
↓ 1 callersMethodDup
src/filesystem/file_descriptor.cpp:106
↓ 1 callersFunctionEnablePage
tests/unit_test/mocks/cpu_io.h:134
↓ 1 callersMethodExit
src/task/exit.cpp:12
↓ 1 callersMethodExpandFile
src/filesystem/ramfs/ramfs.cpp:580
↓ 1 callersFunctionFilInfoToFileType
* @brief 将 FILINFO 属性转换为 vfs::FileType */
src/filesystem/fatfs/fatfs.cpp:69
↓ 1 callersMethodFindByMountDentry
src/filesystem/vfs/mount.cpp:203
↓ 1 callersMethodFindDriver
* @brief 查找 match_table 中含有 node.compatible 字符串的第一个驱动 * (flat_map 查找,O(Cn · log T))。 * * @return DriverEntry 指针,若无匹配则返回 nullptr */
src/device/include/driver_registry.hpp:93
↓ 1 callersMethodForEachDeviceNode
src/include/kernel_fdt.hpp:519
↓ 1 callersMethodForEachNode
src/include/kernel_fdt.hpp:365
↓ 1 callersMethodFreeFil
src/filesystem/fatfs/fatfs.cpp:235
↓ 1 callersMethodFreeInode
tests/unit_test/vfs_test.cpp:77
↓ 1 callersMethodGetBuffer
src/io_buffer.cpp:48
↓ 1 callersMethodGetChar
* @brief 阻塞式读取一个字符 * @return 读取到的字符 */
src/device/pl011/pl011.hpp:38
↓ 1 callersMethodGetConfigGeneration
src/device/virtio/transport/pci.hpp:56
↓ 1 callersMethodGetCoreIdForThread
tests/unit_test/mocks/test_environment_state.cpp:76
↓ 1 callersMethodGetCurrentCpuSched
* @brief 获取当前核心的调度数据 * @return CpuSchedData& 当前核心的调度数据引用 */
src/task/include/task_manager.hpp:218
↓ 1 callersFunctionGetDefaultSignalAction
* @brief 获取信号的默认动作 * @param signum 信号编号 * @return 默认动作 ('T'=终止, 'I'=忽略, 'C'=核心转储, 'S'=停止, 'K'=继续) */
src/include/signal.hpp:241
↓ 1 callersMethodGetDeviceId
src/device/virtio/transport/pci.hpp:19
↓ 1 callersFunctionGetErrorMessage
获取错误码对应的错误信息
src/include/expected.hpp:139
↓ 1 callersMethodGetFileOps
src/filesystem/ramfs/ramfs.cpp:167
↓ 1 callersMethodGetGIC
* @brief 获取 GIC 信息 * @return Expected<std::tuple<...>> * <dist地址,dist大小,redist地址,redist大小> * @pre fdt_header_ 不为空 */
src/include/kernel_fdt.hpp:198
↓ 1 callersMethodGetIrq
* @brief 获取第一个块设备的 IRQ 号 * @return IRQ 号,若无设备则返回 0 */
src/device/virtio/virtio_driver.hpp:121
↓ 1 callersFunctionGetKernelPagePermissions
获取内核页面权限
tests/unit_test/mocks/cpu_io.h:99
↓ 1 callersMethodGetNextDeliverableSignal
* @brief 获取下一个可投递的信号编号 * @return int 信号编号,无可投递信号返回 0 * @note 优先级从低编号到高编号 */
src/include/signal.hpp:127
↓ 1 callersMethodGetPlic
* @brief 获取 PLIC 信息 * @return Expected<std::tuple<...>> * <地址,长度,中断源数量,上下文数量> * @pre fdt_header_ 不为空 * @see https://github.com/qem
src/include/kernel_fdt.hpp:310
↓ 1 callersMethodGetQueueReady
src/device/virtio/transport/pci.hpp:35
↓ 1 callersMethodGetRegistry
* @brief 访问驱动注册表。 * * @return DriverRegistry& 驱动注册表实例 */
src/device/include/device_manager.hpp:96
↓ 1 callersFunctionGetResourceTypeName
* @brief 获取资源类型的字符串表示(用于调试) * @param type 资源类型 * @return 类型名称字符串 */
src/task/include/resource_id.hpp:45
↓ 1 callersMethodGetSectorSize
src/device/virtio/device/blk/virtio_blk_vfs_adapter.hpp:66
↓ 1 callersMethodGetStateId
* @brief 获取当前状态 ID(线程安全) * @return etl::fsm_state_id_t 当前状态 ID * @note 使用 acquire 语义从 atomic 缓存读取, * 无需持有与 Receive() 相同的锁即可安全调用 */
src/task/include/task_fsm.hpp:181
↓ 1 callersMethodGetValue
tests/unit_test/sk_unique_ptr_test.cpp:205
↓ 1 callersMethodGetVendorId
src/device/virtio/transport/pci.hpp:20
↓ 1 callersMethodHasData
* @brief 检查接收缓冲区是否有数据可读(不消耗数据) * @return true 如果有数据可读 */
src/device/pl011/pl011.hpp:59
↓ 1 callersMethodHasDeliverableSignal
* @brief 检查是否有可投递的信号 * @return true 有未屏蔽的待处理信号 */
src/include/signal.hpp:117
↓ 1 callersFunctionIdentityVirtToPhys
* @brief 恒等映射:物理地址 == 虚拟地址(早期启动 / 无 MMU 时的默认实现) * @param virt 虚拟地址 * @return 与输入相同的物理地址 */
src/include/io_buffer.hpp:25
↓ 1 callersMethodInit
* @brief 执行 virtio 设备初始化序列 * * 完整执行设备初始化流程(步骤 1-6): * 1. 重置设备(写入 0 到 status 寄存器) * 2. 设置 ACKNOWLEDGE 状态位(识别为 virtio 设备) * 3. 设置 DRIVER
src/device/virtio/device/device_initializer.hpp:65
↓ 1 callersMethodInitPlic
src/arch/riscv64/interrupt.cpp:135
↓ 1 callersFunctionInitTaskContext
src/arch/riscv64/arch_main.cpp:72
↓ 1 callersMethodIsDirectoryEmpty
src/filesystem/ramfs/ramfs.cpp:571
↓ 1 callersMethodIsMountPoint
src/filesystem/vfs/mount.cpp:217
↓ 1 callersFunctionIsPowerOfTwo
* @brief 检查值是否为 2 的幂 * * @param value 要检查的值 * @return true 表示 value 是 2 的幂,false 表示不是 * @note value 为 0 时返回 false * @see virtio-v1.2#2.6 Split Vi
src/device/virtio/virt_queue/misc.hpp:32
↓ 1 callersMethodIsValid
* @brief 检查 virtqueue 是否成功初始化 */
src/device/virtio/virt_queue/split.hpp:283
↓ 1 callersMethodLastUsedIdx
* @brief 获取驱动程序上次处理到的 Used Ring 索引 */
src/device/virtio/virt_queue/split.hpp:635
↓ 1 callersFunctionLoadElf
src/task/task_control_block.cpp:21
↓ 1 callersFunctionMb
Memory barrier stubs for unit testing
tests/unit_test/mocks/cpu_io.h:56
↓ 1 callersMethodOpen
* @brief 打开文件,准备底层 I/O 句柄 * @param file 文件对象 * @return Expected<void> 成功或错误 * @pre file != nullptr * @note 默认实现为空操作,适用于不需要额外打开步骤的文件系统(如 ra
src/filesystem/vfs/include/vfs_types.hpp:191
↓ 1 callersMethodOpenFil
src/filesystem/fatfs/fatfs.cpp:264
↓ 1 callersMethodProbeAll
src/device/device_manager.cpp:11
↓ 1 callersMethodPutChar
* @brief 写入一个字符 * @param c 待写入的字符 */
src/device/pl011/pl011.hpp:28
↓ 1 callersFunctionQemuExit
测试结束后退出 QEMU,success=true 表示全部通过
tests/system_test/system_test.h:208
← previousnext →201–300 of 1,141, ranked by callers