Issue No. 08 - August (1974 vol. 23)
J.-L. Baer , Computer Science Group, University of Washington
The efficient utilization of a two-level directly executable memory system is investigated. After defining the time and space product resulting from static allocation of the most often referenced pages, from paging, and from an optimal algorithm when the amount of primary memory is constrained, we introduce a learning algorithm. Its basic feature is to monitor references in such a way that it prevents seldom accessed pages to be brought into primary memory. The additional hardware requirements are not extensive. Simulations attest to the validity of the concept, and show that results are comparable with those obtained from the static allocation (the latter being impractical since it requires the knowledge of the whole reference stream) and superior to those obtained with paging. In the case of application programs, contributions to the learning algorithm can be made at compile time. Algorithms and data stuctures necessitated in an optimizing phase of the compiler are described.
Directly executable memory, learning algorithm, optimized compiler, paging, static allocation, two-level memory hierarchy.
J. Baer, "On Program Placement in a Directly Executable Hierarchy of Memories," in IEEE Transactions on Computers, vol. 23, no. , pp. 838-849, 1974.