Start/boot a version of Linux in 100-800 millisecond on an embedded HW

I would like to use Linux on an embedded HW and my application requires the system to start operation as soon as it is switched on.
(As an example, imagine a VCR, which start operation in a fraction of second.)
I did not seleted the HW yet. I need 4xRS232 port + 4xUSB host interface + 100 MBit/sec Ethernet + Video card + Mouse & Keyboard input + 48 general purpose parallel I/O lines + (battery operated) + physical dimensions are as small as possible.
Can you advise me if it is possible to start/boot a version of Linux in sub-second (100-800 millisecond)? Do you know any embedded HW with the above specs?
Thanks
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
<Sahgu Rugha>

I never worked with embedded linux before, so my opinion may be worthless. I've implemented an winxp embedded though, and when I was studying it, I saw one technical article that tackled that issue. What they reccomended was to implement two on/off buttons, one in the front which is the "soft" switch, and one in the back of the device, that is the "hard" switch. When you turn it on/off using the front switch, it only goes to standby (I don't know if linux has such a mode), therefore with xp embedded the "boot" time is almost immediate.
Cheers
Padu
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

I suppose you could also do it by having a large enough rom so that Linux entirely fit onto the rom. That way it would simply be a metter of booting by jumping to the kernel on the rom, and everything is already loaded. The probem is that rom is liable to be rather slow memory.
Or there could be something to copy everything directly to ram and then start, but that copying time is liable to be longer than a few milliseconds.

Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Unruh wrote:

The biggest delay is not copying from ROM to RAM, but device initialization. Trim all unnecessary devices from the kernel. Do all devices need to be working in 100-800 ms? Or can you boot with only the critical devices working, and defer initialization of other devices?
If you are not committed to Linux, you might also want to check out NetBSD, which will run on pretty much anything that will run Linux, and may boot faster.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
On Sat, 03 Jun 2006 00:59:33 +1000, Sahgu wrote:

I regularly put my Linux laptop into suspend, rather than switching it off. It starts up again pretty quickly from this state - and i'd say that would be the fastest way to do it. However, as Bob says, initialising devices is what takes time - along with, of course, reloading the memory image from the hard drive. Take away the hard drive and have the memory image on flash memory or something, and that would speed that up, but you can't start up a system without initialising hardware.
If you can minimise hardware initialisation time, i'd guess, from my experience of Linux coming out of suspend mode into fully operating xwindow system, you ought to be able to boot in less than a second.
Will
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Sahgu Rugha wrote:

There was a project a while back on the web that was about a few folk who had replaced the PC BIOS boot ROM contents with a custom-written one that contained the Linux kernel. The objective was to boot to a command shell in under 1 second, but at the time I read it, they had just got under 3s. Still pretty good, but it obviously wouldn't be able to support just any arbitrary device being plugged in, only the ones they'd tuned it with.
Anyhow, search for Linux in the BIOS flash, you might find them.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Clifford Heath wrote:

Found it:
The Linux BIOS project. Unfortunately the server that hosts the LinuxBIOS homepage no longer exists, but this does: <http://www.linuxdevices.com/links/LK8294110575.html
Also of interest is <http://www.mvista.com/products/cee/features.html , though that's commercial.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Clifford Heath wrote:

and so does this <http://www.linuxbios.org/ . Found it after posting before :-).
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Sahgu Rugha wrote:

Try http://www.linuxdevices.com /
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Benny Cemoli wrote:

As for hardware try the via eden cl/pd mobo as both of these come in the mini-itx form and have very close specs to what you mentioned
www.via.com.tw/en/products/mainboards/mini_itx/epia_pd/ www.via.com.tw/en/products/mainboards/mini_itx/epia_cl/ www.viaarena.com
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Sahgu Rugha after many days of avoiding medication, wrote:

http://www.via.com.tw/en/products/mainboards /
look @ the nano itx boards
embeds linux ok. has a sleep / wakeup function integrated into the bios so it acts just like a real hdd/dvd recorder. I sometimes use mine to record the tv using the wak function.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
oobie doobie after many days of avoiding medication, wrote:

further VGA      Integrated VIA UniChrome Pro AGP graphics with MPEG-2 decoder/MPEG-4 Acceleration
System Monitoring & Management      CPU Temperature monitoring CPU voltage monitoring FAN control Watch Dog Timer Wake-on-LAN, Keyboard-Power-on, Timer-Power-on System power management AC power failure recovery
Op. guide look @ p 1 VIA series overview - it should fulfill your needs <http://www.via.com.tw/download/mainboards/epia_n-series_nano-itx_mainboard/manual/OG_EPIA-N_110.pdf
user man (with POST exploanation) <http://www.via.com.tw/download/mainboards/3/4/UM_EPIA-N_104.pdf
enjoy...
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Polytechforum.com is a website by engineers for engineers. It is not affiliated with any of manufacturers or vendors discussed here. All logos and trade names are the property of their respective owners.