~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Firmware Update
- November 20, 2009
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In this issue:
-- 5 More Ways to Keep Bugs out of Embedded Software
-- This Code Stinks! The Worst Embedded Code Ever
-- Breathalyzer Source Code Turns Up in Court
-- Industry News and Useful Links -- Embedded Software Boot Camp's 2010 Road Show
Firmware Update is a free newsletter by embedded software expert Michael Barr. It is Copyright 2009 by Netrino, LLC, but may be reprinted for non-commercial purposes. |
|
5 More Ways to Keep Bugs out of Embedded Software ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Among other things, those of you who joined my
recent TechOnline webinar, learned 10 easy-to-
follow C coding rules to keep bugs out of
embedded software. But there are many more
such rules than we had time to discuss that day.
|
|
This Code Stinks! The Worst Embedded Code Ever ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
At the Embedded Systems Conference, I gave
a popular talk that used lousy code from real
products as a teaching tool. The example
code was gathered by a number of engineers
from a broad swath of companies over several
years.
Here's just one example: y = (x + 305) / 146097 * 400 + (x + 305) % 146097 / 36524 * 100 + (x + 305) % 146097 % 36524 / 1461 * 4 + (x + 305) % 146097 % 36524 % 1461 / 365; Despite a lack of comments, we eventually learned this computes the year (y), with an accounting for extra days in leap years, given the number of days (x) since a specific reference date. How can we know if it works in all cases? Is it safe for use in an FDA-regulated medical device? |
|
Breathalyzer Source Code Turns Up in Court ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Firmware bugs seem to be everywhere these
days. So much so that firmware source code
analysis is even entering the courtroom in
criminal cases involving data collection
devices with software inside. Consider the
precedent-setting case of the Alcotest 7110.
After a two-year legal fight, seven defendants
in New Jersey drunk driving cases won the
right to see the source code for the Alcotest
firmware.
The state and the defendants both ultimately produced expert reports evaluating the quality of the firmware source code. Though their respective experts reached divergent opinions as to the overall code quality, several facts seem to have emerged as a result of the analysis... |
|
Industry News and Useful Links ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
An Engineer's Guide to Dating, because
"being yourself" isn't likely to help! Funny video:
http://bit.ly/qJsQV
EETimes' "Worldwide Top Ten" list of female leaders in the microelectronics business. http://bit.ly/4fSdmd Washington D.C. metro area incurs major delays as traffic management software fails and remains down. http://bit.ly/1ueKqN An excellent analysis of the Microsoft Zune Bug: http://bit.ly/39Ubz8 Faulty source code: http://pastie.org/349916 Jack Ganssle is taking a salary survey of embedded system designers. Participate: http://bit.ly/3TTpaM Software for Dependable Systems: Sufficient Evidence? Free PDF book: http://bit.ly/1llk5f Are you a top programmer? Test your Embedded C++ knowledge in a free online quiz. http://bit.ly/2ngIEh Embedded C quiz here: http://bit.ly/BMc4 What's up with the public shouting match between Green Hills and Wind River? http://bit.ly/4giRju McObject announces release of eXtremeDB 4.0 with improved performance, scalability, and flexibility. http://bit.ly/3ISe4t Cavium Networks (who?) to acquire MontaVista Software for cheap ($50M). http://bit.ly/4j6xOL Multicore software configurations. All the options: http://bit.ly/3iEuK2 Might RIM/BlackBerry save Palm/WebOS? Lacking its own ecosystem and constrained by weak financials, Palm needs help. http://bit.ly/14ktCD GE Healthcare picks Eurotech board for embedded platform of healthcare data capture device. http://bit.ly/2rfnX4 Scan of Internet uncovers thousands of vulnerable embedded devices. http://bit.ly/2fVSbC How safe is your C code? Not sure? Think you need help? Take Les Hatton's Safer C course: http://bit.ly/G1LAK Is NXP changing the game with its 65-cent 32- bit MCU? http://bit.ly/2jCEFh Why not 64- cents? EZ Pay parking meters in Chicago & Baltimore are drifting away from actual time by ticket- causing minutes, despite the manufacturer's claims they sync their clocks wirelessly each night. Video: http://bit.ly/IDiU |
|
Embedded Software Boot Camp's 2010 Road Show ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
It's official: Netrino's Embedded Software Boot
Camp is a hit. Thus we plan to take "the show on
the road" in 2010, to as many cities as we can. If
you are interested in attending, now is the time to
make your location known. Please help us select
the road show cities by answering 5 quick
questions.
We'll announce the dates and locations in early December. |
|
Quick Links... ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
Contact Us... ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
email:
mbarr@netrino.com
phone:
866.78.EMBED
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|