The VMOS paging algorithm: a practical implementation of the working set model

Substantial theoretical work has been done on paging algorithms and the related area of task scheduling. In this article, we describe the paging algorithm currently used by the UNIVAC Virtual Memory Operating System (VMOS) (running on Series 70 systems: 70/3, 70/7, 70/46, 70/61) plus those task scheduling decisions which affect the paging algorithm. Many articles on paging algorithms have approached the subject from a theoretical point of view or else they have evaded the guts of the issue by referring to pages which "are no longer members of the working set" without indicating how they made such a determination. This paper presents the decision rules for a system that is operational in customer production sites. It spells out in detail how the system is actually working and how the algorithm actually functions, without trying to hide those decisions which we recognize require further evaluation. Finally, some of our experiences with the algorithm and its development are also presented.