Patents by Inventor Nikolai G. Nikolov

Nikolai G. Nikolov 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: 7895580
    Abstract: A system and method are described for tracing program flow within an application. In one embodiment of the invention, options for modifying application bytecode at a variety of different levels of precision are provided. For example, bytecode may be modified at the application level, the package level, the class level and/or the method level. Each level of precision effectively identifies a different set of methods of the application which are to be traced. Once the level of prevision is identified and the application is executed, information related to the modified bytecode is collected via a tracing service.
    Type: Grant
    Filed: December 30, 2003
    Date of Patent: February 22, 2011
    Assignee: SAP AG
    Inventor: Nikolai G. Nikolov
  • Publication number: 20100318978
    Abstract: A method is described that comprises receiving from a classfile registration information. The registration information comprises a class name and a different method name for each of the class's methods. Each of the methods are modified with at least one additional byte code instruction to cause, for its respective method, a plug-in module's handler method to provide output function treatment for the respective method. Also, a plug-in pattern is referred to in order to determine which of a plurality of plug-in modules are appropriate for each of the class's methods. The plug-in pattern lists for each of the plug-in modules those of the methods that are to be handled with its corresponding output function treatment.
    Type: Application
    Filed: June 18, 2010
    Publication date: December 16, 2010
    Inventors: Nikolai G. Nikolov, Mario Kabadiyski
  • Patent number: 7836438
    Abstract: A byte code modification method for a classfile is described. The classfile describes properties of a class within an object oriented environment. The byte code modification method entails modifying a classfile after the classfile has been compiled from source code. The modification of the classfile entails modifying a method information structure by adding byte code instructions to the byte code instructions of the method information structure's respective method. The added, byte code instructions cause a plug-in module's handler method to execute an output function for the method when it is executed during runtime. The modification of the classfile also entails adding a method information structure that includes byte code instructions for registering the identities of the class and the method with a dispatch unit.
    Type: Grant
    Filed: December 30, 2003
    Date of Patent: November 16, 2010
    Assignee: SAP AG
    Inventor: Nikolai G. Nikolov
  • Patent number: 7743367
    Abstract: A method is described that comprises receiving from a classfile registration information. The registration information comprises a class name and a different method name for each of the class's methods. Each of the methods are modified with at least one additional byte code instruction to cause, for its respective method, a plug-in module's handler method to provide output function treatment for the respective method. Also, a plug-in pattern is referred to in order to determine which of a plurality of plug-in modules are appropriate for each of the class's methods. The plug-in pattern lists for each of the plug-in modules those of the methods that are to be handled with its corresponding output function treatment.
    Type: Grant
    Filed: December 30, 2003
    Date of Patent: June 22, 2010
    Assignee: SAP AG
    Inventors: Nikolai G. Nikolov, Mario Kabadiyski
  • Patent number: 7707557
    Abstract: A method is described that comprises, in an object oriented environment, invoking a second method from a first method. The invoking comprises providing an identification of the first method and a class that the first method is a part of. The method further comprises identifying a plug-in module for the first method based upon the identification. The plug-in module contains a handler method. The method further comprises executing the handler method to perform an output function for the first method and then executing the first method from a point beyond where the second method was invoked.
    Type: Grant
    Filed: December 30, 2003
    Date of Patent: April 27, 2010
    Assignee: SAP AG
    Inventor: Nikolai G. Nikolov
  • Patent number: 7644395
    Abstract: A system and method for employing bytecode modification techniques for tracing services within an application server. Application servers, such as those based on the Java 2 Enterprise Edition (“J2EE”) standard, include a variety of different services. In one embodiment of the invention, a group of services executed on an application server are identified for tracing. For each service in the group, a group of entry and/or exit methods to be traced are identified. The group of entry/exit methods may represent entry and/or exit points to and from the service, respectively. Once the service's method are identified, the service's bytecode is modified based on the particular group of entry/exit methods specified. The service is then executed and method invocations of the bytecode modified entry/exit methods are registered.
    Type: Grant
    Filed: December 30, 2003
    Date of Patent: January 5, 2010
    Assignee: SAP AG
    Inventors: Gregor K. Frey, Nikolai G. Nikolov
  • Patent number: 7506315
    Abstract: A system and method for coupling a distributed statistical records (“DSR”) collection system with a tracing system utilizing bytecode modification techniques. In one embodiment, a distributed statistical records (“DSR”) module initially identifies one or more application components within the application server to be traced. A bytecode modification module responsively modifies the bytecode of the one or more application components. The modifications are directed to a particular set of methods of the application components (e.g., methods which are relevant to DSR data). A dispatch unit registers the method invocations and method-related information associated with the particular set of methods and provides the method-related information to the DSR module. Finally, a DSR interface module translates the method-related information to a format employed within a DSR system and forwards the translated information to the DSR system.
    Type: Grant
    Filed: December 30, 2003
    Date of Patent: March 17, 2009
    Assignee: SAP AG
    Inventors: Mario Kabadiyski, Nikolai G. Nikolov
  • Patent number: 7426723
    Abstract: A classfile modification method is described. The classfile modification method entails converting a classfile into a collection of objects whose organization is derived from the classfile's organization. The collection of objects comprise unique objects for each method information structure found in the classfile. Each of the unique objects reference other objects in the organization. The other objects represent their corresponding unique object's method information structure's byte code instructions. The classfile modification method also entails adding at least one additional other object to an arrangement of other objects that are referenced to a unique object. The at least one additional other object corresponds to at least one byte code instruction that causes a plug-in module's handler method to provide output function treatment for the unique object's method. The classfile modification method also entails converting the resulting collection of objects into a modified version of the classfile.
    Type: Grant
    Filed: December 30, 2003
    Date of Patent: September 16, 2008
    Assignee: SAP AG
    Inventor: Nikolai G. Nikolov
  • Patent number: 7367025
    Abstract: A method is disclosed that comprises modifying a method's byte code instructions for purposes of testing, debugging and/or monitoring. Additional byte code instructions are inserted into the method's byte code instructions at an entry point of the method and at an exit point of the method. The first additional byte code instruction causes a first output function to be executed for the method as a consequence of the entry point being reached during runtime. The second additional byte code instruction causes a second output function to be executed for the method as a consequence of the exit point being reached during runtime. The Application of the method to Distributed Statistical Record (DSR) keeping is also disclosed.
    Type: Grant
    Filed: December 30, 2003
    Date of Patent: April 29, 2008
    Assignee: SAP AG
    Inventors: Nikolai G. Nikolov, Mario Kabadiyski