KolibriOS kernel
Class List
Here are the classes, structs, unions and interfaces with brief descriptions:
 CAHCI_CTRAHCI controller structure
 CAPPDATAFields, marked as R now not used, but will be used soon, when legacy TASKDATA structure will be deleted
 CAPPOBJCommon object header
 CBGDESCRBlock group descriptor
 CCACHE_ITEMThis structure describes one item in the cache
 CDISKThis structure represents a disk device and its media for the kernel. This structure is allocated by the kernel in the 'disk_add' function, freed in the 'disk_dereference' function
 CDISKCACHEThis structure represents the disk cache. To follow the old implementation, there are two distinct caches for a disk, one for "system" data,and the other for "application" data
 CDISKMEDIAINFOThis structure holds information on a medium. Objects with this structure are allocated by the kernel as a part of the DISK structure and are filled by a driver in the 'querymedia' callback
 CFATInternal data for every FAT partition
 CFIS_DATAData FIS ? Bidirectional
 CFIS_DEV_BITSSet device bits FIS - device to host
 CFIS_DMA_SETUPDMA Setup ? Device to Host
 CFIS_PIO_SETUPPIO Setup ? Device to Host
 CFIS_REG_D2HRegister FIS ? Device to Host
 CFIS_REG_H2DRegister FIS ? Host to Device
 CGASACPI Generic Address Structure
 CGPEGPT Partition Entry, UEFI 2.6, Table 19
 CGPTHGUID Partition Table Header, UEFI 2.6, Table 18
 CHBA_CMD_HDRCommand header structure, size = 32 bytes
 CHBA_MEMGeneric Host Control registers
 CHBA_PORTPort Control registers
 CHBA_PRDT_ENTRYPhysical region descriptor table entry, size = 16 bytes
 CIPv4_FRAGMENT_entryThis structure will replace the ethernet header in fragmented ip packets
 Cmtrr_rangeMtrr_reconfigure keeps a list of MEM_WB ranges. This structure describes one item in the list
 CNODEHEADERExt4 extent tree tree node header
 CPARTITIONThis structure represents one partition for the kernel. This is a base template, the actual contents after common fields is determined by the file system code for this partition
 CPARTITION_TABLE_ENTRYThis is an external structure, it represents an entry in the partition table
 CPORT_DATAContains virtual mappings for port phys memory regions
 CTASKDATANote: in future TASKDATA will be merged into APPDATA
 CTIMERThis structure describes a timer for the kernel
 Cusb_config_descrUSB configuration descriptor
 Cusb_controllerController descriptor. This structure represents the common (controller-independent) part of a controller for the USB code. The corresponding controller-dependent part *hci_controller is located immediately before usb_controller
 Cusb_device_dataDevice-specific data
 Cusb_device_descrUSB device descriptor
 Cusb_endpoint_descrUSB endpoint descriptor
 Cusb_gtdThis structure represents one transfer descriptor ('g' stands for "general" as opposed to isochronous usb_itd). Note that one transfer can have several descriptors: a control transfer has three stages. Additionally, every controller has a limit on transfer length with one descriptor (packet size for UHCI, 1K for OHCI, 4K for EHCI), large transfers must be split into individual packets according to that limit
 Cusb_hardware_funcDescription of controller-specific data and functions
 Cusb_hub_descrHub descriptor
 Cusb_interface_dataInterface-specific data. Several interfaces of one device can operate independently, each is controlled by some driver and is identified by some driver-specific data passed as is to the driver
 Cusb_interface_descrUSB interface descriptor
 Cusb_pipePipe descriptor. An USB pipe is described by two structures, for hardware and for software. This is the software part. The hardware part is defined in a driver of the corresponding controller. The hardware part is located immediately before usb_pipe, both are allocated at once by controller-specific code (it knows the total length, which depends on the hardware part)
 Cusb_static_epThis structure describes the static head of every list of pipes
 Cusbhc_funcPointers to kernel API functions that are called from *HCI-drivers
 CWDATAWindow structure:
 CXFSInternal data for every XFS partition this is XFS partition structure most fields are unpacked or bswap'ed values of the superblock, see xfs_sb structure above
 Cxfs_bmbt_blockLong form header: bmap btrees xfs_btree_lblock is xfs_bmbt_block (xfs_btree.h)
 Cxfs_bmbt_irecUnpacked extent
 Cxfs_bmbt_keyKey structure for non-leaf levels of the tree
 Cxfs_bmbt_recPacket extent
 Cxfs_bmdr_blockBmap root header
 Cxfs_dinode_coreInode core structure: basic information about file
 Cxfs_dir2_blockGeneric single-block structure, for xfs_db
 Cxfs_dir2_block_tailTail of directory block
 Cxfs_dir2_data_entryActive entry in a data block aligned to 8 bytes tag appears as the last 2 bytes
 Cxfs_dir2_data_hdrHeader for the data blocks always at the beginning of a directory-sized block the code knows that XFS_DIR2_DATA_FD_COUNT is 3
 Cxfs_dir2_data_unionGeneric data entry
 Cxfs_dir2_data_unusedUnused entry in a data block
 Cxfs_dir2_leafBests and tail are at the end of the block for single-leaf only (magic = XFS_DIR2_LEAF1_MAGIC not XFS_DIR2_LEAFN_MAGIC)
 Cxfs_dir2_leaf_entryLeaf block entry
 Cxfs_sbSuperblock ondisk structure (xfs_sb.h) this is not the partition structure for XFS partition structure see XFS below
 Cxfs_timestampStructure to store create, access and modification time in inode core