DocumentCode :
1359218
Title :
Hypersequential programming: a new way to develop concurrent programs
Author :
Uchihira, Naoshi ; Honiden, Shinichi ; Seki, Toshibumi
Author_Institution :
Syst. & Software Eng. Lab., Toshiba Corp., Kawasaki, Japan
Volume :
5
Issue :
3
fYear :
1997
Firstpage :
44
Lastpage :
54
Abstract :
The authors present hypersequential programming, a new method that eases the difficulty of concurrent programming and makes the concurrent program highly reliable. The difficulty of concurrent programming is due mainly to its nondeterminism. The authors classify nondeterminism into three types: intended, harmful, and persistent. In traditional concurrent programming, a programmer first designs and implements programs so as to maximize concurrency, which may include all three types of nondeterminism. She then tries to detect harmful nondeterministic behavior by testing and debugging them. However, removing all harmful nondeterministic behavior is actually very difficult. Hypersequential programming, on the other hand, first serializes the concurrent program to remove all types of nondeterminism, and then the programmer tests and debugs it as a sequential program. Finally, it is parallelized by restoring only intended and persistent nondeterminism. Hypersequential programming can develop a highly reliable concurrent program, because the injection of harmful nondeterminism is precluded. In this article, the authors also present a simple embodiment of hypersequential programming using Petri nets
Keywords :
parallel programming; program debugging; Petri nets; concurrency; concurrent programming; concurrent programs; debugs; hypersequential programming; nondeterminism; parallelized; Application software; Computer industry; Concurrent computing; Debugging; Distributed computing; Parallel programming; Programming profession; Testing; Timing; Topology;
fLanguage :
English
Journal_Title :
Concurrency, IEEE
Publisher :
ieee
ISSN :
1092-3063
Type :
jour
DOI :
10.1109/4434.605918
Filename :
605918
Link To Document :
بازگشت