Real-Time Virtualization Software to Enable Embedded Systems Integration
Source Newsroom: Washington University in St. Louis
Newswise — Modern automobiles are marvels of computation and electronics. Cars in recent years could have as many as 100 separate microprocessors, each with its own operating system (OS) and software applications. Traditionally, automobile manufacturer engineers built a vehicle’s computation from scratch, the end result being both an inefficient assembly and management of the different microprocessors, not to mention a bulky car. It’s estimated that the wiring and cables needed to hold the computation together comprised as much as one-third of the car’s weight.
“Our cars used to be pretty dumb — you admired the engine, you kicked the tires,” says Chenyang Lu, PhD, professor of computer science & engineering at Washington University in St. Louis and a specialist in real-time embedded systems and virtualization. “But the novel, advanced features today come from intelligence.”
To circumnavigate this computational clunkiness and inefficiency, the automobile industry today is turning towards virtualization, which makes it possible to consolidate 100 separate, isolated microprocessors, each dedicated to a single application, into as few as a handful of multicore, powerful microprocessors, each running tens of applications.
Virtualization allows for the running of multiple copies of virtual machines, each with an entire software stack from the application to the operating system, on the same physical machine, allowing for consolidation and flexibility of allocating resources.
“You avoid separate hardware that has to be maintained and integrated,” Lu says. “This adds weight and cost to everything.”
A popular virtualization software is called Xen. Originally developed by the University of Cambridge in the United Kingdom, Xen is used by many cloud computing companies, such as Amazon. In cloud computing, a data center provides the use of virtual machines and software packages to users with Internet access. It leverages virtualization technology where users can essentially buy virtual machines with varying speeds and resources. Cloud computing drives mobile phone use, video downloading and many information technology applications.
A major challenge that Xen faces in the embedded systems domain is integration of virtual machines while maintaining their real-time performance guarantees – making sure that all the applications ultimately are run and executed on time.
“In embedded systems such as a car, there are significant benefits to integrate many subsystems virtually on the same common platform,” Lu says. “The problem is that all of the subsystems are competing for the same CPU resources, and real-time performance goes out the window.”
The challenge is as daunting as coordinating an octopus’ legs to run the high hurdles. To address this problem, Lu has developed RT-Xen, an open-source system software to deal with virtual machine scheduling.
“The technical problem is: How do you schedule the virtual machines to run on the multicore processors so that they finish their real-time tasks within their timing constraints?” Lu says.
Lu and School of Engineering & Applied Science colleague Christopher Gill, PhD, professor of computer science & engineering, have received a three-year, $304,000 grant from the Office of Naval Research to extend RT-Xen into a new real-time virtualization platform for embedded systems and real-time cloud computing services. This project is in collaboration with Insup Lee, PhD, professor of computer science at the University of Pennsylvania.
RT-Xen runs within a layer of software called the virtual machine monitor that sits beneath the virtual machines. RT-Xen schedules the execution of the virtual machines, and the OS in each virtual machine schedules the “threads,” or applications, to run on the virtual part of the CPU when it gets scheduled on the actual, physical CPU.
“It’s actually a two-level process that’s very tricky because it’s not just allocating memory or disk space, but timing the CPU so that every application can finish on time,” Lu says.
In addition to supporting embedded systems integration, Lu says cloud computing and virtualization technologies are “growing exponentially, with many emerging real-time applications that could benefit from RT-Xen in the future,” he says.
These include autonomous vehicle guidance, intelligent transportation, online gaming over the cloud to run games on mobile phones and tablets, and disaster relief. In the area of intelligent transportation, for instance, he envisions RT-Xen becoming a vital virtualization platform for cloud computing services that coordinate the gathering and analysis of camera, video and car sensor data in real-time to mitigate congestion.
The School of Engineering & Applied Science at Washington University in St. Louis focuses intellectual efforts through a new convergence paradigm and builds on strengths, particularly as applied to medicine and health, energy and environment, entrepreneurship and security. With 82 tenured/tenure-track and 40 additional full-time faculty, 1,300 undergraduate students, 700 graduate students and more than 23,000 alumni, we are working to leverage our partnerships with academic and industry partners — across disciplines and across the world — to contribute to solving the greatest global challenges of the 21st century.