Home » About Me » My CV

Subscribe to Blog via Email

Enter your email address to subscribe to this blog and receive notifications of new posts by email.

Join 532 other subscribers

October 2018
S M T W T F S
« May    
 123456
78910111213
14151617181920
21222324252627
28293031  

My CV

William Anthony (“Tony”) Mason

1902-1028 Barclay St, Vancouver, BC, V6E0B1
wamason@gmail.com

Summary

Seeking to build upon my extensive experience doing operating systems research and development. I seek to expand upon our knowledge of systems by identifying and demonstrating innovative improvements in the field.

Work Experience

University of British Columbia, NSS Lab, January 2017 to August 2017

  • Research Assistant.  Working with Professor Andrew Warfield on research in operating systems research, with a focus on file systems related areas.

OSR Open Systems Resources, Inc. November 1994 to November 2016

  • Consulting Partner. In this role I was responsible for providing services to commercial customers, by designing and implementing key file systems technologies for file systems and file system filter drivers.  I was involved in critical aspects of our educational offerings, teaching classes in Driver Development, File Systems Development, File System mini-filter development and Kernel Debugging.  Focus was on the Windows OS platform.  Recent projects include: Isolation Filter Kit that provides multiple simultaneous views of a single file on either local or network storage without modifying the underlying file system.  This abstraction was useful for transparent per-file encryption in that different applications could be given different views (raw or encrypted) of the file, with coherency, specialized file system mini-filter for transparently backing up SQL databases to Azure, another for doing block level change tracking for SQL databases.

FORE Systems, September 1993 to November 1994

  • Technical Manager. In this role I was responsible commercial ATM adapter device driver development for PC platforms (Windows, Novell, and OS/2). Actively participated in the ATM Forum (SA&A  and LAN Emulation SWG).  Worked with both Microsoft and Novell to define and establish architectural support for ATM.

Transarc Corporation, July 1989 to September 1993

  • Area Manager. Technical management for DCE LFS physical media file systems work: coordinate activities of team members, managed DCE/DFS integration including working with key external partners: OSF, HP, IBM and Digital Equipment Corporation.
  • Member of Technical Staff. Transarc AFS development on various UNIX platforms, DCE/DFS development.  As a member of the Episode team I was responsible for designing and implementing the transactional system, still novel for its use of undo/redo model journaling.   Part of the DCE/DFS development team, participated in architecuture and design.

Stanford University, June 1987 to June 1989

  • Research Staff. Working in Professor David Cheriton’s Distributed Systems Group.  Responsible for systems administration for the group.  Implemented the UNIX version of VMTP (Versatile Message Transport Protocol), a reliable transport protocol for use over IP, including IP multicast.  Wrote kernel mode device drivers for Ethernet NICs for the V Operating System, as well as a primitive kernel debugger.

Education

Teaching Experience

  • Georgia Institute of Technology, Atlanta GA, August 2015 to Present. Teaching Assistant for Professor Ada Gavrilovska’s Graduate Introduction to Operating Systems.  Answer student questions (Piazza, Slack), assist in development and maintenance of automated grading system for student code, maintain documentation for student projects, enhance and document class procedures, coordinate activities with other TAs.
  • OSR Open Systems Resources Inc., Amherst, NH March 1996 to November 2016. Design and develop kernel mode development classes on Device Drivers, File System Drivers, File System Mini-Filter Drivers, Windows OS Internals, and Kernel Debugging for both lecture and lab workshop style classes.

Patents

