Patents by Inventor Frank Ch. Eigler

Frank Ch. Eigler has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 10810100
    Abstract: Providing dynamic instrumentation using domain-specific monitoring-language-to-kernel-bytecode compilation is disclosed. An instrumentation program file is converted by a compilation engine into multiple bytecode sections. A load and execute engine identifies which sections can be executed in kernel space and which can be executed in user space. The sections to be executed in kernel space are then loaded into a kernel space bytecode interpreter for execution, while the sections to be executed in user space are concurrently executed by a user space bytecode interpreter of the load and execute engine. In some examples, the load and execute engine may provide global variables that are accessible by both the kernel space and the user space, and that facilitate data exchange between the kernel space bytecode interpreter and the user space bytecode interpreter.
    Type: Grant
    Filed: January 10, 2017
    Date of Patent: October 20, 2020
    Assignee: Red Hat, Inc.
    Inventors: Richard T. Henderson, Frank Ch. Eigler
  • Patent number: 10445504
    Abstract: Implementations for a secure remote kernel module signing are disclosed. In one example, the method includes receiving an indicator of a public key associated with a client computing device, determining that the public key associated with the client computing device is in common with a public key associated with a first server computing device, compiling the script, signing the compiled script with a private key that is associated with the public key that is in common with the client computing device and the first server computing device without generating a new private key, and sending the signed compiled script to the client computing device.
    Type: Grant
    Filed: February 21, 2017
    Date of Patent: October 15, 2019
    Assignee: Red Hat, Inc.
    Inventors: David Smith, Frank Ch. Eigler
  • Publication number: 20180196648
    Abstract: Providing dynamic instrumentation using domain-specific monitoring-language-to-kernel-bytecode compilation is disclosed. An instrumentation program file is converted by a compilation engine into multiple bytecode sections. A load and execute engine identifies which sections can be executed in kernel space and which can be executed in user space. The sections to be executed in kernel space are then loaded into a kernel space bytecode interpreter for execution, while the sections to be executed in user space are concurrently executed by a user space bytecode interpreter of the load and execute engine. In some examples, the load and execute engine may provide global variables that are accessible by both the kernel space and the user space, and that facilitate data exchange between the kernel space bytecode interpreter and the user space bytecode interpreter.
    Type: Application
    Filed: January 10, 2017
    Publication date: July 12, 2018
    Inventors: Richard T. Henderson, Frank Ch. Eigler
  • Patent number: 9710358
    Abstract: A system and method are disclosed for runtime probing of software. In accordance with one embodiment, a target method of a software application is modified to include a call to a first helper method and a call to a second helper method that occurs after the call to the first helper method. The first helper method collects runtime information, and at least one of the first helper method or the second helper method passes data comprising the runtime information to a native method that provides the data to a software tool (e.g., a performance monitoring tool, a debugger, etc.). The modified target method is then executed within a virtual machine.
    Type: Grant
    Filed: June 2, 2014
    Date of Patent: July 18, 2017
    Assignee: Red Hat, Inc.
    Inventors: Lukas Berk, Mark Wielaard, Frank Ch. Eigler
  • Publication number: 20170161502
    Abstract: Implementations for a secure remote kernel module signing are disclosed. In one example, the method includes receiving an indicator of a public key associated with a client computing device, determining that the public key associated with the client computing device is in common with a public key associated with a first server computing device, compiling the script, signing the compiled script with a private key that is associated with the public key that is in common with the client computing device and the first server computing device without generating a new private key, and sending the signed compiled script to the client computing device.
    Type: Application
    Filed: February 21, 2017
    Publication date: June 8, 2017
    Inventors: David Smith, Frank Ch. Eigler
  • Patent number: 9672134
    Abstract: A controller process loads a module based on a user-generated script into itself. The controller process also generates a shared memory mapping using offset pointers as opposed to absolute pointers. The controller process loads the module and the shared memory mapping into target processes indicated by the user-generated script in order to probe the target processes.
    Type: Grant
    Filed: October 11, 2013
    Date of Patent: June 6, 2017
    Assignee: Red Hat, Inc.
    Inventors: Joshua Ian Stone, David Smith, Frank Ch. Eigler
  • Patent number: 9608823
    Abstract: Implementations for a secure remote kernel module signing are disclosed. In one example, the method includes receiving an indicator of a public key associated with a client computing device, determining that the public key associated with the client computing device is in common with a public key associated with a first server computing device, compiling the script, signing the compiled script with a private key that is associated with the public key that is in common with the client computing device and the first server computing device without generating a new private key, and sending the signed compiled script to the client computing device.
    Type: Grant
    Filed: August 11, 2014
    Date of Patent: March 28, 2017
    Assignee: Red Hat, Inc.
    Inventors: David Smith, Frank Ch. Eigler
  • Publication number: 20160043869
    Abstract: Implementations for a secure remote kernel module signing are disclosed. In one example, the method includes receiving an indicator of a public key associated with a client computing device, determining that the public key associated with the client computing device is in common with a public key associated with a first server computing device, compiling the script, signing the compiled script with a private key that is associated with the public key that is in common with the client computing device and the first server computing device without generating a new private key, and sending the signed compiled script to the client computing device.
    Type: Application
    Filed: August 11, 2014
    Publication date: February 11, 2016
    Inventors: David Smith, Frank Ch. Eigler
  • Publication number: 20150347272
    Abstract: A system and method are disclosed for runtime probing of software. In accordance with one embodiment, a target method of a software application is modified to include a call to a first helper method and a call to a second helper method that occurs after the call to the first helper method. The first helper method collects runtime information, and at least one of the first helper method or the second helper method passes data comprising the runtime information to a native method that provides the data to a software tool (e.g., a performance monitoring tool, a debugger, etc.).
    Type: Application
    Filed: June 2, 2014
    Publication date: December 3, 2015
    Applicant: Red Hat, Inc.
    Inventors: Lukas Berk, Mark Wielaard, Frank Ch. Eigler
  • Patent number: 9111036
    Abstract: An unwind data system stores unwind data for a target module in memory pages in main memory prior to an introspection tool making an attempt to generate a backtrace for the target module. The unwind data system detects a trigger in a user script, which includes instructions to generate a backtrace for the target module using the introspection tool. The trigger corresponds to a section of software code of the target module. The unwind data system locates the unwind data in the memory pages in the main memory for the section of software code of the target module and unwinds the section of software code to generate a backtrace using the unwind data located in the memory pages in the main memory.
    Type: Grant
    Filed: April 30, 2010
    Date of Patent: August 18, 2015
    Assignee: Red Hat, Inc.
    Inventors: Frank Ch. Eigler, Mark J. Wielaard
  • Publication number: 20150106572
    Abstract: A controller process loads a module based on a user-generated script into itself. The controller process also generates a shared memory mapping using offset pointers as opposed to absolute pointers. The controller process loads the module and the shared memory mapping into target processes indicated by the user-generated script in order to probe the target processes.
    Type: Application
    Filed: October 11, 2013
    Publication date: April 16, 2015
    Applicant: RED HAT, INC.
    Inventors: Joshua Ian Stone, David Smith, Frank Ch. Eigler
  • Patent number: 8667298
    Abstract: A module building system, hosted by a server, receives a user script to be run to monitor software on a client using an introspection tool. The server adds safety constraints to the user script and generates a client kernel module using the user script which includes the safety constraints. The server signs the client kernel module and sends the signed client kernel module to the client. The signed client kernel module allows a user to use the introspection tool to load and execute the client module on the client for monitoring the software on the client.
    Type: Grant
    Filed: March 10, 2010
    Date of Patent: March 4, 2014
    Assignee: Red Hat, Inc.
    Inventors: Frank Ch. Eigler, Dave Brolley
  • Patent number: 8527963
    Abstract: A probe management system identifies a probe module for an application, which includes a semaphore table that has entries for a plurality of probe points in the application. An entry includes a semaphore variable value for a probe point. The probe management system identifies one or more probe points that are to be activated from an introspection user script. The user script is for examining the execution of the application at one or more of the probe points in the application. The probe management system adjusts the semaphore variable values for the identified probe points in the semaphore table in the probe module to represent to the application that a probe point is to be activated and causes the application to activate the identified probe points based on the adjusted semaphore variable values in the semaphore table.
    Type: Grant
    Filed: May 27, 2010
    Date of Patent: September 3, 2013
    Assignee: Red Hat, Inc.
    Inventors: Stan S. Cox, Jr., Frank Ch. Eigler
  • Patent number: 8266624
    Abstract: Computer resource management techniques involving receiving notification of an available resource, generating a set of tasks that could be performed by the resource, and dispatching one of the tasks on the resource. Related systems and software are also discussed. Some techniques can be used for automatic software building and testing.
    Type: Grant
    Filed: November 30, 2006
    Date of Patent: September 11, 2012
    Assignee: Red Hat, Inc.
    Inventors: Frank Ch. Eigler, Brendan L. Conoboy
  • Publication number: 20110296387
    Abstract: A probe management system identifies a probe module for an application, which includes a semaphore table that has entries for a plurality of probe points in the application. An entry includes a semaphore variable value for a probe point. The probe management system identifies one or more probe points that are to be activated from an introspection user script. The user script is for examining the execution of the application at one or more of the probe points in the application. The probe management system adjusts the semaphore variable values for the identified probe points in the semaphore table in the probe module to represent to the application that a probe point is to be activated and causes the application to activate the identified probe points based on the adjusted semaphore variable values in the semaphore table.
    Type: Application
    Filed: May 27, 2010
    Publication date: December 1, 2011
    Inventors: Stan S. Cox, JR., Frank Ch. Eigler
  • Publication number: 20110271148
    Abstract: An unwind data system stores unwind data for a target module in memory pages in main memory prior to an introspection tool making an attempt to generate a backtrace for the target module. The unwind data system detects a trigger in a user script, which includes instructions to generate a backtrace for the target module using the introspection tool. The trigger corresponds to a section of software code of the target module. The unwind data system locates the unwind data in the memory pages in the main memory for the section of software code of the target module and unwinds the section of software code to generate a backtrace using the unwind data located in the memory pages in the main memory.
    Type: Application
    Filed: April 30, 2010
    Publication date: November 3, 2011
    Inventors: Frank Ch. Eigler, Mark J. Wielaard
  • Publication number: 20110225420
    Abstract: A module building system, hosted by a server, receives a user script to be run to monitor software on a client using an introspection tool. The server adds safety constraints to the user script and generates a client kernel module using the user script which includes the safety constraints. The server signs the client kernel module and sends the signed client kernel module to the client. The signed client kernel module allows a user to use the introspection tool to load and execute the client module on the client for monitoring the software on the client.
    Type: Application
    Filed: March 10, 2010
    Publication date: September 15, 2011
    Inventors: Frank Ch. Eigler, Dave Brolley
  • Publication number: 20080256544
    Abstract: Computer resource management techniques involving receiving notification of an available resource, generating a set of tasks that could be performed by the resource, and dispatching one of the tasks on the resource. Related systems and software are also discussed. Some techniques can be used for automatic software building and testing.
    Type: Application
    Filed: November 30, 2006
    Publication date: October 16, 2008
    Inventors: Frank Ch. Eigler, Brendan L. Conoboy