Our intrepid commentator on the embedded process started quite a brouhaha a week or so ago and managed to tick off about half the firmware community with his musings on quirky engineers and his experience hiring and then firing one. He was metaphorically beaten about he head and shoulders by quite a few of you. This week Jack Ganssle has bravely returned with a followup, which he claims is intended to stir up the rest of the firmware community.
This week's poll asks, “How many firmware developers worked on your last project?”
Bernard Cole recently predicted that the dominant paradigm for the new net-centric computing environment would be some type of data flow or I/O architecture. Since then, he says, he's seen indications that the shift is indeed in that direction. A cornucopia of new embedded network processors has come into existence in response to major communications vendors rushing to build as much as high-bandwidth connectivity as quickly as possible.
The November issue of Embedded Systems Programming is in the mail and has been posted here. Here's what you'll find:
In “Capturing Real-Time Requirements,” Bruce Powel Douglass points out that it's difficult to separate requirements from design and consequently, requirements often get co-mingled with design elements. Bruce shows you a way to focus on capturing only the essentials with UML.
Esterel is a system-design language that can be used to generate complex state machines automatically. Because of its textual (rather than graphical) nature, and because of its compositional facilities, you can use it to write compact specifications for systems with complex state machines. Here's an overview of Esterel's syntax and usage by Girish Keshav Palshikar.
Short text messages, like those becoming a common feature of cell phones, may be the wave of the future. Embedded command and control may never be the same, according to Niall Murphy in “A Short Message About Short Messaging.”
The individual layers of protocol stacks are often implemented as tasks or library routines. Because this code may be invoked by more than one application task or upper layer protocol at a time, it must be designed for reentrancy. T. Sridhar tells you how to do it in “Reentrancy in Protocol Stacks.”
Two of this month's columns touch on the September 11 tragedy. In “Emergency,” Michael Barr says that the tragedy highlights the fact that we need better ways to locate victims in times of disasters. The new Enhanced 911 standard may not go far enough to solve this problem.
Jack Crenshaw also reflects on the tragedy in “Black Tuesday.” He then offers up a “lite” version of his function minimizer, and promises that the code will follow shortly.
Just as there is more than one way to skin a cat, Dan Saks says that there is more than one way to define symbolic constants in C and C++. He lets you know what your choices are.
Ever wanted to tell your boss the truth about why products ship late? This month, Jack Ganssle fires off that angry memo you've been dreaming about sending.
In the Beginner's Corner , Dave Stewart waxes eloquent about real-time performance, which is fundamental to embedded systems development. He defines a real-time system as one in which the correctness of the computations depends on both logical and temporal correctness. A late answer is a wrong answer. This introduction describes the different varieties of real-time performance and explores some important related concepts.