Reducing OS Boot Times for In-Car Computer Applications
A modern high-end car now comes equipped with a half dozen computers outside of the ones that run the engine. Vehicles now come with XM or Sirius radio, OnStar GPS and concierge, Network Car telemetry functions and built-in navigation systems from a number of vendors. The tops of vehicles now are adorned with sharkfin-shaped antennas for satellite audio, GPS and cellular networks. Although telemetry is the catch-all word for the new automobile-computer market, many in-car computer applications have little to do with remote measurement. Cars now may contain info-tainment related computers and MP3 players, such as the Phatnoise Audiokeg, and even may download those MP3s over Wi-Fi with Rockford Fosgate's Omnifi. And, let us not forget iPod and its mobile brethren, all of which spend much of their lives in the center console of a car, wired to its power and audio.
The problem with these computer-driven devices is, although they do one thing well, they aren't expandable and reprogrammable. Yet, besides the applications noted above, many people probably would wonder why they really need a general purpose computer in their cars. In many ways, the new devices for cars simply extend existing application models. For instance, XM and Sirius are more radio stations, and AudioKeg, Omnifi and MP3 players in general are large CD changers, which simply are much larger boxes of tapes.
The strength of a general purpose computer is it allows applications that haven't even been thought of yet to appear. In the early 1980s, people were receiving strong marketing messages that they needed a personal computer in their homes, but many didn't know why. To organize recipes? To keep a checkbook? But the emergence of killer applications continued until almost every household had a computer.
Killer application sounds like a very bad thing to use while driving a car, but the fact remains that many new applications no one has thought of yet will be possible to use with a general purpose platform. A single purpose Wi-Fi enabled audio jukebox can download MP3s and audio books--but can it get your e-mail and read it to you while you're on the road? Can it download all your blogs and read those to you? Can it share audio with other drivers on the road? Can it keep a full GPS log of your travels and allow you to annotate them as you go? Can it wake up and record your favorite public radio show over the weekend and have the other morning show ready for you on your commute home, à lá TiVo for radio? All these applications and more become possible with an open programmable platform.
Car stereos have been running Linux for years. The question now is how to get such a general-purpose platform into the mainstream and get developers working on new applications for it.
Although we've discussed our motivation for wanting general purpose computers in cars, it should be obvious that existing computers are unsuitable for the task. The major engineering challenges for getting existing computers into the car are heat, power, vibration and boot times.
Many of the above problems have been solved by some innovative vendors who have been working on these problems for the consumer and do-it-yourself system builder market. The embedded systems industry has been making shakable, bakeable, low-power, fast booting devices for years, but a popular mini-ITX form factor has been developed and adopted by a number of systems manufacturers, notably VIA Technologies, with their cheap, feature-packed, small and x86-compatible motherboards. These low power boards have CPUs that can run passively cooled (fanless) and boards designed for high heat environments. This, combined with the direct DC to DC power converters that provide ATX-like power directly from 12V batteries, have helped a large and growing community of car PC hobbyists get PCs into their cars. Laptop drives, rubber shock-mounting and ruggedized cases have all but solved the vibration problems. But with standard PC BIOSes doing everything from hard drive autodetection to plug and play, and then standard OSes taking from 30 seconds to a minute to start up, boot time remains a barrier for a car-ready computer.
Cold-booting the OS is one of the few options available to a car PC. Although many low power modes exist for desktops, these can draw as much as 100mA of current for such features as USB and Wake-on-LAN. Although this may be negligible for a computer plugged into the wall, in a car this is the battery-draining equivalent of leaving the dome light on. Thus, a full power down is necessary. Also, many of the shutdown circuits used in conjunction with car PCs completely cut power to the PC, sometimes quite abruptly, making even hibernation (the saving of the system state to disk) out of the question.
Waiting 30-60 seconds for a PC to boot once you get in your car is annoying and keeps car PCs out of the mainstream. When auto manufacturers specify in-car systems such as navigation, they usually insist on very, very rapid boot times, such as 100 milliseconds until the splash screen appears or 300 milliseconds until the system is usable.
The late John Muir took a philosophical approach to waiting for slow starts in his 1969 book How to Keep Your Volkswagen Alive, where he recommended rolling a cigarette and getting a good toke going, by which time the car will be warmed up and ready to drive. However, as smoking anything but cannabis has been all but outlawed (in California at least), the only solution that remains for car PCs is to reduce boot times.
Practical Task Scheduling Deployment
One of the best things about the UNIX environment (aside from being stable and efficient) is the vast array of software tools available to help you do your job. Traditionally, a UNIX tool does only one thing, but does that one thing very well. For example, grep is very easy to use and can search vast amounts of data quickly. The find tool can find a particular file or files based on all kinds of criteria. It's pretty easy to string these tools together to build even more powerful tools, such as a tool that finds all of the .log files in the /home directory and searches each one for a particular entry. This erector-set mentality allows UNIX system administrators to seem to always have the right tool for the job.
Cron traditionally has been considered another such a tool for job scheduling, but is it enough? This webinar considers that very question. The first part builds on a previous Geek Guide, Beyond Cron, and briefly describes how to know when it might be time to consider upgrading your job scheduling infrastructure. The second part presents an actual planning and implementation framework.
Join Linux Journal's Mike Diehl and Pat Cameron of Help Systems.
Free to Linux Journal readers.View Now!
|The Firebird Project's Firebird Relational Database||Jul 29, 2016|
|Stunnel Security for Oracle||Jul 28, 2016|
|SUSE LLC's SUSE Manager||Jul 21, 2016|
|My +1 Sword of Productivity||Jul 20, 2016|
|Non-Linux FOSS: Caffeine!||Jul 19, 2016|
|Murat Yener and Onur Dundar's Expert Android Studio (Wrox)||Jul 18, 2016|
- The Firebird Project's Firebird Relational Database
- Stunnel Security for Oracle
- My +1 Sword of Productivity
- Non-Linux FOSS: Caffeine!
- Managing Linux Using Puppet
- SUSE LLC's SUSE Manager
- Murat Yener and Onur Dundar's Expert Android Studio (Wrox)
- Google's SwiftShader Released
- SuperTuxKart 0.9.2 Released
- Doing for User Space What We Did for Kernel Space
With all the industry talk about the benefits of Linux on Power and all the performance advantages offered by its open architecture, you may be considering a move in that direction. If you are thinking about analytics, big data and cloud computing, you would be right to evaluate Power. The idea of using commodity x86 hardware and replacing it every three years is an outdated cost model. It doesn’t consider the total cost of ownership, and it doesn’t consider the advantage of real processing power, high-availability and multithreading like a demon.
This ebook takes a look at some of the practical applications of the Linux on Power platform and ways you might bring all the performance power of this open architecture to bear for your organization. There are no smoke and mirrors here—just hard, cold, empirical evidence provided by independent sources. I also consider some innovative ways Linux on Power will be used in the future.Get the Guide