skip to main content
article
Free Access

Levels of representation of programs and the architecture of universal host machines

Published:19 November 1978Publication History
Skip Abstract Section

Abstract

The issue of high level language support is treated in a systematic top-down manner. Program representations are categorized into three classes with respect to a host processor: high level representations, directly interpretable representations and directly executable representations. The space of intermediate languages for high level language support is explored and it is shown that whereas the ideal intermediate language from the point of view of execution time is a directly executable one, the best candidate from the viewpoint of memory requirements is a heavily encoded directly interpretable representation. The concept of dynamic translation is advanced as a means for achieving both goals simultaneously; the program is present in the memory in a compact static representation, but its working set is maintained in a dynamic representation which minimizes execution time. The architecture and organization of a universal host machine, incorporating this strategy, is outlined and the potential performance gains due to dynamic translation are studied.

References

  1. 1 M. V. Wilkes, "The best way to design an automatic calculating machine," Manchester Univ. Comput. Inaugur. Conf., 1951, p. 16.Google ScholarGoogle Scholar
  2. 2 W. T. Wilner, "Design of the B1700," AFIPS Conf. Proc., 1972 FJCC, 41, 489-497, Montvale, NJ, AFIPS Press.Google ScholarGoogle Scholar
  3. 3 W. T. Wilner, "Burroughs B-1700 Memory Utilization," AFIPS Conf. Proc., 1972 FJCC, 41, 579-586, Montvale, NJ, AFIPS Press.Google ScholarGoogle Scholar
  4. 4 L. W. Hoevel, "DELTRAN Principles of Operation: A Directly Executed Language for FORTRAN-II," Tech. Note No. 108, Digital Systems Laboratory, Stanford Univ., Stanford, CA, March 1977.Google ScholarGoogle Scholar
  5. 5 J. P. Anderson, "A computer for direct execution of algorithmic languages," Proc. EJCC, 1961, 184-193.Google ScholarGoogle Scholar
  6. 6 Y. Chu, "Introducing the high-level language computer architecture," Tech. Rep. No. TR-227, Comput. Sci. Center, Univ. Maryland, College Park, Maryland, 1973.Google ScholarGoogle Scholar
  7. 7 H. M. Bloom, "Design and simulation of an ALGOL computer," Tech. Rep. No. 70-118, Comput. Sci. Center, Maryland, College Park, Maryland, 1970.Google ScholarGoogle Scholar
  8. 8 T. R. Bashkow, A. Sasson and A. Kronfeld, "System design for a FORTRAN machine," IEEE-TEC, Aug. 1971, 485-499.Google ScholarGoogle Scholar
  9. 9 M. Sugimoto, "PL/1 reducer and direct processor," Proc. ACM, 1969, 519-538. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. 10 R. Rice and W. R. Smith, "SYMBOL - A major departure from classic software dominated von Neumann computing systems," SJCC, 1971, 575-587.Google ScholarGoogle Scholar
  11. 11 E. W. Reigel, V. Faber and D. A. Fisher, "The interpreter - a microprogrammable building block system," AFIPS Conf. Proc., 1972 SJCC, 40, 705-723, Montvale, NJ, AFIPS Press.Google ScholarGoogle Scholar
  12. 12 H. W. Lawson and B. K. Smith, "Functional Characteristics of a Multilingual Processor," IEEE-TC, 20, July 1971, 732-742.Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. 13 Nanodata Corp., "QM-1 Hardware Level User's Manual," Second Edition, August 1974.Google ScholarGoogle Scholar
  14. 14 M. J. Flynn, C. J. Neuhauser and R. M. McClure, "EMMY - an emulation system for user microprogramming," AFIPS Conference Proceedings, 1975 NCC, 85-89.Google ScholarGoogle Scholar
  15. 15 L. W. Hoevel, "'Ideal' directly executed languages: an analytic argument for emulation," IEEE-TC, 23, 8, 1974, 759-767.Google ScholarGoogle Scholar
  16. 16 L. W. Hoevel and M. J. Flynn, "The Structure of Directly Executed Languages: A New Theory of Interpretive System Support," Digital Systems Lab. Tech. Rep. No. 130, Stanford Univ., March 1977. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. 17 G. Radin, "A note on the concept of binding," IBM Thomas J. Watson Res. Rep. No. RC 3287, Yorktown Heights, NY, March 1971.Google ScholarGoogle Scholar
  18. 18 P. Naur, (Ed.), "Revised report on the algorithmic language ALGOL 60," CACM 6, Jan. 1963, 1-17. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. 19 K. E. Iverson, "A Programming Language," Wiley, New York, 1962. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. 20 J. R. Bell, "Threaded Code," CACM, 16, 6, June 1973, 370-372. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. 21 J. B. Johnston, "The Contour Model of Block Structured Processes," Proceedings of the SDSPL (SIGPLAN Notices, Vol. 6) Feb. 1971, 55-82. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. 22 D. A. Huffman, "A method for the construction of minimum redundancy codes," I.R.E., 40, 9, Sept. 1952, 1098-1101.Google ScholarGoogle ScholarCross RefCross Ref
  23. 23 C. C. Foster and R. Gonter, "Conditional Interpretation of Operation Codes," IEEE-TC, Jan. 1971, 108-111.Google ScholarGoogle Scholar
  24. 24 E. C. R. Hehner, "Computer design to minimize memory requirements," Computer, 9, 8, Aug. 1976, 65-70.Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. 25 E. C. R. Hehner, "Information Content of Programs and Operation Encoding," JACM, 24, 2, Apr. 1977, 290-297. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. 26 B. S. Brawn and F. G. Gustavsen, "Program Behavior in a Paging Environment," AFIPS Proceedings, 33, FJCC, 1968, 1019-1032.Google ScholarGoogle Scholar
  27. 27 P. J. Denning, "The working set model for program behavior," CACM, 11, 5, May 1968, 323-333. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. 28 K. R. Kaplan and R. O. Winder, "Cache-based Computer Systems," Computer, 6, 3, March 1973, 30-36.Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. 29 D. H. Gibson, "Considerations in Block-Oriented Systems Design," Proc. SJCC, 1967, pp. 78-80.Google ScholarGoogle Scholar
  30. 30 R. M. Meade, "Design Approaches for Cache Memory Control," Computer Design, 10, January 1971, 87-93.Google ScholarGoogle Scholar
  31. 31 T. Kilburn, D. B. G. Edwards, M. J. Lanigan, and F. H. Summer, "One-level Storage Systems," IRE Trans. Elec. Comp., 11, 2, 1962, 223-235.Google ScholarGoogle Scholar
  32. 32 P. J. Denning, "Virtual Memory," Computing Surveys, 2,3, 1970, 153-189. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. 33 B. Randell, "A Note on Storage Fragmentation and Program Segmentation," CACM, 12, 7, July 1969, 365-369. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. 34 C. J. Conti, "Concepts for Buffer Storage," Computer Group News, 2, March 1969, 9-13.Google ScholarGoogle Scholar
  35. 35 S. H. Fuller, V. R. Lesser, C. G. Bell, and C. M. Kaman, "The Effects of Emerging Technology and Emulation Requirements on Microprogramming," IEEE-TC, 25, 10, Oct. 1976, 1000-1009.Google ScholarGoogle Scholar
  36. 36 W. D. Strecker, "Cache Memories for PDP-11 Family Computers," Third Annual Symposium on Computer Architecture, 1976, 155-158. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Levels of representation of programs and the architecture of universal host machines

        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

        • Published in

          cover image ACM SIGMICRO Newsletter
          ACM SIGMICRO Newsletter  Volume 9, Issue 4
          Dec. 1978
          160 pages
          ISSN:1050-916X
          DOI:10.1145/1014198
          Issue’s Table of Contents

          Copyright © 1978 Author

          Publisher

          Association for Computing Machinery

          New York, NY, United States

          Publication History

          • Published: 19 November 1978

          Check for updates

          Qualifiers

          • article

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader
        About Cookies On This Site

        We use cookies to ensure that we give you the best experience on our website.

        Learn more

        Got it!