Frank Mayhar

Current
Past
  • Owner at Exit Consulting
  • Software Engineer at Micro Memory LLC
  • Contractor at Sparta, Inc.
Education
  • Stephen F. Austin State University
Connections
71 connections
Industry
Computer Software
Websites

Frank Mayhar’s Summary

I have over twenty years of experience in operating systems, including more than ten in the Unix kernel. I've worked in Darwin/MacOSX, FreeBSD, Linux, BSD/OS, Unixware and many others. I'm a software engineer and I try to make that term mean something with respect to my work. I'm what Robert Glass refers to as a "practitioner." I use software engineering techniques to get the job done right and I try to avoid the catchphrase-of-the-year syndrome.

I want to remain both challenged by and interested in my work. I'm very interested in kernel-level problems, extending to networking, distributed systems, clustering and a number of other professional interests.

Frank Mayhar’s Specialties:

High availability, clustered and distributed systems, realtime design and implementation, storage virtualization.
Operating systems internals; realtime, clustering, distributed systems, SMP support, networking, file systems, memory management, scheduling, concurrency, file sharing, cache management, fine-grained locking, performance, scalability issues.
Unix kernels: MacOSX (Darwin) 10.4, BSD/OS, FreeBSD, Linux 2.4 and 2.6, NetBSD, Unixware, others.


Frank Mayhar’s Experience

  • Software Engineer

    Google, Inc.

    (Public Company; 10,001 or more employees; GOOG; Internet industry)

    March 2007Present (2 years 9 months)

    Doing cool stuff at Google.

  • Owner

    Exit Consulting

    (Privately Held; Internet industry)

    July 2000December 2008 (8 years 6 months)

    I worked with and sold GPS-based computer timing devices. The company is defunct as of January 2009.

  • Software Engineer

    Micro Memory LLC

    (Privately Held; 51-200 employees; Computer Hardware industry)

    December 2006March 2007 (4 months)

    Design and develop software to support new compute and I/O backend device.

  • Contractor

    Sparta, Inc.

    (Privately Held; 1001-5000 employees; Information Technology and Services industry)

    March 2006November 2006 (9 months)

    Contract-to-hire at Sparta, doing kernel work on DARPA Control Plane and other projects.

  • Member of Technical Staff

    QLogic, Inc.

    (Public Company; Computer Software industry)

    November 2005March 2006 (5 months)

    (Via acquisition.) Continued maintenance and enhancement of storage virtualization platform software.

  • Senior Member of Technical Staff

    Troika Networks, Inc.

    (Computer Software industry)

    February 2005November 2005 (10 months)

    Maintenance and enhancement of storage virtualization platform software. Added synchronous mirroring support functions, other minor API extensions and improvements.

  • Computing Specialist

    HRL Laboratories, LLC

    (Computer Software industry)

    November 2003February 2005 (1 year 4 months)

    Hired 11/2 to write a system of three Linux device drivers to support and control a system communicating over Myrinet and 100BaseTX networks for demonstration 12/2, succeeded despite extremely aggressive schedule. Wrote Linux 2.4/RTLinux realtime system to support network simulator. Implemented multilayer IPsec in Linux 2.6 from draft specification, successfully demonstrated to customer despite effort having been vastly underestimated. Later completely redesigned and reimplemented multilayer IPsec. Senior of two software engineers and one of only two kernel programmers.

  • Member of Technical Staff

    Wind River Systems, Inc.

    (Public Company; Computer Software industry)

    April 2001January 2003 (1 year 10 months)

    Through Wind River's acquisition of the BSDi name and operating system. Continued work on BSD/OS started at BSDi, helped bring BSD/OS 5.0 to release.

  • Member of Technical Staff

    BSDi

    (Computer Software industry)

    August 2000April 2001 (9 months)

    Primary and eventually sole member of a team to complete fine-grained locking/threading in BSD/OS kernel. Designed, implemented locking techniques for various parts of the kernel using existing primitives.

  • Software Designer 3

    Compaq

    (Public Company; Computer Hardware industry)

    19982000 (2 years )

    (Via acquisition.) Continued cluster work from previous position.

  • Software Designer 3

    Tandem Computers

    (Public Company; Computer Software industry)

    19961998 (2 years )

    Helped port Locus SSI clustering technology to Unixware 2 and 7. Supported Cluster Membership Service (CLMS); implemented coherent state transition support to allow a reliable Membership API; added failure recovery and support of failure recovery of other key cluster services to CLMS; restructured CLMS for reliability and ease of maintenance; improved reliability and correctness. Began port of NSC to Linux. Work now publically available as part of the Cluster Initiative for Linux project and OpenSSI.

  • Principal Member of Technical Staff

    Platinum Technologies

    (Public Company; Computer Software industry)

    August 1995August 1996 (1 year 1 month)

    (Via acquisition.) Continued cluster work from previous position.

  • Principal Member of Technical Staff

    Locus Computing Corporation

    (Computer Software industry)

    July 1994April 1995 (10 months)

    Designed and implemented CLMS support of failure recovery of other key cluster services; eliminated single points of failure for key services and for CLMS. Fixed bugs in CLMS and other subsystems. Helped port Locus TNC technology to Unix SVR4.2ES/MP. Distributed PROCFS, the asynchronous I/O mechanism, the priority control mechanism (priocntl()), part of the signalling mechanism (sigsendset()), part of the generic “/dev/tty” device driver, FDFS and PROFS, using RPC mechanisms in an SMP environment and including recovery in the event of node failure. Worked on the distributed process mechanism, ported the “file block token” mechanism used to keep the offset and flags of the “file” structure coherent between processes running on separate nodes. Wrote initial design of the system startup mechanism. Added SMP support to existing single-processor code.

  • Member of Technical Staff

    ACSC, Inc.

    (Computer Software industry)

    March 1993July 1994 (1 year 5 months)

    Helped designed and write an AIX NFS-based caching file system involving complex interactions between various user- and kernel-level processes. Wrote fsck and logging functions, co-wrote a device driver and a file system import utility. Provided technical expertise and guidance to junior members of team. Instrumental in implementing software engineering methodology. Helped design a hierarchical storage system, subsequently abandoned.

  • Engineer, Software

    Bull HN

    (Public Company; 11-50 employees; Computer Software industry)

    May 1987December 1991 (4 years 8 months)

    Enhanced and maintained the file management subsystem of the CP-6 mainframe operating system.

  • Engineer, Software

    Honeywell, LADC

    (Computer Software industry)

    19871991 (4 years )


Additional Information

Frank Mayhar’s Websites:

Frank Mayhar’s Interests:

Science fiction, kernel stuff, FreeBSD, high-resolution timing, NTP, music

Frank Mayhar’s Groups:

IEEE, IEEE Computer Society, Usenix

  •    Wind-X
  •    LADC Alumni

Frank Mayhar’s Contact Settings

Interested In:

  • job inquiries
  • expertise requests
  • business deals
  • reference requests
  • getting back in touch

Public profile powered by: LinkedIn

Create a public profile: Sign In or Join Now

View Frank Mayhar’s full profile:

  • See who you and Frank Mayhar know in common
  • Get introduced to Frank Mayhar
  • Contact Frank Mayhar directly

View Full Profile