My research focus has been on theories, algorithms, architectures and tools for building real-time and embedded systems from components and validating their timing performance efficiently and reliably. The past two decades have ushered in tremendous advances in technologies needed to ensure predictable timing behavior and enable rigorous validation of real-time systems built from commodity hardware and software components. My students and I have contributed our fair share of techniques for these purposes. Our results are used extensively in PERTS (Prototyping Environment for Real-Time Systems), a system of schedulers and tools which we built in mid 90’s. PERTS puts important scheduling, resource management, and validation theorems and algorithms in a form ready for use by developers to validate, simulate and evaluate design alternatives of systems with critical timing requirements. PERTS was distributed to numerous universities and research laboratories worldwide and has been enhanced and commercialized.
My students and I have also developed the underlying principle of an open architecture for real-time applications. A common assumption underlying existing real-time techniques and standards is that the system is closed. To determine whether an application can meet its timing requirements, one must analyze detailed timing attributes and resource usages of all applications that share the platform. The need for detailed information prohibits independent development of components and invariably limits the configurability of real-time systems. Our open real-time system principle, convincingly demonstrated by Windows and Linux prototypes, makes it possible to tune and validate in an open environment the timing behavior of a real-time component independent of other components in the system and enables independently developed real-time and non-real-time applications to run together.
My recent research focuses on technologies for building personal and home automation and assistive devices and services. Some of them are primarily devices of convenience designed to enhance the quality of life and self-reliance of their users, including elderly individuals as well as people who are chronically ill or functionally limited. Other devices can also serve as point-of-care and automation tools for use at home and in care-providing institutions. Examples include smart medication dispensers and administration tools, autonomous home appliances and robotic helpers. These devices are human-centric, meaning that they are used at their users’ discretion, often for the purpose of complementing and compensating users’ skills and weaknesses. Such a device must be aff ordable, easy to use. It should be easily confi gured to work with a variety of sensors and rely on different support infrastructures. It should be customizable according to its user’s preferences and able to adapt to changes in user’s needs, mindset and skills. A major thrust of our research has been directed towards system architecture, components, platforms and tools for building such devices and services at low-cost, including the development of an embedded workflow framework and a simulation environment. Recent results of this work and links to open source software projects can be found at SISARL homepage http://sisarl.org.