BUPT-OS / RROS

RROS is a dual-kernel OS for satellites or other scenarios that need both real-time and general-purpose abilities. RROS = RTOS (Rust) + Linux (C).
https://bupt-os.github.io/website/
Other
567 stars 40 forks source link

rros: stax: add stax and corresponding driver to test #35

Closed was-saw closed 3 months ago

was-saw commented 7 months ago

The stage exclusion lock (stax) is a mechanism designed to serialize access to a shared resource between threads operating in different execution stages. It allows multiple threads within the same stage to share ownership of the lock, ensuring exclusive access to the guarded resource by either in-band or out-of-band threads at any given time. This prevents concurrent access from threads in different stages, facilitating "phased sharing" of resources and ensuring the integrity of critical operations. Stax locks provide a means to safely implement common drivers shared between in-band and out-of-band users, addressing issues of concurrency and synchronization within a multi-stage execution environment. I have implemented this kernel struct and a corresponding drivers used by libevl's test.

Richardhongyu commented 3 months ago

Don't push more commits. Just update the original commits.