skip to main content
research-article

Thread algebra for poly-threading

Authors Info & Claims
Published:01 July 2011Publication History
Skip Abstract Section

Abstract

Abstract

It is a fact of life that sequential programs are often fragmented. Consequently, fragmented program behaviours are frequently found. We consider this phenomenon in the setting of thread algebra. We extend basic thread algebra with poly-threading, the barest mechanism for sequencing of threads that are taken for program fragment behaviours. This mechanism is the counterpart of program overlaying at the level of program behaviours. We relate the resulting theory to the process theory known as ACP and use it to describe analytic execution architectures suited for fragmented programs. We also consider the case where the steps of fragmented program behaviours are interleaved in the ways of non-distributed and distributed multi-threading.

References

  1. BB03 Bergstra JA, Bethke I (2003) Polarized process algebra and program equivalence. In: Baeten JCM, Lenstra JK, Parrow J, Woeginger GJ (eds), Proceedings 30th ICALP, volume 2719 of Lecture Notes in Computer Science. Springer, Berlin pp. 1–21Google ScholarGoogle Scholar
  2. BBP07 Bergstra JABethke IPonse ADecision problems for pushdown threadsActa Informatica2007442759023142721120.6807710.1007/s00236-007-0040-5Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. BK84 Bergstra JAKlop JWProcess algebra for synchronous communicationInf Control1984601–3109137Google ScholarGoogle ScholarCross RefCross Ref
  4. BL02 Bergstra JALoots MEProgram algebra for sequential codeJ Logic Algebraic Program200251212515619056161008.6807910.1016/S1567-8326(02)00018-8Google ScholarGoogle ScholarCross RefCross Ref
  5. BM07a Bergstra JAMiddelburg CAInstruction sequences with indirect jumpsSci Annal Comput Sci20071719462426098Google ScholarGoogle Scholar
  6. BM07b Bergstra JAMiddelburg CAThread algebra for strategic interleavingFormal Aspects Comput200719444547423642371131.6806710.1007/s00165-007-0024-9Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. BM08a Bergstra JAMiddelburg CADistributed strategic interleaving with load balancingFuture Gener Comput Syst200824653054810.1016/j.future.2007.08.001Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. BM08b Bergstra JA, Middelburg CA. Thread algebra for sequential poly-threading. Electronic Report PRG0804, Programming Research Group, University of Amsterdam, March 2008. Available at http://www.science.uva.nl/research/prog/publications.html. Also available at http://arxiv.org/: Google ScholarGoogle Scholar
  9. BM08c Bergstra JA, Middelburg CA Thread extraction for polyadic instruction sequences. Electronic Report PRG0803, Programming Research Group, University of Amsterdam. Available at http://www.science.uva.nl/research/prog/publications.html. Also available at http://arxiv.org/: Google ScholarGoogle Scholar
  10. BP07 Bergstra JAPonse AExecution architectures for program algebraJ Appl Logic20075117019222933361116.6802410.1016/j.jal.2005.10.013Google ScholarGoogle Scholar
  11. BW90 Baeten JCMWeijland WPProcess Algebra, volume 18 of Cambridge Tracts in Theoretical Computer Science1990CambridgeCambridge University PressGoogle ScholarGoogle Scholar
  12. Car84 Carlow GDArchitecture of the space shuttle primary avionics software systemCommun ACM198427992693610.1145/358234.358258Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. CPC10 Che W, Panda A, Chatha KS (2010) Compilation of stream programs for multicore processors that incorporate scratchpad memories. In DATE ’10, pp 1118–1123. IEEE Computer Society Press, AlamitosGoogle ScholarGoogle Scholar
  14. Fok00 Fokkink WJ (2000) Introduction to Process Algebra. Texts in Theoretical Computer Science, An EATCS Series. Springer, BerlinGoogle ScholarGoogle Scholar
  15. GJSB00 Gosling J, Joy B, Steele G, and Bracha G (2000) The Java Language Specification. Addison-Wesley, Reading, MA, second ednGoogle ScholarGoogle Scholar
  16. Hoa85 Hoare CARCommunicating Sequential Processes1985Englewood CliffsPrentice-Hall0637.68007Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. HWG03 Hejlsberg AWiltamuth SGolde PC# Language Specification2003Reading, MAAddison-WesleyGoogle ScholarGoogle ScholarDigital LibraryDigital Library
  18. M+05 Maeda Set al.A real-time software platform for the cell processorIEEE Micro2005255202910.1109/MM.2005.79Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Mil89 Milner RCommunication and Concurrency1989Englewood CliffsPrentice-Hall0683.68008Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Pan68 Pankhurst RJProgram overlay techniquesCommunications of the ACM19681121191250164.4620410.1145/362896.362923Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. PvdZ06 Ponse A, van der Zwaag MB (2006) An introduction to program and thread algebra. In: Beckmann A et al (eds) CiE 2006, volume 3988 of Lecture Notes in Computer Science. Springer, Berlin, pp. 445–458Google ScholarGoogle Scholar
  22. ST99 Sannella D, Tarlecki A (1999) Algebraic preliminaries. In: Astesiano E, Kreowski H-J, Krieg-Brückner B (eds) Algebraic Foundations of Systems Specification. Springer, Berlin, pp. 13–30Google ScholarGoogle Scholar
  23. Stu78 Stubblefield FWA main program and overlay manager subsystem within a distributed function laboratory computer systemIEEE Trans Nuclear Sci197825121722510.1109/TNS.1978.4329307Google ScholarGoogle Scholar
  24. Wir90 Wirsing M (1990) Algebraic specification. In: van Leeuwen J (ed) Handbook of Theoretical Computer Science, volume B, pp. 675–788. Elsevier, AmsterdamGoogle ScholarGoogle Scholar

Index Terms

  1. Thread algebra for poly-threading
            Index terms have been assigned to the content through auto-classification.

            Recommendations

            Comments

            Login options

            Check if you have access through your login credentials or your institution to get full access on this article.

            Sign in

            Full Access

            • Article Metrics

              • Downloads (Last 12 months)11
              • Downloads (Last 6 weeks)0

              Other Metrics

            PDF Format

            View or Download as a PDF file.

            PDF

            eReader

            View online with eReader.

            eReader