Increasing hardware capabilities and application requirements in embedded systems demand additional software initialization and configuration during startup, which adversely affects system boot time. Fast boot is essential for consumer devices in automotive, medical and entertainment markets. This paper describes “system level” optimization of embedded software to achieve faster boot times. We select an embedded device running open source Android platform as the experimental setup for research. First, we describe an efficient bootloader design and explain how to optimally configure Android''s Linux based kernel for embedded systems. Next, we detail Android userspace design changes to reach the home screen quickly and allow users to execute crucial applications first. We also discuss effects on memory consumption, application and feature availability caused by optimization changes in each part of the software stack. Finally, we show that our optimized Android stack boots 65 percent faster than the existing common approach
展开▼