Mike Feeley

Associate Professor

Office Phone #

Academic Information

Software Designer, CCA Inc. (1983); Vice President, Litton Federal Credit Union (1984-1988); B.Sc., University of Washington (1990); M.Sc., University of Washington (1992); Ph.D., University of Washington (1996); Assistant Professor, University of British Columbia (1997-2002); Associate Professor, University of BC (2003-).

Interest Keywords

Distributed Systems
Operating Systems
workstation and pc clusters


My research is in the area of operating systems and distributed systems. I am interested in the design of software abstractions that simplify application programming, adapt to new applications and new hardware, and deliver the raw performance potential of modern hardware to the applications that need it. I am currently exploring these issues along several fronts, including wide-scale distribution in the Internet and closely coupled distribution in workstation and PC clusters.

A main focus of my research is small-scale distributed computing in workstation and personal computer clusters. My goal is to build systems that utilize new high-speed local-area networks to improve application performance. We are developing new operating system structures and algorithms for managing system resources such as processors, memory, network, and disks in a fully distributed and cooperative way.

For example, we have developed a system called GMS that allows programs on a heavily-loaded PC to automatically use memory on idle computers for both filesystem and virtual memory backing store, rather than disk, thereby reducing access time to that data. This operating system facility improves page-fault and data-read latency by 100-times for programs running in our gigabit-network testbed.

In another project, we are building a new file system, called Elephant, that leverages today's large cheap disks to automatically retain all-important versions of files. Elephant users are thus protected from accidental delete or overwrite. Elephant allows users to rollback a directory or file to any point in the past. Typing cd .#yesterday-11:00, for example, rollsback the current working directory to yesterday at 11:00.

Selected Publications

Yvonne Coady, Joon Suan Ong, and Michael J. Feeley, "Using Embedded Network Processors to Implement Global Memory Management in a Workstation Cluster". Proceedings of the IEEE Symposium on High Performance Distributed Computing, August 1999.
Douglas S. Santry, Michael J. Feeley, Norman C. Hutchinson, Alistair C.Veitch, "Elephant: The File System that Never Forgets". Proceedings of the IEEE Workshop on Hot Topics in Operating Systems (HOTOS), March 1999. (Best Student Paper)
M. J. Feeley, W. E. Morgan, F. H. Pighin, A. R. Karlin, H. M. Levy, and C.A. Thekkath, "Implementing Global Memory Management in a Workstation Cluster". Proceedings of the ACM Symposium on Operating Systems Principles (SOSP), 1995.
J. S. Chase, H. M. Levy, M. J. Feeley, and E. D. Lazowska, "Sharing and Protection in a Single Address Space Operating System". In ACM Transactions on Computer Systems, November 1994.

Research Interests


Research Groups

NSS: Networks, Systems and Security Lab

Latest Courses

2020 Winter

CPSC 213 - Introduction to Computer Systems

2018 Winter

CPSC 213 - Introduction to Computer Systems
CPSC 210 - Software Construction

2017 Winter

CPSC 213 - Introduction to Computer Systems
CPSC 210 - Software Construction