Expand description
Crate zerodds-corba-rt. Safety classification: STANDARD.
OMG Real-Time CORBA 1.0 (formal/2005-01-04) — pure-Rust no_std + alloc,
forbid(unsafe_code). Brings deterministic real-time behavior to the CORBA
model: end-to-end priority propagation, priority-aware thread pools
and priority-banded connections.
Implements:
Priority+PriorityMapping(§5.3/§5.4) — CORBA priority (-32768..32767) ↔ native OS priority (priority).PriorityModel(§5.4.1) —SERVER_DECLAREDvsCLIENT_PROPAGATED+PriorityModelPolicy; Threadpool/Lane (§5.7) + PriorityBand (§5.8) with priority-based selection (policy).RTCorbaPriorityServiceContext (id 10, §5.4.2) — propagation of the client priority over GIOP (propagation).RtCurrent(§5.5) — read/write access to the CORBA priority of the current context (current).RtMutex+PriorityInheritance(§5.6) — a blocking mutex with a priority-inheritance protocol against priority inversion (mutex).ThreadpoolRuntime(§5.7) — the runnable lanes-on-OS-threads realization with an injectable native priority hook (threadpool).TaskSet(scheduling profile) — static schedulability analysis (Liu & Layland bound + exact response-time analysis) (scheduling).
Spec: OMG Real-Time CORBA 1.0. Complementary to the DDS real-time QoS side (Deadline/Latency-Budget/Transport-Priority) for legacy CORBA code.
Re-exports§
pub use current::RtCurrent;pub use mutex::PriorityInheritance;pub use policy::Lane;pub use policy::PriorityBand;pub use policy::PriorityBandedConnectionPolicy;pub use policy::PriorityModel;pub use policy::PriorityModelPolicy;pub use policy::Threadpool;pub use policy::ThreadpoolPolicy;pub use priority::LinearPriorityMapping;pub use priority::Priority;pub use priority::PriorityMapping;pub use propagation::RT_CORBA_PRIORITY_SC_ID;pub use propagation::decode_priority_context;pub use propagation::encode_priority_context;pub use scheduling::Task;pub use scheduling::TaskSet;pub use mutex::RtMutex;stdpub use mutex::RtMutexGuard;stdpub use threadpool::DispatchError;stdpub use threadpool::NativePrioritySetter;stdpub use threadpool::ThreadpoolRuntime;std
Modules§
- current
RTCORBA::Current(RT-CORBA §5.5) — read/write access to the CORBA priority of the current execution context.- mutex
RTCORBA::Mutexwith priority inheritance (RT-CORBA §5.6).- policy
- Priority-Model + Threadpools/Lanes + Priority-Banded-Connections (RT-CORBA §5.4.1, §5.7, §5.8).
- priority
Priority+PriorityMapping(RT-CORBA §5.3/§5.4).- propagation
- Propagation of the client priority over GIOP (RT-CORBA §5.4.2).
- scheduling
- Static scheduling service (RT-CORBA scheduling profile): task model + a-priori schedulability analysis for fixed-priority preemptive scheduling.
- threadpool
- Runnable threadpool with priority lanes (RT-CORBA §5.7) — the
runtime realization of the structural model from
crate::policy.