MCPcopy Create free account

hub / github.com/Simple-XX/SimpleKernel / types & classes

Types & classes206 in github.com/Simple-XX/SimpleKernel

↓ 174 callersClassError
错误类型,用于 std::expected
src/include/expected.hpp:337
↓ 5 callersClassPerCpu
@brief 每个 CPU 核心的局部数据
src/include/per_cpu.hpp:23
↓ 2 callersClassResourceId
* @brief 资源 ID * * [63:56] - 资源类型 (8 bits) * [55:0] - 资源数据 (56 bits) */
src/task/include/resource_id.hpp:77
↓ 1 callersClassGic
* @brief GIC 中断控制器驱动 * @see * https://developer.arm.com/documentation/100095/0003/Generic-Interrupt-Controller-CPU-Interface/GIC-programmers-model/C
src/arch/aarch64/gic/include/gic.h:17
↓ 1 callersClassInsClass
tests/system_test/ctor_dtor_test.cpp:58
↓ 1 callersClassPlic
* @brief Plic 驱动 * @see https://github.com/riscv/riscv-plic */
src/arch/riscv64/plic/include/plic.h:20
↓ 1 callersClassVirtioBlk
src/device/virtio/device/blk/virtio_blk.hpp:50
ClassAbsClass
tests/system_test/ctor_dtor_test.cpp:50
ClassAcpi
* @brief ACPI 驱动 * * 提供 ACPI 表结构定义和基本的表解析能力。 * * @see https://uefi.org/sites/default/files/resources/ACPI_Spec_6_5_Aug29.pdf */
src/device/acpi/acpi.hpp:18
ClassArrayObj
tests/unit_test/sk_unique_ptr_test.cpp:241
ClassAvail
src/device/virtio/virt_queue/split.hpp:103
EnumAvailFlags
src/device/virtio/virt_queue/split.hpp:57
ClassBase
tests/unit_test/sk_unique_ptr_test.cpp:203
ClassBaseEnvTest
tests/unit_test/vfs_test.cpp:98
ClassBasicInfo
@brief 内核基础信息(物理内存、内核地址、CPU 核数等)
src/include/basic_info.hpp:26
ClassBlkConfig
* @brief 块设备配置空间布局 * @see virtio-v1.2#5.2.4 Device configuration layout * * 设备配置空间包含设备的静态配置信息,如容量、最大段大小、 * 几何信息、拓扑信息等。驱动程序通过传输层读取这些信息。 * * @note
src/device/virtio/device/blk/virtio_blk_defs.h:59
EnumBlkConfigOffset
* @brief 块设备配置空间字段偏移量 * @see virtio-v1.2#5.2.4 * * 这些常量定义了各个配置字段在配置空间中的字节偏移量, * 用于通过传输层 ReadConfigU* 系列函数访问配置空间。 */
src/device/virtio/device/blk/virtio_blk_defs.h:134
ClassBlkDiscardWriteZeroes
* @brief Discard/Write Zeroes/Secure Erase 请求段 * @see virtio-v1.2#5.2.6 * * VIRTIO_BLK_T_DISCARD、VIRTIO_BLK_T_WRITE_ZEROES 和 * VIRTIO_BLK_T_SECURE
src/device/virtio/device/blk/virtio_blk_defs.h:225
EnumBlkFeatureBit
* @brief 块设备特性位定义 * @see virtio-v1.2#5.2.3 Feature bits * * 特性位用于在设备初始化期间协商设备功能。 * 驱动程序通过读取设备特性位来确定设备支持哪些功能, * 并通过写入驱动程序特性位来确认要使用的功能。 */
src/device/virtio/device/blk/virtio_blk_defs.h:20
ClassBlkLifetime
* @brief 设备生命周期信息 * @see virtio-v1.2#5.2.6 * * VIRTIO_BLK_T_GET_LIFETIME 请求的响应数据。 * 用于 eMMC/UFS 等存储设备报告磨损程度。 */
src/device/virtio/device/blk/virtio_blk_defs.h:247
ClassBlkReqHeader
* @brief 块设备请求头 * @see virtio-v1.2#5.2.6 Device Operation * * 所有块设备请求都以此结构开头,位于第一个描述符中(设备只读)。 * * @note 协议中所有字段采用小端格式 * @note 请求头后跟数据缓冲区(可选),最后是
src/device/virtio/device/blk/virtio_blk_defs.h:209
EnumBlkStatus
* @brief 块设备请求状态 * @see virtio-v1.2#5.2.6 * * 设备在请求完成后,在响应中写入状态字节。 */
src/device/virtio/device/blk/virtio_blk_defs.h:191
ClassBlockDevice
src/device/include/device_node.hpp:29
ClassBlockDevice
* @brief 块设备抽象基类 * @details 所有块设备驱动(virtio-blk、ramdisk 等)必须实现此接口。 * 块设备以固定大小的扇区 (sector) 为最小 I/O 单位。 */
src/filesystem/vfs/include/block_device.hpp:19
ClassBmallocLock
* @brief bmalloc 线程安全锁(基于 SpinLock) * @details 在 Lock() 时关中断 + 原子自旋,保证 malloc/free * 在 timer 抢占和多核环境下的安全性。 */
src/memory/memory.cpp:34
ClassBmallocLogger
bmalloc 日志回调(空实现)
src/memory/memory.cpp:22
EnumBusType
总线类型标识 — 为将来扩展 PCI/ACPI 总线预留的扩展点
src/device/include/device_node.hpp:14
ClassCStrLess
flat_map 中 const char* 键的比较器(使用 kstd::strcmp)。
src/device/include/driver_registry.hpp:49
ClassCalleeSavedContext
tests/unit_test/mocks/cpu_io.h:199
ClassCell
3rd/MPMCQueue/include/MPMCQueue.hpp:150
ClassCfsScheduler
* @brief CFS (Completely Fair Scheduler) 调度器 * * 基于虚拟运行时间 (vruntime) 的完全公平调度器。 * 每个任务根据其权重累积 vruntime,调度器总是选择 vruntime 最小的任务。 * * 特点: * - 完全公平:每
src/task/include/cfs_scheduler.hpp:29
ClassContentionArgs
tests/system_test/mutex_test.cpp:152
ClassCoreEnvironment
* @brief 单个核心的环境状态 */
tests/unit_test/mocks/test_environment_state.hpp:24
ClassCpuSchedData
* @brief 每个核心的调度数据 (RunQueue) */
src/task/include/task_manager.hpp:34
ClassCpuSchedData
src/include/per_cpu.hpp:18
ClassCpuSchedData
tests/unit_test/mocks/test_environment_state.hpp:17
ClassCustomDeleter
tests/unit_test/sk_unique_ptr_test.cpp:159
ClassDentry
* @brief Dentry — 目录项缓存(路径名 ↔ Inode 的映射) * @details Dentry 构成一棵树,反映目录层次结构。 * 支持路径查找加速。 */
src/filesystem/vfs/include/vfs.hpp:41
ClassDentry
src/filesystem/vfs/include/vfs_types.hpp:16
ClassDerived
tests/unit_test/sk_unique_ptr_test.cpp:207
ClassDesc
src/device/virtio/virt_queue/split.hpp:80
EnumDescFlags
src/device/virtio/virt_queue/split.hpp:44
ClassDescriptionHeader
src/device/acpi/acpi.hpp:68
EnumDeviceId
* @brief Virtio 设备 ID 定义 * @see virtio-v1.2#5 Device Types */
src/device/virtio/defs.h:15
EnumDeviceId
src/device/virtio/virtio_driver.hpp:35
ClassDeviceInitializer
src/device/virtio/device/device_initializer.hpp:46
ClassDeviceManager
* @brief 设备管理器 — 管理所有设备节点和驱动程序。 * * @pre 调用任何方法前,内存子系统必须已完成初始化 * @post ProbeAll() 执行完成后,已绑定的设备可供使用 */
src/device/include/device_manager.hpp:23
ClassDeviceNode
* @brief 单个设备的硬件资源描述。 * * 纯数据结构 — 无生命周期管理、无 DMA 缓冲区、 * 无并发原语。`bound` 受 DeviceManager::lock_ 保护 *(在整个 ProbeAll() 循环期间持有)。 */
src/device/include/device_node.hpp:39
EnumDeviceStatus
src/device/virtio/transport/transport.hpp:89
EnumDeviceType
设备分类
src/device/include/device_node.hpp:17
ClassDirEntry
目录项结构(用于 readdir)
src/filesystem/vfs/include/vfs_types.hpp:172
ClassDmaRegion
* @brief DMA 可访问内存区域的非拥有描述符 * * 将虚拟地址、物理(总线)地址和大小封装为单一值类型。 * 不拥有内存所有权——生命周期由分配器(如 IoBuffer)管理。 * * @note 类 POD 类型,可平凡拷贝,可安全按值或 const 引用传递。 */
src/include/io_buffer.hpp:37
ClassDriverEntry
* @brief 类型擦除的驱动条目 — 每个已注册驱动对应一条。 * * @pre 注册前 match/probe/remove 委托必须已绑定 */
src/device/include/driver_registry.hpp:37
ClassDriverRegistry
* @brief 驱动注册表 — 以 ETL vector 存储 DriverEntry,并附带 flat_map * 兼容索引。 * * 注册时构建 etl::flat_map(compatible 字符串 → 驱动索引), * 将 FindDriver 的复杂度从 O(N·M·K) 降至
src/device/include/driver_registry.hpp:62
ClassDsdt
src/device/acpi/acpi.hpp:165
ClassEarlyConsole
* @brief 早期控制台初始化类 * @note 通过全局构造在内核 main 之前初始化 PL011 串口输出 */
src/arch/aarch64/early_console.cpp:16
EnumErrorCode
内核错误码
src/include/expected.hpp:11
ClassExitWaitArgs
tests/system_test/cross_core_test.cpp:136
ClassFadt
src/device/acpi/acpi.hpp:102
ClassFatDirHandle
src/filesystem/fatfs/include/fatfs.hpp:284
ClassFatFileHandle
src/filesystem/fatfs/include/fatfs.hpp:276
ClassFatFsFileOps
src/filesystem/fatfs/include/fatfs.hpp:185
ClassFatFsFileSystem
* @brief FatFS VFS 适配器 * @details 将 FatFS (f_mount / f_open / f_read / ...) 封装在 vfs::FileSystem * 接口后。每个 FatFsFileSystem 实例独占一个 FatFS 逻辑驱动器
src/filesystem/fatfs/include/fatfs.hpp:25
ClassFatFsInodeOps
src/filesystem/fatfs/include/fatfs.hpp:130
ClassFatInode
src/filesystem/fatfs/include/fatfs.hpp:261
ClassFdTableTest
测试文件描述符表
tests/unit_test/vfs_test.cpp:153
ClassFifoScheduler
* @brief 先来先服务 (FIFO) 调度器 * * FIFO 调度器特点: * - 先进先出,适合对延迟敏感的实时任务 * - 不可抢占,任务运行直到主动让出 CPU * - O(1) 时间复杂度 */
src/task/include/fifo_scheduler.hpp:22
ClassFile
* @brief File — 打开的文件实例(每次 open 产生一个) * @details File 对象持有当前偏移量和操作方法指针。 * 多个 File 可以指向同一个 Inode。 */
src/filesystem/vfs/include/vfs.hpp:65
ClassFile
src/filesystem/vfs/include/vfs_types.hpp:17
ClassFileDescriptorTable
* @brief 进程级文件描述符表 * @details 每个进程(TaskControlBlock)持有一个 FdTable, * 将整数 fd 映射到 File 对象。 * fd 0/1/2 预留给 stdin/stdout/stderr。 */
src/filesystem/include/file_descriptor.hpp:23
ClassFileOps
File 操作接口
src/filesystem/vfs/include/vfs_types.hpp:182
ClassFileSystem
* @brief 文件系统类型基类 * @details 每种文件系统(ramfs/fat32/ext2 等)注册一个 FileSystem 实例。 * VFS 通过此接口挂载/卸载文件系统。 */
src/filesystem/vfs/include/filesystem.hpp:17
ClassFileSystem
src/filesystem/vfs/include/vfs_types.hpp:18
EnumFileType
文件类型
src/filesystem/vfs/include/vfs_types.hpp:22
ClassGenericAddressStructure
src/device/acpi/acpi.hpp:40
ClassGicd
src/arch/aarch64/gic/include/gic.h:31
ClassGicdCtlr
src/arch/aarch64/gic/include/gic.h:123
ClassGicdIidr
src/arch/aarch64/gic/include/gic.h:193
ClassGicdTyper
src/arch/aarch64/gic/include/gic.h:153
ClassGicr
src/arch/aarch64/gic/include/gic.h:410
ClassGuardType
@note 根据 Itanium C++ ABI,守护变量必须是 64 位 @see https://itanium-cxx-abi.github.io/cxx-abi/abi.html#once-ctor
src/libcxx/kstd_libcxx.cpp:111
ClassIdleScheduler
* @brief Idle 调度器 * * Idle 调度器特点: * - 只管理 idle 任务,通常只有一个 idle 任务 * - 当没有其他任务可运行时,调度 idle 任务 * - 最低优先级,只有在所有其他调度器都为空时才会被选中 * - O(1) 时间复杂度 */
src/task/include/idle_scheduler.hpp:19
ClassInode
* @brief Inode — 文件元数据(独立于路径名) * @details 每个文件/目录在 VFS 中有且仅有一个 Inode。 * Inode 持有文件的元信息和操作方法指针。 */
src/filesystem/vfs/include/vfs.hpp:16
ClassInode
Forward declarations
src/filesystem/vfs/include/vfs_types.hpp:15
ClassInodeOps
Inode 操作接口
src/filesystem/vfs/include/vfs_types.hpp:104
ClassInterrupt
src/arch/riscv64/include/interrupt.h:17
ClassInterrupt
* @brief AArch64 中断控制器实现 */
src/arch/aarch64/include/interrupt.h:19
ClassInterruptBase
* @brief 中断子系统抽象基类 * * 所有架构的中断处理必须实现此接口。 * 已知实现:PLIC(RISC-V)、GIC(AArch64) * * @pre 硬件中断控制器已初始化 * @post 可通过 RegisterInterruptFunc 注册中断处理函数 */
src/include/interrupt_base.h:23
EnumInterruptStatus
* @brief MMIO 中断状态位 * @see virtio-v1.2#4.2.2 Table 4.1: MMIO Device Register Layout */
src/device/virtio/transport/mmio.hpp:20
ClassInterruptWork
src/task/include/task_manager.hpp:279
ClassIoBuffer
* @brief 动态分配、对齐 IO 缓冲区的 RAII 封装 * * @pre 无 * @post 缓冲区内存已正确分配并对齐,析构时自动释放 */
src/include/io_buffer.hpp:85
ClassIoVec
* @brief Scatter-Gather IO 物理内存向量 * * 描述一段用于 DMA 传输的物理内存区域。 * * @see virtio-v1.2#2.7.5 The Virtqueue Descriptor Table */
src/device/virtio/virt_queue/misc.hpp:43
ClassKernelElf
* @brief ELF 文件相关 */
src/include/kernel_elf.hpp:22
ClassKernelFdt
* @brief FDT(Flattened Device Tree)解析器 * * 提供对 FDT 的解析功能,包括节点查找、属性读取、设备枚举等。 * * @pre FDT 数据必须是有效的 DTB 格式 * @post 通过各 Get* 方法可获取设备树中的硬件信息 * * @
src/include/kernel_fdt.hpp:47
ClassKernelFdtTest
tests/unit_test/kernel_fdt_test.cpp:12
EnumLevel
日志级别
src/include/kernel_log.hpp:29
ClassLockGuard
src/include/spinlock.hpp:131
ClassLogEntry
存储于 MPMC 队列中的日志条目
src/include/kernel_log.hpp:61
ClassMPMCQueue
3rd/MPMCQueue/include/MPMCQueue.hpp:28
ClassMatchEntry
驱动静态匹配表中的一条记录
src/device/include/driver_registry.hpp:25
next →1–100 of 206, ranked by callers