Patents by Inventor John Farrugia

John Farrugia 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: 9158537
    Abstract: According to one embodiment of the present disclosure, hardware initialization code and error action information are retrieved from separate storage areas. The hardware initialization code includes code that initializes a device, and also includes placeholders corresponding to actions that are performed when the device fails initialization. Likewise, the error action information describes the actions that are performed when the device fails initialization. The error action information is converted into macros that include lines of code. As such, the error action placeholders are matched to the macros and, in turn, each of the error action placeholders is replaced with the lines of code corresponding to the matched macros.
    Type: Grant
    Filed: January 14, 2013
    Date of Patent: October 13, 2015
    Assignee: International Business Machines Corporation
    Inventors: Daniel M. Crowell, John Farrugia, Michael J. Jones, David Dean Sanner
  • Patent number: 9134966
    Abstract: A system and a method for simulation using multiple programming languages is provided. The method can include receiving an annotated source having a first plurality of instructions written in a first programming language and receiving an annotation having a second plurality of instructions written in a second programming language and associated with an annotated instruction from the first plurality of instructions. The method can include extracting the second plurality of instructions to create a routine from the annotation. The method can include building a shared library that contains the routine. The method can include building an application object file by assigning an address to each instruction of the first plurality instructions. The method can include creating an annotation table that contains an address for the annotated instruction and an associated symbol.
    Type: Grant
    Filed: December 12, 2013
    Date of Patent: September 15, 2015
    Assignee: International Business Machines Corporation
    Inventors: Bishop C. Brock, John Farrugia, Andreas Koenig, Jeshua D. Smith, Todd A. Venton
  • Publication number: 20150169294
    Abstract: A system and a method for simulation using multiple programming languages is provided. The method can include receiving an annotated source having a first plurality of instructions written in a first programming language and receiving an annotation having a second plurality of instructions written in a second programming language and associated with an annotated instruction from the first plurality of instructions. The method can include extracting the second plurality of instructions to create a routine from the annotation. The method can include building a shared library that contains the routine. The method can include building an application object file by assigning an address to each instruction of the first plurality instructions. The method can include creating an annotation table that contains an address for the annotated instruction and an associated symbol.
    Type: Application
    Filed: December 12, 2013
    Publication date: June 18, 2015
    Applicant: International Business Machines Corporation
    Inventors: Bishop C. Brock, John Farrugia, Andreas Koenig, Jeshua D. Smith, Todd A. Venton
  • Patent number: 9021426
    Abstract: According to one embodiment of the present disclosure, hardware initialization code and error action information are retrieved from separate storage areas. The hardware initialization code includes code that initializes a device, and also includes placeholders corresponding to actions that are performed when the device fails initialization. Likewise, the error action information describes the actions that are performed when the device fails initialization. The error action information is converted into macros that include lines of code. As such, the error action placeholders are matched to the macros and, in turn, each of the error action placeholders is replaced with the lines of code corresponding to the matched macros.
    Type: Grant
    Filed: December 4, 2012
    Date of Patent: April 28, 2015
    Assignee: International Business Machines Corporation
    Inventors: Daniel M. Crowell, John Farrugia, Michael J. Jones, David Dean Sanner
  • Patent number: 9003364
    Abstract: An approach is provided in which a request is received from a software module to retrieve a value stored in a pre-defined location. Prior to retrieving the value, an override tank is checked for a corresponding override value. When the override tank includes an override value, the override value in the override tank is provided to the software module. When the override tank fails to include a corresponding override value, an actual value is retrieved from a pre-defined storage location and provided to the software module. In one embodiment, the override value is an override system attribute value. In another embodiment, the override value is an override function return value.
    Type: Grant
    Filed: January 14, 2013
    Date of Patent: April 7, 2015
    Assignee: International Business Machines Corporation
    Inventors: John Farrugia, Michael J. Jones, David Dean Sanner
  • Patent number: 8997044
    Abstract: An approach is provided in which a request is received from a software module to retrieve a value stored in a pre-defined location. Prior to retrieving the value, an override tank is checked for a corresponding override value. When the override tank includes an override value, the override value in the override tank is provided to the software module. When the override tank fails to include a corresponding override value, an actual value is retrieved from a pre-defined storage location and provided to the software module. In one embodiment, the override value is an override system attribute value. In another embodiment, the override value is an override function return value.
    Type: Grant
    Filed: November 30, 2012
    Date of Patent: March 31, 2015
    Assignee: International Business Machines Corporation
    Inventors: John Farrugia, Michael J. Jones, David Dean Sanner
  • Publication number: 20140157230
    Abstract: According to one embodiment of the present disclosure, hardware initialization code and error action information are retrieved from separate storage areas. The hardware initialization code includes code that initializes a device, and also includes placeholders corresponding to actions that are performed when the device fails initialization. Likewise, the error action information describes the actions that are performed when the device fails initialization. The error action information is converted into macros that include lines of code. As such, the error action placeholders are matched to the macros and, in turn, each of the error action placeholders is replaced with the lines of code corresponding to the matched macros.
    Type: Application
    Filed: January 14, 2013
    Publication date: June 5, 2014
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Daniel M. Crowell, John Farrugia, Michael J. Jones, David Dean Sanner
  • Publication number: 20140157229
    Abstract: According to one embodiment of the present disclosure, hardware initialization code and error action information are retrieved from separate storage areas. The hardware initialization code includes code that initializes a device, and also includes placeholders corresponding to actions that are performed when the device fails initialization. Likewise, the error action information describes the actions that are performed when the device fails initialization. The error action information is converted into macros that include lines of code. As such, the error action placeholders are matched to the macros and, in turn, each of the error action placeholders is replaced with the lines of code corresponding to the matched macros.
    Type: Application
    Filed: December 4, 2012
    Publication date: June 5, 2014
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Daniel M. Crowell, John Farrugia, Michael J. Jones, David Dean Sanner
  • Publication number: 20140157237
    Abstract: An approach is provided in which a request is received from a software module to retrieve a value stored in a pre-defined location. Prior to retrieving the value, an override tank is checked for a corresponding override value. When the override tank includes an override value, the override value in the override tank is provided to the software module. When the override tank fails to include a corresponding override value, an actual value is retrieved from a pre-defined storage location and provided to the software module. In one embodiment, the override value is an override system attribute value. In another embodiment, the override value is an override function return value.
    Type: Application
    Filed: January 14, 2013
    Publication date: June 5, 2014
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: John Farrugia, Michael J. Jones, David Dean Sanner
  • Publication number: 20140157234
    Abstract: An approach is provided in which a request is received from a software module to retrieve a value stored in a pre-defined location. Prior to retrieving the value, an override tank is checked for a corresponding override value. When the override tank includes an override value, the override value in the override tank is provided to the software module. When the override tank fails to include a corresponding override value, an actual value is retrieved from a pre-defined storage location and provided to the software module. In one embodiment, the override value is an override system attribute value. In another embodiment, the override value is an override function return value.
    Type: Application
    Filed: November 30, 2012
    Publication date: June 5, 2014
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: John Farrugia, Michael J. Jones, David Dean Sanner
  • Patent number: 8429619
    Abstract: An executable high-level trace file generation system provides reduced debugging effort and time, particularly on initial startup of new or modified hardware. An executable program invokes high-level application programming interfaces (APIs), to perform various tasks. Instructions within the APIs generate a trace file documenting the invoked sequence of APIs by writing a line to a trace file that documents the API and input parameters received by the API. Upon completion of execution of the API, the return value may be documented as a comment line in the trace file. The resulting trace file is then re-executable as a script and may be edited to alter the sequence of APIs invoked and/or the arguments provided. The script interpreter may be a command line interface through which the APIs are invoked, and trace files may be similarly generated that document sequences of manually entered commands.
    Type: Grant
    Filed: July 3, 2007
    Date of Patent: April 23, 2013
    Assignee: International Business Machines Corporation
    Inventors: Jason T. Albert, Christopher J. Engel, John Farrugia, Paul G. Van Leeuwen, Brent M. Wieman
  • Patent number: 8327340
    Abstract: An executable high-level trace file generation method provides reduced debugging effort and time, particularly on initial startup of new or modified hardware. An executable program invokes high-level application programming interfaces (APIs), to perform various tasks. Instructions within the APIs generate a trace file documenting the invoked sequence of APIs by writing a line to a trace file that documents the API and input parameters received by the API. Upon completion of execution of the API, the return value may be documented as a comment line in the trace file. The resulting trace file is then re-executable as a script and may be edited to alter the sequence of APIs invoked and/or the arguments provided. The script interpreter may be a command line interface through which the APIs are invoked, and trace files may be similarly generated that document sequences of manually entered commands.
    Type: Grant
    Filed: March 29, 2012
    Date of Patent: December 4, 2012
    Assignee: International Business Machines Corporation
    Inventors: Jason T. Albert, Christopher J. Engel, John Farrugia, Paul G. Van Leeuwen, Brent M. Wieman
  • Publication number: 20120185831
    Abstract: An executable high-level trace file generation method provides reduced debugging effort and time, particularly on initial startup of new or modified hardware. An executable program invokes high-level application programming interfaces (APIs), to perform various tasks. Instructions within the APIs generate a trace file documenting the invoked sequence of APIs by writing a line to a trace file that documents the API and input parameters received by the API. Upon completion of execution of the API, the return value may be documented as a comment line in the trace file. The resulting trace file is then re-executable as a script and may be edited to alter the sequence of APIs invoked and/or the arguments provided. The script interpreter may be a command line interface through which the APIs are invoked, and trace files may be similarly generated that document sequences of manually entered commands.
    Type: Application
    Filed: March 29, 2012
    Publication date: July 19, 2012
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Jason T. Albert, Christopher J. Engel, John Farrugia, Paul G. Van Leeuwen, Brent M. Wieman
  • Patent number: 7881826
    Abstract: A modular computing housing includes a housing structure having a plurality of component slots that each can receive one of a plurality of components, where at least one of the components includes a processor having an operating frequency. A cooling system provides airflow through each of the component slots. A thermal control system can be communicably connected to each of the component slots and each of the received component processors. The thermal control system receives configuration data from each of the component slots, retrieves throttle data corresponding to the configuration data, and directs at least one received component processors to reduce its operating frequency in accordance with the throttle data.
    Type: Grant
    Filed: April 17, 2008
    Date of Patent: February 1, 2011
    Assignee: International Business Machines Corporation
    Inventors: Sertac Cakici, John Farrugia, Ryan M. McBeth, Meghna Paruthi, Madeline Vega
  • Publication number: 20090265044
    Abstract: A modular computing housing includes a housing structure having a plurality of component slots that each can receive one of a plurality of components, where at least one of the components includes a processor having an operating frequency. A cooling system provides airflow through each of said component slots. A thermal control system can be communicably connected to each of the component slots and each of the received component processors. When the thermal control system receives configuration data from each of the component slots, retrieves throttle data corresponding to the configuration data and directs at least one received component processors to reduce its operating frequency in accordance with the throttle data.
    Type: Application
    Filed: April 17, 2008
    Publication date: October 22, 2009
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Sertac Cakici, John Farrugia, Ryan B. McBeth, Meghna Paruthi, Madeline Vega
  • Publication number: 20090013312
    Abstract: An executable high-level trace file generation system and method provide reduced debugging effort and time, particularly on initial startup of new or modified hardware. An executable program invokes high-level application programming interfaces (APIs), to perform various tasks. Instructions within the APIs generate a trace file documenting the invoked sequence of APIs by writing a line to a trace file that documents the API and input parameters received by the API. Upon completion of execution of the API, the return value may be documented as a comment line in the trace file. The resulting trace file is then re-executable as a script and may be edited to alter the sequence of APIs invoked and/or the arguments provided. The script interpreter may be a command line interface through which the APIs are invoked, and trace files may be similarly generated that document sequences of manually entered commands.
    Type: Application
    Filed: July 3, 2007
    Publication date: January 8, 2009
    Inventors: Jason T. Albert, Christopher J. Engel, John Farrugia, Paul G. Van Leeuwen, Brent M. Wieman