Mike Feeley

Associate Professor
Email: feeley [at] cs [dot] ubc [dot] ca
Office: ICCS 393
Phone: 604-822-8179

Curriculum Vitae

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-).


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.

Latest CS Courses

2019 Winter

CPSC 213  –  Introduction to Computer Systems

2019 Summer

CPSC 210  –  Software Construction

2018 Winter

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

2017 Winter

CPSC 210  –  Software Construction

a place of mind, The University of British Columbia


ICICS/CS Building 201-2366 Main Mall
Vancouver, B.C. V6T 1Z4 Canada
Tel: 604-822-3061 | Fax: 604-822-5485
General: help@cs.ubc.ca
Undergrad program: undergrad-info@cs.ubc.ca
Graduate program: grad-info@cs.ubc.ca

Emergency Procedures | Accessibility | Contact UBC | © Copyright The University of British Columbia