摘要 |
<p>A multitasking data processing machine supports virtual memory comprising a plurality of segments, and has physical memory comprising relatively fast main memory and relatively slow secondary memory. A constantly varying subset of secondary memory paged contents is copied in main memory page frames. When a memory access is required during operation of the machine, a virtual address is generated, which must be translated into a physical address, in order to address main memory. The data processing machine provides an indexed local random access memory (T/RAM) for storing previously translated addresses. The T/RAM has a capacity of one entry for each page of supported virtual memory. Before a translation is performed, The T/RAM is indexed by the virtual address; in case of a T/RAM fault, translation is performed and the translated physical address is loaded to the indexed location before restarting the memory operation. A subsequent reference to the same virtual address indexes the previously translated physical address, which is then used for addressing main memory and is also applied to index a reference/change table. A stored monitor/no monitor signal associated with each segment of virtual memory controls the storage of referenced virtual addresses for monitored segments. Upon a task switch, the stored virtual addresses are applied to index the corresponding T/RAM entries for rapid selective and partial clearing of the T/RAM.</p> |