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

  • Authors:
  • B. Ramakrishna Rau

  • Affiliations:
  • -

  • Venue:
  • MICRO 11 Proceedings of the 11th annual workshop on Microprogramming
  • Year:
  • 1978

Quantified Score

Hi-index 0.00

Visualization

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.