Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Michael J. Feeley is active.

Publication


Featured researches published by Michael J. Feeley.


symposium on operating systems principles | 1999

Deciding when to forget in the Elephant file system

Douglas S. Santry; Michael J. Feeley; Norman C. Hutchinson; Alistair Veitch; Ross W. Carton; Jacob Ofir

Modern file systems associate the deletion of a file with the immediate release of storage, and file writes with the irrevocable change of file contents. We argue that this behavior is a relic of the past, when disk storage was a scarce resource. Today, large cheap disks make it possible for the file system to protect valuable data from accidental delete or overwrite.This paper describes the design, implementation, and performance of the Elephant file system, which automatically retains all important versions of user files. Users name previous file versions by combining a traditional pathname with a time when the desired version of a file or directory existed. Storage in Elephant is managed by the system using file-grain user-specified retention policies. This approach contrasts with checkpointing file systems such as Plan-9, AFS, and WAFL that periodically generate efficient checkpoints of entire file systems and thus restrict retention to be guided by a single policy for all files within that file system.Elephant is implemented as a new Virtual File System in the FreeBSD kernel.


symposium on operating systems principles | 1995

Implementing global memory management in a workstation cluster

Michael J. Feeley; W. E. Morgan; E. P. Pighin; Anna R. Karlin; Henry M. Levy; Chandramohan A. Thekkath

Advances in network and processor technology have greatly changed the communication and computational power of local-area workstation clusters. However, operating systems still treat workstation clusters as a collection of loosely-connected processors, where each workstation acts as an autonomous and independent agent. This operating system structure makes it difficult to exploit the characteristics of current clusters, such as low-latency communication, huge primary memories, and high-speed processors, in order to improve the performance of cluster applications. This paper describes the design and implementation of global memory management in a workstation cluster. Our objective is to use a single, unified, but distributed memory management algorithm at the lowest level of the operating system. By managing memory globally at this level, all system- and higher-level software, including VM, file systems, transaction systems, and user applications, can benefit from available cluster memory. We have implemented our algorithm in the OSF/1 operating system running on an ATM-connected cluster of DEC Alpha workstations. Our measurements show that on a suite of memory-intensive programs, our system improves performance by a factor of 1.5 to 3.5. We also show that our algorithm has a performance advantage over others that have been proposed in the past.


foundations of software engineering | 2001

Using aspectC to improve the modularity of path-specific customization in operating system code

Yvonne Coady; Gregor Kiczales; Michael J. Feeley; Greg Smolyn

Layered architecture in operating system code is often compromised by execution path-specific customizations such as prefetching, page replacement and scheduling strategies. Path-specific customizations are difficult to modularize in a layered architecture because they involve dynamic context passing and layer violations. Effectively they are vertically integrated slices through the layers. An initial experiment using an aspect-oriented programming language to refactor prefetching in the FreeBSD operating system kernal shows significant benefits, including easy (un)pluggability of prefetching modes, independent development of prefetching modes, and overall improved comprehensibility.


measurement and modeling of computer systems | 1998

Implementing cooperative prefetching and caching in a globally-managed memory system

Geoffrey M. Voelker; Eric J. Anderson; Tracy Kimbrel; Michael J. Feeley; Jeffrey S. Chase; Anna R. Karlin; Henry M. Levy

This paper presents cooperative prefetching and caching --- the use of network-wide global resources (memories, CPUs, and disks) to support prefetching and caching in the presence of hints of future demands. Cooperative prefetching and caching effectively unites disk-latency reduction techniques from three lines of research: prefetching algorithms, cluster-wide memory management, and parallel I/O. When used together, these techniques greatly increase the power of prefetching relative to a conventional (non-global-memory) system. We have designed and implemented PGMS, a cooperative prefetching and caching system, under the Digital Unix operating system running on a 1.28 Gb/sec Myrinet-connected cluster of DEC Alpha workstations. Our measurements and analysis show that by using available global resources, cooperative prefetching can obtain significant speedups for I/O-bound programs. For example, for a graphics rendering application, our system achieves a speedup of 4.9 over a non-prefetching version of the same program, and a 3.1-fold improvement over that program using local-disk prefetching alone.


ad hoc networks | 2004

Realistic Mobility for Mobile Ad Hoc Network Simulation

Michael J. Feeley; Norman C. Hutchinson; Suprio Ray

In order to conduct meaningful performance analysis of routing algorithms for Mobile Ad Hoc Networks (MANETs), it is essential that the mobility model on which the simulation is based reflects realistic mobility behavior. However, current mobility models for MANET simulation are either unrealistic or are tailor-made for particular scenarios. We introduce GEMM, a tool for generating mobility models that are both realistic and heterogeneous. These models are capable of simulating complex and dynamic mobility patterns representative of real-world situations. We present simulation results using AODV, OLSR and ZRP, three MANET routing algorithms and show that mobility-model changes have a significant impact on their performance.


architectural support for programming languages and operating systems | 1996

Reducing network latency using subpages in a global memory environment

Hervé A. Jamrozik; Michael J. Feeley; Geoffrey M. Voelker; James P. Evans; Anna R. Karlin; Henry M. Levy; Mary K. Vernon

