DocumentCode
1111182
Title
Reasoning about time in higher-level language software
Author
Shaw, Alan C.
Author_Institution
Dept. of Comput. Sci., Washington Univ., Seattle, WA, USA
Volume
15
Issue
7
fYear
1989
fDate
7/1/1989 12:00:00 AM
Firstpage
875
Lastpage
889
Abstract
A methodology for specifying and providing assertions about time in higher-level-language programs is described. The approach develops three ideas: the distinction between, and treatment of, both real-time and computer times; the use of upper and lower bounds on the execution times of program elements; and a simple extension of Hoare logic to include the effects of the passage of real-time. Schemas and examples of timing bounds and assertions are presented for a variety of statement types and programs, such as conventional sequential programs including loops, time-related statements such as delay, concurrent programs with synchronization, and software in the presence of interrupts. Examples of assertions that are proved include deadlines, timing invariants for periodic processes, and the specification of time-based events such as those needed for the recognition of single and double clicks from a mouse button
Keywords
formal logic; formal specification; real-time systems; synchronisation; Hoare logic; assertions; computer times; concurrent programs; deadlines; delay; execution times; higher-level language software; lower bounds; periodic processes; program elements; real-time; sequential programs; specification; synchronization; time-related statements; timing bounds; timing invariants; upper bounds; Clocks; Code standards; Computer science; Logic; Mice; Software maintenance; Software standards; Springs; Synchronization; Timing;
fLanguage
English
Journal_Title
Software Engineering, IEEE Transactions on
Publisher
ieee
ISSN
0098-5589
Type
jour
DOI
10.1109/32.29487
Filename
29487
Link To Document