By Committee On Networked Systems Of Embedded Computers
Continued advances in information technologies are enabling a growing number of physical devices to be imbued with computing and communications capabilities. Aircraft, cars, household appliances, cellular telephones, and health monitoring devices all contain microprocessors that are being linked with other information processing devices. Such examples represent only the very beginning of what is possible. As microprocessors continue to shrink, wireless radios are also becoming more powerful and compact. As the cost of these and related technologies continues to decrease, computing and communications technologies will be embedded into everyday objects of all kinds to allow objects to sense and react to their changing environments. Networks comprising thousands or millions of sensors could monitor the environment, the battlefield, or the factory floor; smart spaces containing hundreds of smart surfaces and intelligent appliances could provide access to computational resources.
Getting to this point will not be easy. Networks of embedded computers pose a host of challenges qualitatively different from those faced by more traditional computers or stand-alone embedded computers because they will be more tightly integrated with their physical environments, more autonomous, and more constrained in terms of space, power, and other resources. They will also need to operate, communicate, and adapt in real time, often unattended. Enabling such innovation will require that a number of research challenges be overcome. How can large numbers of embedded computing devices assemble themselves seamlessly into an integrated network? How can their performance be guaranteed? How can social issues raised by the advent of more pervasive information collection and processing--for example, concerns about privacy, robustness, and usability--be addressed?
This report examines both issues related to components of embedded computers--such as hardware needs, operating systems, programming capabilities, and human interfaces--and systems-level issues resulting from the interconnection of multiple embedded computers--system architectures, coordination, adaptation, reliability, security, safety, interoperability, stability, and guaranteed performance. To that end, the committee attempted to answer questions such as the following:
- What are networked systems of embedded computing systems? How do networks of embedded computers differ from more traditional computer networks? How do these differences affect research needs?
- What types of applications could arise from greater networking of embedded systems?
- What are the general characteristics of different applications? What would be the benefits and capabilities of such systems?
- How can systems of interconnected embedded processors be more easily designed, developed, and maintained? How can system reliability, safety, operability, and maintainability be ensured in networked systems? How do such considerations differ for embedded and more traditional forms of computing?
- What kinds of advances are needed in enabling component technologies, such as hardware devices, operating systems, and communications networks, to make EmNets possible and more capable?
- What types of user interfaces are needed to allow users to interact with and to program systems composed of large numbers of interconnected embedded systems? How do these requirements differ for different kinds of users (experts, novices, system integrators)? What types of "programming" will consumers be expected to perform?
- How can the stability and effectiveness of interconnected systems of embedded computers be assured if individual components come from a wide variety of developers and use a variety of hardware and software platforms, some of which may run the latest versions of the software, and others of which may be several generations behind?