New high-speed networks greatly encourage the use of network memory as a cache for virtual memory and file pages, thereby reducing the need for disk access. Because pages are the fundamental transfer and access units in remote memory systems, page size is a key performance factor. Recently, page sizes of modern processors have been increasing in order to provide more TLB coverage and amortize disk access costs. Unfortunately, for high-speed networks, small transfers are needed to provide low latency. This trend in page size is thus at odds with the use of network memory on high-speed networks.This paper studies the use of subpages as a means of reducing transfer size and latency in a remote-memory environment. Using trace-driven simulation, we show how and why subpages reduce latency and improve performance of programs using network memory. Our results show that memory-intensive applications execute up to 1.8 times faster when executing with 1K-byte subpages, when compared to the same applications using full 8K-byte pages in the global memory system. Those same applications using 1K-byte subpages execute up to 4 times faster than they would using the disk for backing store. Using a prototype implementation on the DEC Alpha and AN2 network, we demonstrate how subpages can reduce remote-memory fault time; e.g., our prototype is able to satisfy a fault on a 1K subpage stored in remote memory in 0.5 milliseconds, one third the time of a full page.


european conference on computer systems | 2007

Secure file system versioning at the block level

Jake Wires; Michael J. Feeley

In typical file systems, valuable data is vulnerable to being accidentally or maliciously deleted or overwritten. Versioning file systems protect data from accidents by transparently retaining old versions, but do less well in protecting data from malicious attack. These systems remain vulnerable to attackers who gain unauthorized access to prune old file versions, who bypass the file system to directly manipulate storage, or who exploit bugs in any part of the operating system. This paper presents VDisk, a secure, block-level versioning system that adds file-grain versioning to a standard, unmodified file system. VDisk consists of a set of untrusted user-mode tools and a trusted, secure kernel that is implemented within an isolated Xen virtual machine domain. The secure kernel is designed to be simple and thus trustworthy. This kernel logs file-system updates to a secure log, exports a read-only view of the log to the rest of the system and securely removes unwanted versions from the log. Secure cleaning is implemented in a two-level manner. An untrusted, user-mode cleaner selects log entries for reclamation and submits cleaning requests to the trusted VDisk kernel along with a proof that the request satisifies the devices version-retention policy. The secure kernel verifies the proof and updates the log.


acm sigplan symposium on principles and practice of parallel programming | 1991

Dynamic node reconfiguration in a parallel-distributed environment

Michael J. Feeley; Brian N. Bershad; Jeffrey S. Chase; Henry M. Levy

Idle workstations in a network represent a significant computing potential. In particular, their processing power can be used by parallel-distributed programs that treat the network as a loosely-coupled multiprocessor. But the set of machines free to participate in load sharing changes over time as users come and go from their workstations. To make full use of the available resources, parallel-distributed applications in the network must reconfigure to adapt to these changes as they run. This paper describes a node reconfiguration facility for Amber, an object-based parallel programming system for networks of multiprocessors. We describe system support that allows a parallel Amber application to adapt to changing network conditions by expanding to make use of new nodes as they become idle, and by contracting as nodes become busy. A key characteristic of Amber’s node reconfiguration is that it is handled at the user level in the Amber runtime system it does not depend on a kernel-level process migration facility. Our experiments with Amber show that node reconfiguration can be implemented easily and efficiently in a


high performance distributed computing | 1999

Using embedded network processors to implement global memory management in a workstation cluster

Yvonne Coady; Joon Suan Ong; Michael J. Feeley

Advances in network technology continue to improve the communication performance of workstation and PC clusters, making high-performance workstation-cluster computing increasingly viable. These hardware advances, however, are taxing traditional host-software network protocols to breaking point. A modern gigabit network can swamp a hosts IO bus and processor, limiting communication performance and slowing computation unacceptably. Fortunately, host-programmable network processors used by these networks present a potential solution. Offloading selected host processing to these embedded network processors lowers host overhead and improves latency. This paper examines the use of embedded network processors to improve the performance of workstation-cluster global memory management. We have implemented a revised version of the GMS global memory system that eliminates host overhead by as much as 29% on active nodes and improves page fault latency by as much as 39%.


internet measurement conference | 2009

Non-intrusive, dynamic interference detection for 802.11 networks

Kan Cai; Michael Blackstock; Michael J. Feeley; Charles Krasic

In densely packed 802.11 environments, access-point domains significantly overlap and wireless hosts interfere with each other in complex ways. Knowing which devices interfere is an essential first step to minimizing this interference, improving efficiency and delivering quality connectivity throughout the network. This knowledge, however, is extremely difficult to obtain without either taking a running network offline for measurements or having client hosts monitor and report airspace anomalies, something typically outside the control of network administrators. In this paper we describe a technique we have developed to reveal wireless-network interference relationships by examining the network traffic at wired routers that connects wireless domains to the Internet. This approach, which we call VOID (Vvirless Online Interference Detection), searches for correlated throughput changes that occur when traffic from one node causes a throughput drop at other nodes in its radio range. In one analysis round we identify each nodes interference neighbours using a single set of performance data collected from a wired-network router. We have evaluated VOID in Emulab testbeds consisting of tens of nodes as well as a six-node testbed in a live wireless network. The initial results have shown the promise of VOID to accurately correlate interfering devices together and effectively discriminate interfering devices from non-interfering ones.

Collaboration


Dive into the Michael J. Feeley's collaboration.

Top Co-Authors

Avatar

Norman C. Hutchinson

University of British Columbia

View shared research outputs
Top Co-Authors

Avatar

Henry M. Levy

University of California

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Joon Suan Ong

University of British Columbia

View shared research outputs
Top Co-Authors

Avatar

Kan Cai

University of British Columbia

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Gregor Kiczales

University of British Columbia

View shared research outputs
Top Co-Authors

Avatar

Anna R. Karlin

University of Washington

View shared research outputs
Top Co-Authors

Avatar

Andrew Warfield

University of British Columbia

View shared research outputs
Top Co-Authors

Avatar

Brendan Cully

University of British Columbia

View shared research outputs
Researchain Logo
Decentralizing Knowledge