4.2 Real-Time Operating Systems
[This Section is WIP, to be supplied.
It deals with the real-time operating system (RTOS) subset of real-time computing systems. An RTOS’s core logic is based on the QoS-driven management of resources—both logical (e.g., actions, synchronizers) and physical (e.g., processors, I/O)—for application-specific acceptably satisfactory timeliness and predictability of timeliness under the current circumstances.
The most familiar case of RTOS resource management is scheduling of processing elements (e.g., threads’ use of processor cycles) to acceptably satisfy application-specific optimality criteria—in general (for dynamically real-time computing systems) despite kinds and degrees of dynamic uncertainties. Thus, this section of the preview and book emphasizes scheduling (more generally, sequencing) algorithms and heuristics using a variety of different mathematical approaches for seeking optimality of task timeliness and predictability of timeliness. The presence of dynamic uncertainties almost inevitably requires non-deterministic (including, but not limited to, stochastic) system and task models and sequencing heuristics.
The uncertainties initially introduced in Chapter 1 can be viewed as scheduling adversaries, because their number and kinds and degrees complicate (and perhaps prevent) the construction of acceptably satisfactory schedules.
One advantage of that viewpoint is that it provides models and metrics for measuring the acceptability (with respect to the optimality criteria) of alternative schedules with respect to specific adversaries. It also facilitates reasoning about potentially feasible trade-offs between influenceable uncertainties and schedule acceptability.
A second advantage of the adversary viewpoint in certain systems and operational contexts is that some of these scheduling adversaries may be caused by antagonistic intentions (e.g., malware in the software load, hostile interference in the operational context) instead of being intrinsic. Then, rather than trade-offs, adversarial prevention, remediation, and recovery approaches are needed.
As with the encompassing class of real-time computing systems, the usual extraneous non-QoS properties attributed to RTOS’ are mentioned only in contrast with the core properties. An exception to that is a discussion of de facto RTOS standards, notably the Open Group POSIX real-time extensions [ ]. The Wikipedia page for RTOSs suffers from being inaccurate and incomplete, and that is explained in this Section.]