An introduction to a basis for generalizing the topic of real-time systems
from the special case of conventional static ones
to the general case of dynamic – including distributed – time-critical systems
This document provides a brief overview of my perspective on “real-time systems.” Its primary (but not only) goal is to overcome the misconception that real-time computing is – as traditionally believed – confined to the niche of static, primarily periodic, almost always centralized, small scale systems, which fail if a deadline is missed. In both theory and practice, the field of real-time systems (including, but not limited to, computing) is much broader, more effective, and more complex than that.
My perspective arose, and has been continually developed and refined, from my decades of experience building dynamic (usually distributed) real-time systems.
This is not a course on real-time computing. It is a brief introduction to an elucidation of the few but most fundamentally important core principles that are commonly misunderstood by both the research and practitioner real-time communities. These misunderstandings confuse the acquisition of real-time systems and their components, and limit the kinds and capabilities of real-time systems that can be built.
The understanding offered by the perspective briefly summarized here can lead to novel technologies and methodologies (that I will describe) for superior creation of certain (but not all) real-time systems. But just the understanding per se can enable more cost-effective creation, acquisition, and use of traditional real-time computing systems.
The audience for this material includes both practitioners and researchers having either little or extensive experience in the field of real-time computing systems. It sometimes happens that the more a person has worked in the traditional real-time field, the less willing and able they are to open their minds to new ideas (a human trait that we all suffer from in one context or another–even Einstein rejected quantum mechanics). Conversely, it usually happens that people who have few if any preconceived notions about real-time computing find the ideas here to be intuitively obvious.
This web site also includes some selected papers published by my research team, two implemented example use cases (unfortunately most of our application of these concepts and technologies are in classified DoD systems), and some reviews I have written of relevant books. Our production of research papers has become lower priority in the last few years than applying our research results, and to performing my consulting work (which has a much broader scope than this topic). Likewise, reviewing books is very time-consuming, and so has fallen behind as my consulting has increasingly dominated my work. I have added a blog to the web site which I hope will facilitate more rapid commentary and interaction with interested visitors to this site.
E. Douglas Jensen is internationally recognized as one of the original pioneers, leading visionaries, and accomplished engineers of distributed real-time computer systems.
The traditional concepts and terminology of “real-time computing” inevitably are limited to static, primarily periodic, almost always centralized, small scale systems. Read More >