Last update: Sun Aug 5 02:03:07 MDT 2018
@Article{Stewart:2000:AAF,
author = "David B. Stewart",
title = "Automated analysis and fine-tuning of timing
properties in embedded real-time systems",
journal = j-SIGSOFT,
volume = "25",
number = "1",
pages = "86--87",
month = jan,
year = "2000",
CODEN = "SFENDP",
DOI = "https://doi.org/10.1145/340855.341028",
ISSN = "0163-5948 (print), 1943-5843 (electronic)",
ISSN-L = "0163-5948",
bibdate = "Wed Aug 1 17:13:50 MDT 2018",
bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib",
abstract = "An extremely time-consuming task of producing an
embedded real-time system is the final analysis and
fine-tuning of the system's timing. Existing CASE tools
focus on the software specification and design of
embedded systems. They provide little, if any, support
after the software has been implemented. Even if the
developer uses a CASE tool to design their system, it
likely does not meet the timing specifications on the
first try. This happens because the CASE tool's
software design and real-time analysis is based only on
estimated data and idealized models. The tools do not
take into account practical concerns such as operating
system overhead, interrupt handling, limitations of the
programming language or processor, inaccuracies in
estimating worst-case execution time of each process,
and software errors introduced at the implementation
phase by the programmers. Performance monitoring tools
allow developers to obtain raw data from the underlying
embedded system in real-time. These tools provide most,
if not all, of the data needed to pinpoint the problem.
Such data, however, is not provided in a symbolic
fashion, and thus could be very difficult to
understand. The monitors only show what happened during
run-time, without correlating those results to the
original specifications. Performance monitors also do
not perform any analysis on the data that is collected.
As a result, there is no means to easily differentiate
between parts of the execution that are ``normal''
versus those parts that have difficult-to-detect timing
errors. Only an expert's eye can quickly spot the
differences. We are investigating tools that can help
embedded system designers analyze, debug, and fine-tune
the timing characteristics of their embedded
implementations. Such a tool can have a major impact,
by allowing designers whose expertise is in an area
other than real-time system analysis, such as
communications, controls, or hardware design, to use
the tool and obtain valuable information on how to fix
their code that is not performing according to
specifications.",
acknowledgement = ack-nhfb,
fjournal = "ACM SIGSOFT Software Engineering Notes",
journal-URL = "https://dl.acm.org/citation.cfm?id=J728",
}