Publication Date

Spring 2017

Degree Type

Master's Project

Degree Name

Master of Science (MS)


Computer Science

First Advisor

Robert Chun

Second Advisor

Thomas Austin

Third Advisor

Dinesh Rathinasamy Thangavel


page replacement algorithms


Today’s computers are equipped with multiple processor cores to execute multiple programs effectively at a single point of time. This increase in the number of cores needs to be equipped with a huge amount of physical memory to keep multiple applications in memory at a time and to effectively switch between them, without getting affected by the low speed disk memory. The physical memory of today’s world has become so cheap such that all the computer systems are always equipped with sufficient amount of physical memory required effectively to run most of the applications. Along with the memory, the sizes of applications have also became huge. This again arises the problem of memory contention in most of the heavily loaded servers. So the physical memory has to be handled very effectively to achieve high performance. Many page replacement algorithms were developed by researchers and everything has its own advantages and disadvantages. All the algorithms have one goal of minimizing the page faults with less background work done [1]. Effectiveness of an algorithm depends on the work load as well. This paper discusses the various page replacement algorithms, their benefits, their failures and analyses them in certain workloads. Finally it presents an idea of changing the page replacement algorithms depending on the performance of each algorithm in that particular workload during runtime using system variables.