NetBSD-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Hard Real-Time?



On Sun, 19 Apr 2020 18:58:03 -0700
Michael Cheponis <michael.cheponis%gmail.com@localhost> 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".


Home | Main Index | Thread Index | Old Index