Slashdot Mirror


Embedded Linux 1-Second Cold Boot To QT

An anonymous reader writes "The blog post shows an embedded device cold booting Linux to a QT application all in just one second. This post also includes a link which describes what modifications were made to achieve this."

37 of 141 comments (clear)

  1. Ain't that qute? by Carewolf · · Score: 2, Insightful

    I assume they mean Qt application, not QuickTime, or whatever.

    1. Re:Ain't that qute? by Anonymous Coward · · Score: 5, Insightful

      If the first thing that enters your mind when reading "QT" is QuickTime, you're on the wrong website I'm afraid.

    2. Re:Ain't that qute? by Anonymous Coward · · Score: 5, Funny

      If he came here for abuse, it's definitely the right website!

    3. Re:Ain't that qute? by internettoughguy · · Score: 3, Insightful

      If the first thing that enters your mind when reading "QT" is QuickTime, you're on the wrong website I'm afraid.

      It's usually rendered as Q t not Q T .

    4. Re:Ain't that qute? by countSudoku() · · Score: 5, Informative

      I had the same reaction. The answer lies in the wikipedia, not in the unhelpful intermediate posts:

      http://en.wikipedia.org/wiki/Qt_(framework)

      Qt "is a cross-platform application framework that is widely used for developing application software with graphical user interface (GUI) (in which case Qt is referred to as a widget toolkit when used as such), and also used for developing non-GUI programs such as command-line tools and consoles for servers"

      --
      This is the NSA, we're gonna geet U h@x0r5! Also, what is a h@x0r5?
    5. Re:Ain't that qute? by PatPending · · Score: 2

      I came here for a good argument.

      --
      What one fool can do, another can. (Ancient Simian Proverb)
    6. Re:Ain't that qute? by gabebillings · · Score: 2

      I came here for a good argument.

      Well, do you want to have just one argument, or were you thinking of taking a course?

    7. Re:Ain't that qute? by NemoinSpace · · Score: 3, Funny

      as a corallary to OP: If the first thing that enters your mind when reading "QT" is QuickTime, you have a problem.
      if you go to wikipedia for help? Now you have 2 problems.
      can we please get back to arguing now?

    8. Re:Ain't that qute? by aynoknman · · Score: 2

      I came here for a good argument.

      I'm sorry, but this is abuse.

      --
      We need a "+1 -- nice sig" moderation.
    9. Re:Ain't that qute? by nawcom · · Score: 3, Insightful

      can we please get back to arguing now?

      Yeah, right after I finish beating Doom III by "I.D." software running on my "MAC".

      I wouldn't be surprised if the poster pronounces daemon as "daymon" either. The geek ego sure seems to get in the way of learning how to pronounce things. It looks like devs these days will have to provide audio files to show how to pronounce their work.

      *shakes his head at correct pronunciation deniers*

    10. Re:Ain't that qute? by zish · · Score: 4, Funny

      I know I'm going to get modded "off-topic", but this is getting too silly.

      --
      Spork.

      P.S. Spork.
    11. Re:Ain't that qute? by Gerald · · Score: 2

      QuikTrip. The device gives you coffee and a microwave sandwich while filling your gas tank, all in less than a second.

    12. Re:Ain't that qute? by PopeRatzo · · Score: 4, Funny

      I came here for a good argument.

      I came here to meet lonely singles in my area.

      --
      You are welcome on my lawn.
  2. Re:Ermm.. by buchner.johannes · · Score: 5, Informative

    The have a slideshow here: http://www.slideshare.net/andrewmurraympc/elce-the , it's interesting starting at slide 19. Especially the executable reordering to defer loading of UI event handling code is impressive.

    --
    NB: The message above might reflect my opinion right now, but not necessarily tomorrow or next year.
  3. yes, my 1990 Acorn A3000... by FuckingNickName · · Score: 4, Interesting

    ...booted in about 5 seconds, and that was to a general desktop.

    And my toy homebrew OS boots to a primitive UI in under 2 seconds after BIOS, and much of that is running interpreted bytecode.

    The fact is that a full BIOS + Linux / Windows system is a horrible fucking mess of bloat, but part of it is the price you pay finding and initialising all those millions of third party devices your old/embedded device isn't going to need to worry about.

    Still, as always, I believe any engineer's claim not before I get to test it myself.

    1. Re:yes, my 1990 Acorn A3000... by Microlith · · Score: 2, Insightful

      The fact is that a full BIOS + Linux / Windows system is a horrible fucking mess of bloat

      It's also a huge pile of capability that wasn't around 20 years ago. I find it hard to believe that, capability-wise, your Acorn A3000 was on par with a modern PC. I don't see it as bloat, but as the necessary result of supporting a wide array of capabilities (not necessarily hardware) and an extremely capable and platform-independent environment.

      BIOSes (especially RAID) are the slowest part these days, and UEFI is hopefully going to combat that.

    2. Re:yes, my 1990 Acorn A3000... by Pharmboy · · Score: 2

      Yes, BIOS is a kludge but it's on the way out.

      A quick search only showed news articles from 2003 (behind a pay wall...), but I am pretty sure I heard the same claims before 2000. I have no idea what the technical hurdles are, but there has been much talk and little action on killing BIOS.

      On the plus side, I'm looking forward to using more than 640k of ram, which is no longer enough for anyone.

      --
      Tequila: It's not just for breakfast anymore!
    3. Re:yes, my 1990 Acorn A3000... by sitharus · · Score: 4, Insightful

      Your Acorn A3000 held and executed most of the OS from ROM. When you don't have to copy from disk times are much faster.

      --
      --sitharus
    4. Re:yes, my 1990 Acorn A3000... by thegarbz · · Score: 3, Informative

      Actually if you custom compile your kernel to strip out every device driver that's irrelevant to your system you will save an absolute trivial amount of boot time at best. Go to TFA and click the slideshow to see where the real slogs of the boot lie.

    5. Re:yes, my 1990 Acorn A3000... by afidel · · Score: 2

      The biggest problem is the first widely used MS OS that support EUFI was Vista x64 SP1 so system builders had basically no incentive to switch (EUFI supports BIOS emulation but if 90% of systems sold will be running the emulation why not just ship a BIOS with fewer compatibility issues).

      --
      There are 4 boxes to use in the defense of liberty: soap, ballot, jury, ammo. Use in that order. Starting now.
    6. Re:yes, my 1990 Acorn A3000... by wolrahnaes · · Score: 3, Insightful

      CarPC? HTPC? Just being able to turn the computer entirely off when it's not in use rather than suspend?

      This particular example was focused on embedded applications, but the general idea of being able to boot a computer reasonably close to instantly is advantageous pretty much anywhere.

      --
      I used to get high on life, but I developed a tolerance. Now I need something stronger.
  4. Made my day by LoRdTAW · · Score: 4, Interesting

    Its good to see a fun tech article like this on /. I haven't seen any in a while (maybe its just me).

    I assume that during boot time, the Qt UI and low level hardware modules are loaded immediately. Then other modules and services can be loaded later on such as networking, video capture drivers and other lower priority services. I also assume the UI is not based on X but a Qt implementation that is directly drawing to the frame buffer.

    Lately I have been on a bit of an embedded systems kick playing around with PLC's and embedded micro controllers. This is a great article.

  5. Function re-ordering inside the image? wow by RollingThunder · · Score: 5, Insightful

    I have to say, the most impressive/innovative tweak, to me, was the re-ordering of required functions in the compiled binary. Doing so allowed them to reduce load time, by making it that only two blocks had to be demand-read off the flash filesystem, instead of four.

    That's some crazy, use-the-drum-spin-as-timing, innovative thinking right there. Serious kudos.

  6. Re:Details by Anonymous Coward · · Score: 2, Informative

    Any details on what they've done? Is it largely hardware-specific initialisation, or have they made changes that would be useful on a traditional desktop?

    From the article:

    "We've not applied any specific intellectual property but instead spent time analysing where boot delays are coming from and simply optimising them away. The majority of the modifications we make usually fall into the category of 'removing things that aren't required', 'optimising things that are required', or 'taking a new approach to solving problems' and are tailored very precisely to the needs of the 'product'."

    Also:

    "If you're interested in exactly what modification I made and a little more about the approach taken - you may be interested in these slides [http://www.slideshare.net/andrewmurraympc/elce-the] which I presented at ELC-E 2010"

  7. Re:Function re-ordering inside the image? wow by Chrutil · · Score: 5, Informative

    That's actually common practice in profile guided optimization, put commonly used code close together in the image to minimize the number of pages loaded.

  8. At last! by mr_lizard13 · · Score: 5, Funny

    This is the year of Linux on the de- wow, that was quick.

    --
    "We live in a global world" - Harvey Pitt, former Securities and Exchange Commission Chairman
  9. Flash 9 by Max+Hyre · · Score: 2


    The bleedin' slideshow requires Flash 9 , for crying in a bucket! Why the hell do you need Flash to show a sequence of static images in succession!? And to download the slides, you have to have two accounts: one on Facebook, and one on something called Slideshare.

    Screw it.
    </rant>

    (Be glad I'm sparing you my take on Javascript.)

    --
    I refuse to believe corporations are people until Texas executes one. -- desert rain on http://www.dailykos.com/user/
    1. Re:Flash 9 by frogboyflips · · Score: 3, Informative

      There is also a PDF of the slides on the elinux.org web site under the 'Boot Time' page.

  10. Re:Function re-ordering inside the image? wow by noidentity · · Score: 5, Informative
    Really? I thought this was standard stuff for profile-guided-optimization. It's common knowledge that when a system initializes, it jumps all over the image, which is bad if it's paged. Seems a big "duh" to reorder functions so that all the init code is together.

    Another optimization that was common old Mac compilers was "dead-stripping", where they avoided linking in any functions that were never called. Apparently this isn't commonly done and instead if a single function in a file is called, then ALL are linked in, at least when I looked into it for Linux a while back.

  11. Re:1 second? Lies! by 7-Vodka · · Score: 2
    are you sure that the machine isn't booting in one second and then it takes the monitor itself some time to adjust?

    I'd be willing to bet they are doing software boot process monitoring and know exactly how long it takes to boot.

    --

    Liberty.

  12. Re:Function re-ordering inside the image? wow by mhotchin · · Score: 3, Interesting

    Um. This capability has been around since FOREVER. I worked at MS 'beside' the group that created exactly such a tool, called BBT. This was ~2000.

    It was the most used, but not the only result of a tool suite called Vulcan. This would allow you to pull apart and re-assemble a binary, either for re-ordering (optimization) or to add instrumentation for other optimization projects (like the one I worked on).

  13. Re:Function re-ordering inside the image? wow by sp332 · · Score: 4, Informative

    The Story of Mel! http://foldoc.org/The+Story+of+Mel (That's not the original, that's the "free verse" version which is better IMHO.) It might even be a true story! http://en.wikipedia.org/wiki/Mel_Kaye

  14. Re:Function re-ordering inside the image? wow by codepunk · · Score: 3, Funny

    You forgot to mention the performance died when marketing made you link in ie.h .

    --


    Got Code?
  15. Re:Function re-ordering cheats? by Anonymous Coward · · Score: 3, Interesting

    Um. This capability has been around since FOREVER. I worked at MS 'beside' the group that created exactly such a tool, called BBT. This was ~2000.

    It was the most used, but not the only result of a tool suite called Vulcan. This would allow you to pull apart and re-assemble a binary, either for re-ordering (optimization) or to add instrumentation for other optimization projects (like the one I worked on).

    You deliberately seem to miss one really important point.

    These guys do not have to pull apart binaries they can mod them from source if they feel like it. You have let the cat out of the bag and admitted that Microsoft uses disassemble technique on other peoples binaries all the time. No wonder it was so easy for you guys to clone closed functions in IBM's Lotus Suite and com SQL framework, then pretend that you did not know what was going on when all of a sudden their binaries were slower and less reliable than yours!

    So you guys have been doing what you say others have no business do to your software FOREVER. Face it... considering the fact that embedded Linux runs most TVs, BD players and other really popular devices on the market today, you are just mouthing a party line and not making a real valid argument why MS is losing out in the embedded products market!

  16. Re:There is one small problem... by PiSkyHi · · Score: 2

    ...and what the hell is wrong with using a pre-configured suspend image anyhow? seems like a lot of effort wasted IMO.

  17. Re:Ermm.. by devent · · Score: 2

    I hate slideshare. What ever happened with good old Pdf downloads? But now Pdfs need to be embedded in Web2.0 crap. We ain't on the cloud yet, every PC out there have have a Pdf viewer installed. If they at least would use JavaScript so you don't need Flash for it like Google Maps.

    "Download is disabled by the owner". If the owner don't like the Pdf be in public than why the hell are they posting it on a freely accessible website? Does the owner really thinks I'm going to copy it and distribute it as my own work? Does the owner trusts me with nothing? Should I blank my brain after I saw the slides?

    If the owner want that I see his stupid slides then he should trust me more and not forbidding me of open my favorite Pdf viewer, print the slides out or to copy his stupid slides on a different device.

    He can take his slides and put them where the sun don't shine. Then he can be really sure that nobody is going to copy his work.

    --
    http://www.mueller-public.de - My site http://www.anr-institute.com/ - Advanced Natural Research Institute
  18. PDF is available here by lindi · · Score: 3, Informative

    My thoughts exactly, I don't want to use non-free adobe flash and slideshare does not work with gnash. Fortunately a very similar looking PDF does seem to be available at

    http://elinux.org/images/f/f7/RightApproachMinimalBootTimes.pdf