Go to file
Chris Copeland b9957f0957
remove rt_mutex_holder, avoid priority donation to an interrupt
2024-03-31 22:42:54 -07:00
arch remove unnecessary barriers in hercules/vic.S, add comments 2024-03-25 09:39:48 -07:00
cxx refactor ready list management and make lower priority numbers higher priority 2024-02-24 03:37:52 -08:00
examples remove sem.h include from mutex.h 2024-03-14 03:18:25 -07:00
include/rt remove rt_mutex_holder, avoid priority donation to an interrupt 2024-03-31 22:42:54 -07:00
rust change rust condvar sem max value to match C 2024-03-31 18:36:20 -07:00
src remove rt_mutex_holder, avoid priority donation to an interrupt 2024-03-31 22:42:54 -07:00
.clang-format BreakAfterAttributes: Leave 2023-09-19 22:42:54 -07:00
.dockerignore add docker setup 2022-08-02 02:21:14 -07:00
.gitignore add rust interfaces and examples 2023-07-30 20:52:18 -07:00
.rustfmt.toml add rust interfaces and examples 2023-07-30 20:52:18 -07:00
Cargo.toml bump rust package version to 0.1.1 2024-03-27 02:07:21 -07:00
Dockerfile add C++ interfaces 2023-07-15 22:46:40 -07:00
LICENSE add apache v2 license 2018-09-28 00:50:06 -07:00
README.md add top-level and per-arch README.md 2023-09-23 20:39:28 -07:00
SConstruct refactor MPU interface, simplify start and unify creation of idle task 2023-10-10 23:09:58 -07:00
docker.bash remove docker username argument 2022-12-24 16:36:54 -08:00
test.bash run tests in parallel 2024-03-19 21:12:54 -07:00

README.md

rt

rt is a real-time operating system capable of full preemption.

rt provides many familiar synchronization interfaces and implements them with atomics for high performance and preemptibility. rt's non-blocking interfaces can be used safely in both tasks and interrupts, and it does not rely on disabling interrupts to implement synchronization. On architectures without hardware support for atomics, interrupt masking is used to provide an interface for atomics with very short gaps in interrupt availability.