On Sun, 19 Apr 2020 18:58:03 -0700
Michael Cheponis <[email protected]> wrote:

> There is another motive, which is to show how it's possible to run a
> modern unix with a Real-Time process, specifically for robot
> control.  The other *nix OSs out there don't do Hard Real Time, the
> best I've seen is a microkernel below a regular kernel (not rump).
> Again, this makes things complicated.

You already can, that is "soft real time". NetBSD supports POSIX
fixed-priority real-time scheduling with SCHED_FIFO and SCHED_RR
scheduling policies. There also seems to be support for Pthread mutex
priority inheritance, i.e. pthread_mutexattr_setprotocol().

Also note that RPi-4 is not designed for "hard real time". It doesn't
even have ECC memory. It is using Cortex-A processors which don't give
you the same level of predictability and determinism as Cortex-R
processors. Cortex-A are application processors that are designed for
throughput and performance, hence things like out-of-order execution,
non-deterministic L1 and L2 caches, etc, are all bad for "hard real
time".

Reply via email to