Home » Year » 2020 » Redefining Resource Allocation in Computing Systems

Redefining Resource Allocation in Computing Systems

By Jacob Chasan

A new kernel1 is in town. The current industry-standard for resource allocation on computers does
not take the user’s preferences into account, rather programs are given access to resources based on the
time that each requested to be run. Although this system can lead to solutions that minimize the time it
takes for a program to receive an allocation, it often leads to an incentive misalignment between the
programs and the user. This misalignment is exacerbated as the current queue-based systems have no
inherent mechanism to prevent a tragedy of the commons issue, whereby programs take more resources
from the system than the value they provide to the user. By shifting to a market-based approach, where
computing resources are allocated to programs based on how much utility the user receives from each
program, the incentives of the programs and the users align. With inherent market mechanisms to keep
the incentives aligned, this new paradigm leads to at least superior levels of utility for a user.

1As described in subsequent parts of this paper, the kernel is the core program within an operating system which is given the authority to allocate the hardware resources amongst the programs on the computer.

View Thesis

Advisors: Professor Benjamin C. Lee, Professor Atila Abdulkadiroglu, Professor Michelle Connolly | JEL Codes: C8, C80


Undergraduate Program Assistant
Jennifer Becker

Director of the Honors Program
Michelle P. Connolly