Embedded Systems October 2000 Vol13_11

Issue link:

Contents of this Issue


Page 146 of 181

data and to support DVUI notification of break and trace poin ts , and inter- faces with the event proces ing to pro- vide execution control, sy tem stimu- lus, break points, and stepping. Data instrumentation code is il:ject- ed into the application during transla- tion to monitor and update object instance population, attribute values, event queue population, event data item values, and service parameters. Data access During integration testing and debug- ging, assessing the system state is a key requirement. in ce the system state is distributed amo ng ma ny class instances, all instances in the system as well as the values of the attributes should be accessible to the DVUI. Keeping ' a list of instances in the system is fai rly straightforward. Each class must include some tructure to hold the instances of that class, COI11- monly some form of a linked list. With in the co nstructor, th e new instance is added to the list, and in the destructor, it is removed. To view the state of an instance, the instance can support ASCII serializa- tion, similar to the Java toStr;ngO method. The toStr;ngO method would put the value of each of the instance's attributes into the string, as well as the instances with which it has associations. The string can then be tra nsported from th e application agent to the DVUI for display. To set the data of an instance, a fromStr;ngO method must be sup- ported that can unpack the data and make the pro per conversio ns and attribute assignments. The state of an instance's sta te machine is also very interesting during debugging, because it represents an aspect of the control flow of the sys- tem. It is special because it affects the response of an instance to an event. Therefore, it's useful to separate the current tate of the state machine from the rest of the class attributes. Dynamic behavior DUling system execution, instances are created and deleted, and events are exchanged; associations are created and deleted; domain services are invoked; and timers are set and fired. Each of these incidents is of potential in terest during integration testing. Depending on the implementation, each of these incidents could trigger an interactive break point or a trace output. The DVUI should be able to send to the agent the conditions on which to break. The break allows the DVUI to interactively browse th e state of the system at that point in execution and adju t instances and attributes, if nec- essal)'. Trace points can also be set up by the DVUI. At a trace point, a mes- '''''W .. ™ For Palm® Kada brings Java™ applications to the Palm V PalmVIl and Palm lIIe, for powerful mobile workforce applications. The core of the Kada platform is the KadaVM, which offers the functionality of a Java Virtual Machine in a subcompact size. -werks em Call1-877-NOW-JAVA for evaluation software KADA is property of Emwerks, Inc. All olher Irodemorks are property of Ihelr respecllve owners. KadaVM eliminates PalmOS memory limitations by providing up to 6 MB of Java heap and stack space. Kada fully supports awt, applet, io, util, net, text and sql packages including Object Streaming, Floating pOint, Class Reflection and Multi-threading capabilities. KadaVM has a built-in adaptive just-in-time compiler that speeds up execution without code bloat typically associated with JIT compilers.

Articles in this issue

Archives of this issue

view archives of EETimes - Embedded Systems October 2000 Vol13_11