Email: Password: Remember Me | Create Account (Free)

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
05/19/06 16:52
Modified:
  05/19/06 17:30

Read: times


 
#116685 - an excellent article
Responding to: ???'s previous message
excellent insights into why software fail and the claim that it does not need to.

http://www.embedded.com//showArti...=186700597

is the below extreme? yes, have I seen things like it? yes.

an extract:
The universal bolt
Imagine for a minute that I've invented the Universal Bolt. This is a metal object for joining threaded holes that can extend or collapse to fit a variety of lengths. It can expand or contract to fit holes of different diameters. The really cool feature is that I have replaced the bolt's spiral ridge with a series of extendable probes that can accommodate different thread pitches. What a marvelous product! You no longer need to stock a variety of bolts of different sizes and lengths and thread spacings because my Universal Bolt can be used in place of any of them. Of course, with all this flexibility this bolt is admittedly far less solid than conventional bolts, but I have addressed this concern with super-high-strength metal and a clever micro-machined mechanism for locking it to the desired length, thickness, and threading. This introduces a lot of complications, and my Universal Bolt turns out to be more expensive than a conventional bolt. But no problem!

Because it's able to change configurations extremely quickly, a single Universal Bolt can take the place of many conventional bolts simultaneously. What we do is rig up a clever and very fast dispatcher device that quickly moves the bolt from hole to hole. If the dispatcher is fast enough, my Universal Bolt can spend a moment in each hole in turn and get the whole way through your product so fast that it returns to each hole before the joint has had a chance to separate. Sure, the bigger the project, the more complex the dispatcher becomes, but if we keep boosting the dispatcher speed and the bolt reconfiguration speed, we can keep the whole thing together.

Absolutely absurd, right? You'd have to be crazy to get into a car built along these lines. If anything caused the dispatcher to derail, the entire product would collapse in a second.

Well, yes, it is absurd. But it also pretty accurately describes the function of several embedded systems I've worked on. A fast and complex thread dispatcher keeps moving one simple and stupid integer-computation unit all over a big system tending to tasks rapidly enough that they all get done. And if that dispatcher ever once leads the CPU into an invalid memory address the whole thing crashes to a halt. Does this sound familiar to any software developers out there?




List of 15 messages in thread
TopicAuthorDate
[NOT SPAM] Directory of free online book            01/01/70 00:00      
   One more. Now I'll stop.            01/01/70 00:00      
      No, please carry on            01/01/70 00:00      
         please restrict that to books that do no            01/01/70 00:00      
            Dan, even if the book claims...            01/01/70 00:00      
            Restrictions?            01/01/70 00:00      
               Not just free on the web.            01/01/70 00:00      
                  Have you ever looked at CP/M?            01/01/70 00:00      
         RTOS specific            01/01/70 00:00      
            Pumpkin/Salvo home page URL            01/01/70 00:00      
         an excellent article            01/01/70 00:00      
         RTOS specific -- more            01/01/70 00:00      
   another            01/01/70 00:00      
      Excellent, thank you.            01/01/70 00:00      
   uC/OS Slides            01/01/70 00:00      

Back to Subject List