Microkit SDF
- class sdfgen.SystemDescription(arch: Arch, paddr_top: int)
Class for describing a Microkit system. Manages all Microkit resources such as Protection Domains, Memory Regions, Channels, etc.
- class Arch(*values)
Target architecture. Used to resolve architecture specific features or attributes.
- AARCH32 = 0
- AARCH64 = 1
- RISCV32 = 2
- RISCV64 = 3
- X86 = 4
- X86_64 = 5
- class Channel(a: ProtectionDomain, b: ProtectionDomain, *, a_id: int | None = None, b_id: int | None = None, pp_a: bool | None = None, pp_b: bool | None = None, notify_a: bool | None = None, notify_b: bool | None = None)
- property pd_a_id: int
- property pd_b_id: int
- class Map(mr: MemoryRegion, vaddr: int, perms: str, *, cached: bool = True)
- class ProtectionDomain(name: str, program_image: str, priority: int | None = None, budget: int | None = None, period: int | None = None, passive: bool | None = None, stack_size: int | None = None, cpu: int | None = None)
- add_child_pd(child_pd: ProtectionDomain, child_id=None) int
Returns allocated ID for the child.
- property name: str
- set_virtual_machine(vm: VirtualMachine)
- class VirtualMachine(name: str, vcpus: List[Vcpu], priority: int | None = None, budget: int | None = None, period: int | None = None)
- class Vcpu(*, id: int, cpu: int | None = None)
- property name: str
- add_mr(mr: MemoryRegion)
- add_pd(pd: ProtectionDomain)
- render() str
Generate the XML view of the System Description Format for consumption by the Microkit.