The demand for fast startup is mostly motivated by embedded systems, especially for home appliances such as digital TV. Though a new storage device such as a flash memory may help reduce the startup time, its applicability is limited to a small size application, which is not the case for recent media processing software consisting of millions lines of code. This paper proposes novel approaches to reduce the startup time of large embedded systems. The startup latency of a commercial digital TV is analyzed in order to marshal resource initialization and to warm up the buffer cache. Based on the analysis we propose a better initialization order and determine when data should be prefetched to the buffer cache in order to reduce the startup time, and which data. Our measurements show that our schemes reduce the total startup time by 35%.