Crates.io | clock-bound-shm |
lib.rs | clock-bound-shm |
version | |
source | src |
created_at | 2024-04-09 20:12:25.074212+00 |
updated_at | 2025-05-07 22:56:25.013446+00 |
description | A library used to interact with shared memory in ClockBound. |
homepage | |
repository | https://github.com/aws/clock-bound |
max_upload_size | |
id | 1202814 |
Cargo.toml error: | TOML parse error at line 27, column 1 | 27 | autolib = false | ^^^^^^^ unknown field `autolib`, expected one of `name`, `version`, `edition`, `authors`, `description`, `readme`, `license`, `repository`, `homepage`, `documentation`, `build`, `resolver`, `links`, `default-run`, `default_dash_run`, `rust-version`, `rust_dash_version`, `rust_version`, `license-file`, `license_dash_file`, `license_file`, `licenseFile`, `license_capital_file`, `forced-target`, `forced_dash_target`, `autobins`, `autotests`, `autoexamples`, `autobenches`, `publish`, `metadata`, `keywords`, `categories`, `exclude`, `include` |
size | 0 |
This crate implements the low-level IPC functionality to share ClockErrorBound data and clock status over a shared memory segment. It provides a reader and writer implementation to facilitate operating on the shared memory segment.
Clock status are retrieved directly from chronyd
tracking data.
Unknown
: the status of the clock is unknown.Synchronized
: the clock is kept accurate by the synchronization daemon.FreeRunning
: the clock is free running and not updated by the synchronization daemon.Disrupted
: the clock has been disrupted and the accuracy of time cannot be bounded.FSM drives a change in the clock status word stored in the ClockBound shared memory segment. Each transition in the FSM is triggered by chrony
. See following state diagram for clock status in shared memory:
SyscallError(Errno, &'static CStr)
: a system call failed.
SegmentNotInitialized
: the shared memory segment is not initialized.SegmentMalformed
: the shared memory segment is initialized but malformed.CausalityBreach
: failed causality check when comparing timestamps.SegmentVersionNotSupported
: the shared memory segment version is not supported.