Embedded Systems Design - Europe - August/September 2007 - (Page 35) software Listing 4 Example of a “buffer entry” definition. /* Define an example entry ID for a buffer entry containing two integers * Note that there is no “;” following the definition. */ TDR_DEFINE_ENTRY(EXAMPLE_ENTRY_ID, 1, “hex value = 0x%x and decimal value = %d”) buffer entry containing two integers. The dump agent writes the capture buffers to nonvolatile storage. Dumps are triggered by external subsystems, such as the logging subsystem when a Fatal error is declared. The dump agent usually operates in the execution context of the initiator to produce the dump. As a result, the dump agent is commonly implemented as a library invoked by the logging subsystem, from a panic handler or ISR, or from a command-line interface. If executing from a panic handler, the dump agent functions that write to nonvolatile storage may have to use different device drivers than those employed when the operating system is still running. This is because the system may not be servicing interrupts or scheduling appropriately. The main data structure that the dump agent uses is the billboard, which is essentially a table of pointers to the capture buffers. The billboard also contains the size of each capture buffer. The dump agent, in the context of the capture library, checks the size of each newly created buffer. If the sum of the capture buffer sizes exceed the amount of nonvolatile storage available for the dump, the agent generates errors to alert developers that there’s not enough storage to contain a potential dump. When the dump agent is commanded to produce a dump, it traverses the billboard data structure. It freezes each buffer either by setting its freeze flag or setting a global freeze flag in the billboard area. The flag prevents the capture library from placing any more data into the capture buffers. The agent then writes each capture buffer listed in the billboard to nonvolatile storage. Having a trace data recorder in a high-availability system gives developers a advantage when diagnosing problems in the field. Its ‘always on’ nature gives developers visibility when problems oc- cur without needing to ask, “Can you reproduce the problem?” Having such a system in place before a product is shipped gives developers a powerful tool in tracking down the subtle, insidious, intermittent, “3:00 AM” bug. Steven A. Stolper is an embedded software consultant. He specializes in spacecraft flight software but also works with teams that develop commercial systems. Stolper can be contacted at info@stolperconsult.com. www.embedded.com/europe | embedded systems design europe | AUGUST – SEPTEMBER 2007 35 030-031-032-033-034-035_ESDE.ind35 35 6/09/07 10:54:45 http://www.lauterbach.co.uk http://www.lauterbach.de http://www.lauterbach.it http://www.lauterbach.com http://www.lauterbach.cn http://www.lauterbach.co.jp http://www.lauterbach.co.uk http://www.embedded.com/europe
Table of Contents Feed for the Digital Edition of Embedded Systems Design - Europe - August/September 2007 Contents News Cover Feature: Annual Study Uncovers the Embedded Market DSP Serves the Convergence Needs of Small Business Embedded Test Offers Unique Value for Serial I/O The Software Detective: First-Fault Data Capture Boards May Shrink But Performance Doesn't New Products Advertising Contacts Embedded Systems Design - Europe - August/September 2007 Embedded Systems Design - Europe - August/September 2007 - (Page 1) Embedded Systems Design - Europe - August/September 2007 - (Page 2) Embedded Systems Design - Europe - August/September 2007 - Contents (Page 3) Embedded Systems Design - Europe - August/September 2007 - Contents (Page 4) Embedded Systems Design - Europe - August/September 2007 - Contents (Page 5) Embedded Systems Design - Europe - August/September 2007 - News (Page 6) Embedded Systems Design - Europe - August/September 2007 - News (Page 7) Embedded Systems Design - Europe - August/September 2007 - News (Page 8) Embedded Systems Design - Europe - August/September 2007 - News (Page 9) Embedded Systems Design - Europe - August/September 2007 - News (Page 10) Embedded Systems Design - Europe - August/September 2007 - News (Page 11) Embedded Systems Design - Europe - August/September 2007 - Cover Feature: Annual Study Uncovers the Embedded Market (Page 12) Embedded Systems Design - Europe - August/September 2007 - Cover Feature: Annual Study Uncovers the Embedded Market (Page 13) Embedded Systems Design - Europe - August/September 2007 - Cover Feature: Annual Study Uncovers the Embedded Market (Page 14) Embedded Systems Design - Europe - August/September 2007 - Cover Feature: Annual Study Uncovers the Embedded Market (Page 15) Embedded Systems Design - Europe - August/September 2007 - Cover Feature: Annual Study Uncovers the Embedded Market (Page 16) Embedded Systems Design - Europe - August/September 2007 - Cover Feature: Annual Study Uncovers the Embedded Market (Page 17) Embedded Systems Design - Europe - August/September 2007 - Cover Feature: Annual Study Uncovers the Embedded Market (Page 18) Embedded Systems Design - Europe - August/September 2007 - Cover Feature: Annual Study Uncovers the Embedded Market (Page 19) Embedded Systems Design - Europe - August/September 2007 - DSP Serves the Convergence Needs of Small Business (Page 20) Embedded Systems Design - Europe - August/September 2007 - DSP Serves the Convergence Needs of Small Business (Page 21) Embedded Systems Design - Europe - August/September 2007 - DSP Serves the Convergence Needs of Small Business (Page 22) Embedded Systems Design - Europe - August/September 2007 - DSP Serves the Convergence Needs of Small Business (Page 23) Embedded Systems Design - Europe - August/September 2007 - DSP Serves the Convergence Needs of Small Business (Page 24) Embedded Systems Design - Europe - August/September 2007 - Embedded Test Offers Unique Value for Serial I/O (Page 25) Embedded Systems Design - Europe - August/September 2007 - Embedded Test Offers Unique Value for Serial I/O (Page 26) Embedded Systems Design - Europe - August/September 2007 - Embedded Test Offers Unique Value for Serial I/O (Page 27) Embedded Systems Design - Europe - August/September 2007 - Embedded Test Offers Unique Value for Serial I/O (Page 28) Embedded Systems Design - Europe - August/September 2007 - Embedded Test Offers Unique Value for Serial I/O (Page 29) Embedded Systems Design - Europe - August/September 2007 - The Software Detective: First-Fault Data Capture (Page 30) Embedded Systems Design - Europe - August/September 2007 - The Software Detective: First-Fault Data Capture (Page 31) Embedded Systems Design - Europe - August/September 2007 - The Software Detective: First-Fault Data Capture (Page 32) Embedded Systems Design - Europe - August/September 2007 - The Software Detective: First-Fault Data Capture (Page 33) Embedded Systems Design - Europe - August/September 2007 - The Software Detective: First-Fault Data Capture (Page 34) Embedded Systems Design - Europe - August/September 2007 - The Software Detective: First-Fault Data Capture (Page 35) Embedded Systems Design - Europe - August/September 2007 - Boards May Shrink But Performance Doesn't (Page 36) Embedded Systems Design - Europe - August/September 2007 - Boards May Shrink But Performance Doesn't (Page 37) Embedded Systems Design - Europe - August/September 2007 - Boards May Shrink But Performance Doesn't (Page 38) Embedded Systems Design - Europe - August/September 2007 - Boards May Shrink But Performance Doesn't (Page 39) Embedded Systems Design - Europe - August/September 2007 - New Products (Page 40) Embedded Systems Design - Europe - August/September 2007 - New Products (Page 41) Embedded Systems Design - Europe - August/September 2007 - New Products (Page 42) Embedded Systems Design - Europe - August/September 2007 - Advertising Contacts (Page 43) Embedded Systems Design - Europe - August/September 2007 - Advertising Contacts (Page 44)
For optimal viewing of this digital publication, please enable JavaScript and then refresh the page. If you would like to try to load the digital publication without using Flash Player detection, please click here.