Publications

  • Books
    Windows NT Device Driver Development, New Riders, 1998
    lex & yacc, O’Reilly & Associates, June 1990 (1st Edition), November 1992 (2nd Edition)
  • Articles & Papers
    Changes in Windows 10 Redstone, The NT Insider, January/February 2017
    Logical and Physical File Sizes in Windows, The NT Insider, Mar/Apr 2015
    Minifilter Load and Unload Ordering, The NT Insider, May/June 2014
    Alternatives to Drive Letters, The NT Insider, May/June 2014
    Windows Pool Manager, The NT Insider, Jan/Feb 2014
    The Isolation Driver (Part II), The NT Insider, Vol. 18, Iss. 1, January 2011
    The Isolation Driver (Part I), The NT Insider, Vol. 17, Iss. 2, July 2010
    Undocumented DFS & RDR Interactions, The NT Insider, Vol. 17, Iss. 2, July 2010
    File Systems, File System Filter Drivers and Removable Storage Devices, The NT Insider, Vol. 16, Iss. 2, May 2009
    Filtering File Systems – Ten Things You Should Know, The NT Insider, Vol. 16, Iss. 1, January 2009
    Debugging 103: Where to Go With a System Crash, The NT Insider, Vol. 15, Iss. 2, July 2008
    Windows Vista and File Systems, The NT Insider, Vol. 14, Iss. 4, November 2007
    An Introduction to Transactions, The NT Insider, Vol. 14, Iss. 1, January 2007
    MUP Changes in Windows Vista, The NT Insider, Vol. 14, Iss. 1, January 2007
    Obtaining a Useful Name for the Executable Image in a Process, The NT Insider, Vol. 13, Iss. 4
    An Introduction to File System Streams, The NT Insider, Vol. 13, Iss. 2, March 2006
    Hashing Techniques, The NT Insider, Vol. 13, Iss. 1, January 2006
    The Transactional File System (TxFS) in Windows, The NT Insider, Vol. 12, Iss. 3 May 2005
    File System Filter Context – Observations & Comments, The NT Insider, Vol. 11, Iss. 5, November 2004
    Testing File Systems, The NT Insider, Vol. 11, Iss.3, May 2004
    Blocking Special Kernel APCs at IRQL PASSIVE_LEVEL, The NT Insider, Vol. 11, Iss. 2, March 2004
    Clever Ways to Save Stack Space, The NT Insider, Vol. 11, Iss. 2, March 2004
    Finding File Contents in Memory, The NT Insider, Vol. 11, Iss. 1, January 2004
    Debugging a Sound Driver, The NT Insider, Vol. 11, Iss. 1, January 2004
    Caching in the Pentium 4 Processor, The NT Insider, Vol. 11, Iss. 1, January 2004
    Finding Your Way Through the Stack, The NT Insider, Vol. 9, Iss. 6, November 2003
    Emerging Issues in IoCancelFileOpen, The NT Insider, Vol. 10, Iss. 4, September 2003
    Debugging Another Crash Dump, The NT Insider, Vol. 10, Iss. 2, March 2003
    Calling Conventions for the x86, The NT Insider, Vol. 10, Iss. 1, January 2003
    Reparse Points in Windows, The NT Insider, Vol. 10, Iss. 1, January 2003
    Managing Address Space Increases for IA64, The NT Insider, Vol. 9, Iss. 4, July 2002
    Drive Letter Assignment and the Mount Manager, The NT Insider, Vol. 9, Iss. 4, July 2002
    Byte Range Locking, The NT Insider, Vol. 9, Iss. 3, May 2002
    Reference Counting for File System Filter Drivers, The NT Insider, Vol. 9, Iss. 2, March 2002
    Using the Inverted Call Model, The NT Insider, Vol. 9, Iss. 1, January 2002
    A Review of Synchronization Primitives, The NT Insider, Vol. 9, Iss. 1, January 2002
    New File Systems Material in Windows XP, The NT Insider, Vol. 8, Iss. 4, July 2001
    Name Tunneling in Windows 2000 File Systems, The NT Insider, Vol. 8, Iss. 3, May 2001
    Windows NT Security Part III, The NT Insider, Vol. 8, Iss. 3, May 2001
    Observations on File System Filter Drivers, The NT Insider, Vol. 7, Iss. 6, November 2000
    Analyzing A Crash Dump, The NT Insider, Vol. 7, Iss. 2, March 2000
    Windows NT Security Part II, The NT Insider, Vol. 6, Iss. 5, September 1999
    Windows NT Security Part I, The NT Insider, Vol. 6, Iss. 3, May 1999
    Structured Exception Handling, The NT Insider, Vol. 6, Iss. 2, March 1999
    Windows NT Virtual Memory Part II, The NT Insider, Vol. 6, Iss. 1, January 1999
    Windows NT Virtual Memory Part I, The NT Insider, Vol. 5, Iss. 2, March 1998
    Asynchronous Procedure Calls, The NT Insider, Vol. 5, Iss. 1, January 1998
    How NT Handles I/O Completion, The NT Insider, Vol. 4, Iss. 3, May 1997
    Building IRPs to Perform I/O, The NT Insider, Vol. 4, Iss. 1, January 1997
    The LanManager File Server on NT, The NT Insider, Vol. 3, Iss. 4, October 1996
    Oplocks on Windows NT, The NT Insider, Vol. 3, Iss. 3, July 1996
    Using the NT Cache Manager, The NT Insider, Vol. 3, Iss. 2, April 1996
    Life in the Fast I/O Lane, The NT Insider, Vol. 3, Iss. 1, January 1996
    LAN Emulation, IEEE Communications, Fall 1996
    Distributed Computing, Encyclopedia of Computer Science & Technology, Vol. 30, 1994
    OSF’s Distributed Computing Environment, UNIX Review, January 1993
    The Episode File System, USENIX Winter 1992, pp 43-60
    Decorum file system architecture overview, USENIX Summer 1990.
    The V Operating System, Byte Magazine, November 1987

Skills

  • Languages: C, C++, x86/x64 assembly, Python, Prolog, Forth, Tcl, Perl, various others.
  • Systems: Windows, Linux, UNIX, Mach, V

References

  • References are available on request.