- Broad experience in operating systems implementation, language
run-times, virtualization, availability, networking and storage systems with large and small
|Chief .* Officer at
Bitiotic||February 2012 - |
Design, develop, build, publish, market, and support Android games. Published
Freeform Backgammmon. Follow-up game in development.
Development in Java with Libgdx and OpenGL.
Palo Alto, California
|Senior Staff Engineer at
VMware, Inc.||February 2003 - September 2011|
Developed user-mode support in the
ESXi hypervisor kernel with
the core kernel team over several years.
Improved reliability, serviceability and availability features of the ESXi kernel.
Developed replica-site infrastructure for
vSphere VM Replication.
Worked on three patents (all granted). Gave presentations at VMworld (`07, `08 and `10).
JSR-121 proposed support for starting, controlling and managing multiple applications in Java.
Representative for the Flux Research Group at the University of
Utah. Drove discussions on design and
on technical details, maintained CVS repository and several
group documents. Built prototype implementation.
Department Of Computer Science,
University of Utah, Salt Lake City, Utah
Technical lead for the Janos project, a resource-aware Java
Virtual Machine that is the operating system for an
Implementation in Java and C. Research in resource management
including memory, CPU, and network controls.
MS, Computer Science, December 1999.
University of Utah.
Emphasis in melding operating systems and language run-times. Author or
co-author of eight publications and one thesis.
Coursework included graphics, vision, networking, formal methods,
operating systems, and compilers.
The Alta Operating System.
Alta is a Java operating system: a Java Virtual Machine that
leverages type-safety to support and isolate multiple applications with similar
guarantees and features as a traditional operating system.
BS, Computer Science, summa cum laude, May 1995.
University of Vermont.
- TECHINCAL SKILLS:
- Languages (Expert): C, Python, Java, Latex, (GNU)make, sh.
Pascal, BASIC, x86 assembly, sed, autoconf, Go, m4, GLSL.
Languages (Familiar): csh, awk, ML, Postscript, Lisp, XML.
Operating Systems: Android, ESX, UNIX (Linux, FreeBSD, Solaris), Windows, Alta, Janos.
APIs/Protocols/Libraries/Tools: POSIX signals/sockets/threads, TCP/IP,
C++ STL, SWIG, SQLite, OpenGL, DOM, SDL, CVS, Libgdx, REST, JSON, Eclipse, GNU toolchain,
vi, emacs, HTTP, PowerPoint, Excel, blogofile, git, github, cygwin, Apache.
Transparent recovery from hardware memory errors
Error reporting through observation correlation
Static, configurable kernel interface
- SELECTED PUBLICATIONS:
- See my publications page
for a complete list of publications.
Janos: A Java-oriented OS for Active Networks.
Patrick Tullmann, Mike Hibler, and Jay Lepreau
IEEE Journal on Selected Areas in Communications, special issue on Active Networks, March 2001.
Techniques for the Design of Java Operating Systems.
Patrick Tullmann, Leigh Stoller, Wilson Hsieh, and Jay Lepreau
Proceedings of the 2000 USENIX Annual Technical Conference June, 2000.
Formal Methods: A Practical Tool for OS Implementors.
Patrick Tullmann, Jeff Turner, John McCorquodale, Jay Lepreau, Ajay Chitturi, and Godmar Back
Proceedings of the 6th Workshop on Hot Topics in Operating
Systems (HOTOS-VI). May, 1997.
User-level Checkpointing Through Exportable Kernel State.
Patrick Tullmann, Jay Lepreau, Bryan Ford, and Mike Hibler
Proceedings of the 5th International Workshop on
Object-Orientation in Operating Systems (IWOOOS `96) October, 1996.
from my presentation are available (Postscript).
- IRRELEVANT SKILLS:
- Intermediate mountain biker,
expert skier, novice rock
climber. Skilled with Aperture Science handheld portal device.
- Available upon request.