VEST: Component-based Embedded Systems

Embedded systems are proliferating at an amazing rate with no end in sight. In 1998 only 2% of all processors where used for general purpose workstations and 98% for embedded systems. The percentage of processors used for workstations is rapidly approaching 0% for the year 2000. Success of embedded systems depends on low cost, a high degree of tailorability, quickness to market, cost-effective variations in the product, and sometimes flexible operation of the product. The reliability of these products and the degree of configurability will become paramount concerns. Currently, there is no efficient way to build software for these systems. The use of component based software for constructing and tailoring these systems has promise. However, most components are too heavyweight and don't explicitly address real-time, memory, power and cost constraints. What is required is a new type of component that is lightweight and relates to the physical and real-time properties of embedded systems.

The first part of the solution is developing the new components themselves. This problem is where most people have spent their energies. While this is a necessary step, it is the easiest step and it ignores fully addressing how the components interact with other components or how they fit into a component infrastructure. The second problem is that while significant work has been done in developing CORBA, DCOM, Jini components, much less has been done with components suitable for embedded systems. Third, most tools available for the configuration process provide little more than linking or an extended “make” capability. It is the designer who has to know everything about the components and their (often hidden) constraints. For example, a designer may know that the combination of 2 seemingly unrelated components leads to unpredictable delays in network protocol processing. What is needed are tools that support the specification of embedded system requirements followed by knowledgeable and helpful construction of the embedded system with careful analysis of component dependencies as well as the time, memory, power, and cost constraints. The final product must offer as many guarantees as possible along many dimensions including correctness, performance and reliability. Our work is focusing on the development of effective composition, configuration, and reconfiguration mechanisms, and the associated dependency and non-functional analyses for real-time embedded systems. To start we are focusing on the construction of the OS-like portion of embedded systems, application-specific operating systems.

Application specific operating systems (ASOS) have been around for quite some time, but at a fairly high level of granularity, e.g., in microkernel architectures you can tailor your OS needs by running various OS functions as user level processes. However, we are developing application specific operating system components at a very fine level of granularity. This would enable the construction of microkernels themselves as well as more specialized system software for information products including embedded systems and real-time systems.

One key theme for our work is the notion of reconfigurable HW/OS. Since the first microkernel appeared, there has been support for Application Specific Operating Systems. ASOS represent a form of reconfiguration and many research projects have attempted to refine this concept to provide lower cost and higher performance. With embedded systems becoming more prevalent, there is another impetus for reconfigurability. In our work we are interested in reconfigurability from design time to runtime. We are also looking into exploiting new hardware features that allow very dynamic re-initializing of FPGAs (i.e., reconfigurability of HW on-the-fly) and the impact of such HW on the OS. One specific project we have is the development of component-based microkernels that are hot swappable. In particlar, we are looking into ways in which to write OS components that permit hot swapping.

More Information

More information about this project can be obtained from our publications.