[riot-notifications] [RIOT-OS/RIOT] doc/rdm: RFC - design goals (#10162)

danpetry notifications at github.com
Fri Feb 1 11:35:01 CET 2019

danpetry commented on this pull request.

> +Above the HAL, the only thing that modules should know about hardware is
+whether a required feature is there or not. If it isn't, the module should
+adapt accordingly, or not compile.
+## Real-time capabilities
+Different real-time guarantees are required for different use cases. Low
+frequency sensing needs only soft real-time support and can handle less timing
+accuracy so long as the timers support long timescales. High-frequency sensing
+and control applications need hard real-time guarantees and sub-millisecond
+timing accuracy.
+RIOT should deliver soft real-time performance by default, to cover the widest
+range of use cases. Programs with hard deadlines should be achievable with more
+expertise. It should provide timers which can competently handle the timescales
+of any application.

Summarising the aspects of section V.B of the paper which deal with design intentions for meeting deadlines, I've got:

The kernel's scheduler is based on O(1) operations, meaning that the time needed to switch to a different thread has an upper bound. Tasks also do not have parallel operation mimicked by regular switching upon timer ticks. This allows for deterministic, real-time system behavior, addressing tasks of various criticality, provided task priorities are configured coherently.

Taking out the requirements (not design solutions) from this, we might have

Deterministic real-time behaviour should be achievable, allowing for the support for tasks of various criticality, provided task priorites are configured coherently.

How does this sit with people.

You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.riot-os.org/pipermail/notifications/attachments/20190201/25574cd0/attachment.html>

More information about the notifications mailing list