-
Notifications
You must be signed in to change notification settings - Fork 2
Home
The Docbook is the place to find what RK0 is on about.
It acknowledges (or has not forgotten) the processs/thread abstraction, and the software design approach inherited from general purpose systems has 'time' as an afterthought. Conservative policies make Response-Time-Analysis easier. A (comprehensive) set of modular services – some quite distinctive – are tailored for concrete real-time demands.
Q: Why there is no release yet?
A: A release is serious stuff. It will exist when:
- The system is characterised consistently.
- A seamless test harness for eventual contributors can be pushed;
- and a CI can be pushed.
Note
Expect v0.x.x for a long time, or maybe jump-in to collaborate.
Q: I heard not splitting user-space from kernel-space makes a bad, lame, last-week, toy-kernel, What you would say?
_A: First, to get some real-time literacy (Buttazzo, Bertolotti, Kopetz, etc.).
Second, not every chip RK0 supports has an MPU. Why? Because there is a demand for them. And I ensure they are not coffee-machines - they are controlling loops on plant floors. (not running what should be handled by a moderately small, MMU equipped device running a tailored OpenBSD)
Am I saying that you do not ever need that? Not at all! I exposing a design choice rationale that has gains and drawbacks.
An MPU can be extremely useful - it is a Memory Firewall. But it is not free: it has impact on determinism and jitter, coarse memory utilisation, not just on raw performance. Knowing when not to use it is also engineering.
(Yes, Privilege levels are still allowed with no MPU on the target architectures. Reason: MPU is an external device, the vendor (not ARM) chooses to attach or not.)
Going further: Safety/security standards (IEC 61508, ISO 26262, DO-178, etc.) with regard to RK0:
-
As stated, RK0 links altogether into a single image**. It is application-specific, hardware-dependent.
-
A firmware update is updating the entire image. There is no 'hosted application'.
A system employing an RT-Executive like RK0: small codebase, static configuration bias, and strictly bounded behaviour, has gains for a certification process: these characteristics make analysis, testing, and traceability simpler. Even formal proofs would be made easier.
Copyright (C) 2025 Antonio Giacomelli | www.kernel0.org