Expand description
Widely-shared type definitions.
Modules§
- access_
trace - Record types of the access trace (
--record-access-trace-to). - backend_
engagement - Machine-readable evidence that the selected backend performed its own work.
- build_
info - Machine-readable facts about a Hermit binary.
- canonical_
test_ epoch - The one virtual-time epoch tests and E2E cells pass when they need a fixed
one, as
--epochorHERMIT_EPOCH:hermit run --strictrefuses a run whose epoch would come from the host clock. Bump it here and nowhere else. - collections
- config
- Detcore configuration and widely used types.
- container_
mounts - The guest’s container mount table: the mounts
/proc/<pid>/mountinfoand/proc/<pid>/mountsshow, which hermit-cli builds once, in the completed container namespace before the guest starts, and Detcore renders on every backend (package K slice K3a, https://github.com/rrnewton/hermit/issues/4213). - cpu_
profile - The virtual CPU a guest sees (https://github.com/rrnewton/hermit/issues/4243).
- fd
- futex
- happens_
before - Happens-before edges: a sparse, authored partial order over dynamic events.
- host_
capability - Closed host-capability vocabulary and probes shared by validation records.
- host_
input - The host identity of a file a guest opened.
- liteinst_
initial_ image - Bounded InitialImage launch packet shared by the host and private runtime.
- liteinst_
native_ exec_ input - Separate, inactive native Initial/Successor bootstrap input data.
- liteinst_
native_ exec_ runtime - Exact native runtime/dispatch-sequence envelope, separate from admission. Exact fixed runtime envelope shared by native consumer and coordinator. Decoding shape is not authority to restore counters or publish an image.
- liteinst_
native_ exec_ state - Exact versioned neutral cut envelope outside opaque Tool state. Exact neutral identity envelope around opaque Tool and backend state.
- logdiff_
policy - Shared policy tokens for the log comparator and report consumers.
- network_
engine - The pure state machine behind network record and replay.
- network_
trace - Versioned data model for schedule-independent external network input.
- pedigree
- An example that tracks thread pedigree using local state.
- pid
- procfs
- Types and parsers shared by procfs producers and consumers.
- replay_
departure - Bounded observations of a faithful preemption replay leaving its history. These observations do not establish a timer cause or a common replay prefix.
- schedule
- summary
- Summaries of complete hermit runs.
- syscall_
histogram - Per-run syscall histograms: how many times the guest made each syscall, and what Detcore did with it.
- time
- virtual_
timeout - Admission for a virtual bound whose scheduler must observe final signal delivery.
Macros§
- canonical_
test_ epoch - The canonical test epoch as a string literal, for
concat!. - host_
no_ rdrand_ residual - The host-profile caveat, shared by help and admission diagnostics.
- v3_
residual - The residual as a literal, so that the command-line help can include it
with
concat!whileV3_RESIDUALstays the one source of its words.
Enums§
- Terminal
Outcome - How Detcore’s scheduler ended a run itself, with a status and a stderr class
line of its own: NEITHER KIND IS A GUEST RESULT. A deadlock is a verdict of
Hermit’s model (see
HERMIT_GUEST_DEADLOCK_EXIT) and a virtual timeout is a bound Hermit imposed, so--verify(under the default--verify-allow=success), chaos-stress andanalyzedo not take either as the guest’s outcome. Neither is a Hermit failure (125) either.
Constants§
- HERMIT_
GUEST_ DEADLOCK_ EXIT - Exit status for a run that DEADLOCKED UNDER HERMIT’S MODEL: Detcore’s scheduler found every remaining guest thread blocked on something no later turn can supply (its “Deadlock detected” report) and ended the run.
- HERMIT_
MODEL_ DEADLOCK_ LINE - The stderr class line Hermit prints, last, for a run that ended with
HERMIT_GUEST_DEADLOCK_EXIT: a deadlock under Hermit’s model. Named for the model, not the guest, because the verdict is only as complete as the model (seeHERMIT_GUEST_DEADLOCK_EXIT). - HERMIT_
POLICY_ REFUSAL_ EXIT - Exit status for a run HERMIT DELIBERATELY REFUSED, as distinct from one where hermit itself broke.
- HERMIT_
SIGINT_ DEATH_ EXIT 128 + SIGINT. Spelled from the shared helper so it cannot drift from the band, and pinned below so it cannot drift from 130.- SIGNAL_
EXIT_ BASE - The shell’s base for “killed by signal N”: a process killed by signal
Nis conventionally reported as128 + N.
Functions§
- signal_
exit_ status - The status a signal-terminated run reports,
128 + signo. - signal_
from_ exit_ status - Recover the signal from a
128 + signostatus, orNoneif it is not in the band.