contur2
Loading...
Searching...
No Matches
contur::KernelDependencies Struct Reference

Dependency bundle used to construct a Kernel. More...

#include <kernel.h>

Public Attributes

std::unique_ptr< IClockclock
 Simulation clock implementation.
std::unique_ptr< IMemorymemory
 Physical memory backend.
std::unique_ptr< IMMUmmu
 Memory management unit implementation.
std::unique_ptr< IVirtualMemoryvirtualMemory
 Virtual memory manager.
std::unique_ptr< ICPUcpu
 CPU implementation used by execution engines.
std::unique_ptr< IExecutionEngineexecutionEngine
 Execution engine (interpreter or native).
std::unique_ptr< ISchedulerscheduler
 Scheduler implementation.
std::unique_ptr< IDispatcherdispatcher
 Dispatcher orchestrating process lifecycle.
std::unique_ptr< IFileSystemfileSystem
 File system service.
std::unique_ptr< IpcManageripcManager
 IPC manager service.
std::unique_ptr< SyscallTablesyscallTable
 Syscall dispatch table.
std::size_t defaultTickBudget = static_cast<std::size_t>(DEFAULT_TIME_SLICE)
 Default per-dispatch tick budget used when caller passes 0.

Detailed Description

Dependency bundle used to construct a Kernel.

Definition at line 27 of file kernel.h.

Member Data Documentation

◆ clock

std::unique_ptr<IClock> contur::KernelDependencies::clock

Simulation clock implementation.

Definition at line 30 of file kernel.h.

◆ cpu

std::unique_ptr<ICPU> contur::KernelDependencies::cpu

CPU implementation used by execution engines.

Definition at line 42 of file kernel.h.

◆ defaultTickBudget

std::size_t contur::KernelDependencies::defaultTickBudget = static_cast<std::size_t>(DEFAULT_TIME_SLICE)

Default per-dispatch tick budget used when caller passes 0.

Definition at line 63 of file kernel.h.

◆ dispatcher

std::unique_ptr<IDispatcher> contur::KernelDependencies::dispatcher

Dispatcher orchestrating process lifecycle.

Definition at line 51 of file kernel.h.

◆ executionEngine

std::unique_ptr<IExecutionEngine> contur::KernelDependencies::executionEngine

Execution engine (interpreter or native).

Definition at line 45 of file kernel.h.

◆ fileSystem

std::unique_ptr<IFileSystem> contur::KernelDependencies::fileSystem

File system service.

Definition at line 54 of file kernel.h.

◆ ipcManager

std::unique_ptr<IpcManager> contur::KernelDependencies::ipcManager

IPC manager service.

Definition at line 57 of file kernel.h.

◆ memory

std::unique_ptr<IMemory> contur::KernelDependencies::memory

Physical memory backend.

Definition at line 33 of file kernel.h.

◆ mmu

std::unique_ptr<IMMU> contur::KernelDependencies::mmu

Memory management unit implementation.

Definition at line 36 of file kernel.h.

◆ scheduler

std::unique_ptr<IScheduler> contur::KernelDependencies::scheduler

Scheduler implementation.

Definition at line 48 of file kernel.h.

◆ syscallTable

std::unique_ptr<SyscallTable> contur::KernelDependencies::syscallTable

Syscall dispatch table.

Definition at line 60 of file kernel.h.

◆ virtualMemory

std::unique_ptr<IVirtualMemory> contur::KernelDependencies::virtualMemory

Virtual memory manager.

Definition at line 39 of file kernel.h.


The documentation for this struct was generated from the following file: