Curriculum Vitae: Timothy Mann

Updated August 18, 2001

Home:

707 Leahy St. #127-C
Redwood City, CA 94061
(650) 367-8019

Email: tim@tim-mann.org

Web page: http://www.tim-mann.org/


Professional Interests

My interests within computing are rather broad. I enjoy working on lower-level software, from the hardware/software boundary on upward. I also enjoy working on networking and distributed systems problems. My professional experience has been in naming, file systems, clock synchronization, operating system kernels, and software configuration management. I've also done nonprofessional work in emulation and user interfaces. Some specific projects that I've worked on are described below.

Vesta: Vesta is an integrated system for software configuration management, consisting of a repository that stores immutable, versioned source code in a file system name space, a builder that automates the process of making derived objects from source, and a site-wide shared cache that speeds up the builder by allowing it to avoid redoing work that has been done before. I designed and implemented the repository, the tools that use the repository for source control, and the features and tools for replicating source code at multiple sites and doing cross-site checkout. I also contributed to the design, debugging, and documentation of most other parts of the system. For the past two years, Vesta was in daily use by a group of about 150 developers working on a large microprocessor design, distributed across two sites on opposite coasts. During this period I helped provide second-line support and implemented several new features that were requested by our users. Vesta has recently been approved for release as open source software.

Itsy: I implemented a Linux flash-memory based file system for the Itsy pocket computer. The initial version was done quickly by modifying and gluing together several existing pieces of code, but I later worked with a summer intern on Cloudburst, a new implementation with built-in compression. Unfortunately our work was rendered irrelevant by the release of MTD and JFFS2.

Frangipani: Frangipani is a distributed file system built on top of the Petal scalable network storage system. I was co-designer of Frangipani and wrote most of the paper.

Echo: Echo was a research file system with replication for high availability, logging for rapid crash recovery, and extensive write-behind caching for performance. I worked mostly on the client side, including the cache and failover.

Clock synchronization: I've done some unpublished work with Leslie Lamport on clock synchronization, including both implementation and algorithm design. I spoke on part of it at the March 1996 Dagstuhl-Seminar on Time Services.

Decentralized naming: My Ph.D. thesis work was on a scheme for doing name lookup using multicast, thus eliminating name servers as a point of failure.

Nonprofessional Interests

Music: I play the guitar and lead singalongs on a regular basis for some church groups I'm involved with.

Chess: I am the main author of xboard and WinBoard, which are free graphical user interfaces for playing chess against a chess program or against another user on an Internet Chess Server. Over 100 chess programs now work with these interfaces.

Retrocomputing: I am the main author of xtrs, a free Radio Shack TRS-80 emulator for Unix. I've also written a set of free tools for reading and writing unusual floppy disk formats with the Catweasel universal floppy disk controller.

Education

Memberships and Professional Activities

Member ACM, IEEE CS, Phi Beta Kappa, Pi Mu Epsilon, Sigma Pi Sigma. Referee for conferences SOSP, OSDI, ASPLOS, PODC, ISCA, ISWC; journals TOCS, TPDS, SP&E, TON, TSE. Program committee for 2nd WMRD, 1990.

Employment History

VMware, September 2001 to present. Senior Member of the Technical Staff.

Compaq Systems Research Center (formerly Digital Equipment Corporation Systems Research Center), May 1987 to August 2001. Promoted from Member of Technical Staff to Senior Member of Technical staff in October 1999. I worked on several research projects (mostly described above) and consulted with various product groups.

Stanford University Computer Science Department, September 1981 to May 1987. Graduate Research and Teaching Assistant. As a research assistant, I worked on many parts of the V distributed operating system, concentrating on the microkernel and the naming service. I also edited the V user manual and coordinated system releases to users outside Stanford. As a teaching assistant, I prepared and graded tests and homework, and give individual tutoring.

Other Employment, June 1978 to May 1987. At various times during this period I had summer or part-time positions at Silicon Graphics (consulting), Bell Laboratories (summer intern), Marquette University (research assistant), Galactic Software (TRS-80 operating system programmer), and Lutheran Hospital (programmer and special projects).

Personal Data

Born March 9, 1959 in Milwaukee, Wisconsin. I have lived in the San Francisco Bay Area since 1981 and prefer to stay here. In good health; I was successfully treated for lymphoma in 1992 and there have been no signs of recurrence.

Papers and Patents

  1. Allan Heydon, Roy Levin, Timothy Mann, and Yuan Yu. Vesta: A System for Software Configuration Management. Book-length report, in preparation.

  2. Timothy Mann. Partial Replication in the Vesta Software Repository. Research Report 172, Compaq Systems Research Center, Palo Alto, CA, August 17, 2001.

  3. William R. Hamburgen, Deborah A. Wallach, Marc A. Viredaz, Lawrence S. Brakmo, Carl A. Waldspurger, Joel F. Bartlett, Timothy Mann, and Keith I. Farkas. Itsy: Stretching the bounds of mobile computing. IEEE Computer, 34(4):28-36, April 2001.

  4. Allan Heydon, Roy Levin, Timothy Mann, and Yuan Yu. The Vesta approach to software configuration management. Research Report 168, Compaq Systems Research Center, Palo Alto, CA, March 2001.

  5. Gretta Bartels and Timothy Mann. Cloudburst: A compressing, log-structured virtual disk for flash memory. Technical Note 2001-001, Compaq Systems Research Center, Palo Alto, CA, February 2001.

  6. Chandramohan A. Thekkath, Timothy P. Mann, and Edward K. Lee. Scalable Distributed File System. United States Patent 6,173,293. January 2001.

  7. Allan Heydon, Jim Horning, Roy Levin, Timothy Mann, and Yuan Yu. The Vesta-2 Software Description Language. Technical Note 1997-005c, Digital Systems Research Center, Palo Alto, CA, June 1998.

  8. Chandramohan Thekkath, Timothy Mann, and Edward K. Lee. Frangipani: A scalable distributed file system. In Proceedings of the 16th ACM Symposium on Operating Systems Principles, pages 224-237. ACM Press, October 1997.

  9. Timothy Mann, Andrew D. Birrell, Andy Hisgen, Chuck Jerian, and Garret Swart. A coherent distributed file cache with directory write-behind. ACM Transactions on Computer Systems, 12(2):123-164, May 1994. A preliminary version appeared as SRC Research Report 103.

  10. Garret Swart, Andrew D. Birrell, Andy Hisgen, and Timothy Mann. Availability in the Echo file system. Research Report 112, Compaq Systems Research Center, Palo Alto, CA, September 1993.

  11. Andrew D. Birrell, Andy Hisgen, Chuck Jerian, Timothy Mann, and Garret Swart. The Echo distributed file system. Research Report 111, Compaq Systems Research Center, Palo Alto, CA, September 1993.

  12. Andy Hisgen, Andrew D. Birrell, Chuck Jerian, Timothy Mann, and Garret Swart. New-value logging in the Echo replicated file system. Research Report 104, Compaq Systems Research Center, Palo Alto, CA, June 1993.

  13. Andy Hisgen, Andrew D. Birrell, Chuck Jerian, Timothy Mann, and Garret Swart. Some consequences of excess load on the Echo replicated file system. In Proceedings of the IEEE Workshop on the Management of Replicated Data, pages 92-95. IEEE, November 1992.

  14. Michael Burrows, Chuck Jerian, Butler Lampson, and Timothy Mann. On-line data compression in a log-structured file system. In Proceedings of 5th Conference on Architectural Support for Programming Languages and Operating Systems, October 1992, Also appeared as SRC Research Report 85.

  15. Andy Hisgen, Andrew D. Birrell, Chuck Jerian, Timothy Mann, Michael D. Schroeder, and Garret Swart. Granularity and semantic level of replication in the Echo distributed file system. In Proceedings of the IEEE Workshop on the Management of Replicated Data, November 1990.

  16. Andy Hisgen, Andrew D. Birrell, Timothy Mann, Michael D. Schroeder, and Garret Swart. Availability and consistency tradeoffs in the Echo distributed file system. In Proceedings of 2nd IEEE Workshop on Workstation Operating Systems, pages 49-54. IEEE, September 1989.

  17. Timothy Mann, Andy Hisgen, and Garret Swart. An algorithm for data replication. Research Report 46, Compaq Systems Research Center, Palo Alto, CA, June 1989.

  18. David R. Cheriton and Timothy P. Mann. Decentralizing a global naming service for improved performance and fault tolerance ACM Transactions on Computer Systems, 7(2):147-183, May 1989.

  19. Timothy Paul Mann. Decentralized naming in distributed computer systems. Stanford University, School of Engineering, Computer Science Department, Stanford, CA, May 1987. Ph.D. Thesis. Available as Computer Science Technical Report STAN-CS-87-1179.

  20. David R. Cheriton and Timothy P. Mann. A decentralized naming facility. Technical Report STAN-CS-86-1098, Computer Science Department, Stanford University, Stanford, CA, February 1986. Figures are missing from online copy.

  21. Ross Finlayson, Timothy Mann, Jeffrey Mogul, and Marvin Theimer. A reverse address resolution protocol. Request For Comments 903, Network Information Center, SRI International, June 1984.

  22. David R. Cheriton and Timothy P. Mann. Uniform access to distributed name interpretation in the V-System. In Proceedings of the Fourth International Conference on Distributed Computing Systems, pages 290-297. IEEE, 1984. Co-winner of Best Paper award. Figures are missing from online copy.