Patents by Inventor Norbert Kuck

Norbert Kuck 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: 8978010
    Abstract: Technologies are disclosed for pruning a dependency graph representing source artifacts compilable by a plurality of compilers. The dependency graph can include strongly connected components represented as a directed acyclic graph. During compilation of the source artifacts, it can be discovered that some source artifacts did not need to be compiled, and associated nodes in the dependency graph can be pruned. Pruning can result in removal of nodes for source artifacts that are yet to be compiled, and compilation for source artifacts associated with such nodes in the dependency graph can be avoided.
    Type: Grant
    Filed: December 18, 2013
    Date of Patent: March 10, 2015
    Assignee: SAP AG
    Inventors: Andreas Thumfart, Norbert Kuck
  • Patent number: 8510710
    Abstract: In one embodiment the present invention includes a virtual machine environment that performs string operations using borrowed character arrays. A method includes creating a character array area that is related to a thread. The method further includes detecting a string operation which qualifies for using a character array from the thread's character array area. The method further includes borrowing a character array of a character array slot of the character array area. The method further includes performing the string operation using the character array having been borrowed. The method further includes returning the character array to the character array slot when the string operation has been performed. In this manner, the time and memory consumed by string operations may be reduced.
    Type: Grant
    Filed: October 6, 2008
    Date of Patent: August 13, 2013
    Assignee: SAP AG
    Inventors: Arne Harren, Norbert Kuck, Jens Lieberum, Ralf Schmelter
  • Patent number: 8505014
    Abstract: Methods and apparatus, including computer program products, for using process attachable virtual machines to provide isolation between user sessions in a scalable manner, enabling a server to robustly process requests corresponding to a large number of user sessions. The methods and apparatus include initializing a process attachable virtual machine for a user session, receiving a request corresponding to the user session, and binding the process attachable virtual machine to an operating system process to process the request.
    Type: Grant
    Filed: October 23, 2007
    Date of Patent: August 6, 2013
    Assignee: SAP AG
    Inventors: Norbert Kuck, Harald Kuck, Edgar Lott, Hans-Christoph Rohland, Oliver Schmidt
  • Patent number: 8046540
    Abstract: A method and apparatus for copying data from a virtual machine to a shared closure on demand. This process improves system efficiency by avoiding the copying of data in the large number of cases where the same virtual machine is the next to request access and use of the data. Load balancing and failure recovery are supported by copying the data to the shared closure when the data is requested by another virtual machine or recovering the data from the failed virtual machine and storing it in the shared closure before a terminated virtual machine is discarded.
    Type: Grant
    Filed: April 26, 2007
    Date of Patent: October 25, 2011
    Assignee: SAP AG
    Inventors: Thomas Smits, Jan Boris Dostert, Oliver Patrick Schmidt, Norbert Kuck
  • Patent number: 7788300
    Abstract: Methods and apparatus, including computer systems and program products, for garbage collection of shared data entities. A computer program identifies a set of virtual machines (VMs), each operable to generate references to shared entities stored in shared memory. Each shared entity can include references to one or more of the other shared entities. The program waits for the VMs to independently identify the shared entities that they reference directly, and then initiates a shared garbage collection procedure to identify the shared entities that are not directly or indirectly referenced by any of the VMs and to reclaim the shared memory being used to store those shared entities. The VMs are prevented from generating new references to the shared entities solely during a portion of the shared garbage collection procedure. By minimizing the time during which access to the shared entities is restricted, performance and scalability can be increased.
    Type: Grant
    Filed: September 15, 2004
    Date of Patent: August 31, 2010
    Assignee: SAP AG
    Inventors: Norbert Kuck, Oliver Schmidt, Arno Hilgenberg, Ralf Schmelter
  • Patent number: 7707583
    Abstract: Methods and apparatus, including computer systems and program products, for sharing objects in runtime systems and for providing isolation between user sessions in a scalable manner. A user context corresponding to a user session is stored in a shared memory area. Upon receiving a request corresponding to the user session, a process is selected from a set of operating system processes, and a runtime system is selected from a set of runtime systems. The runtime system is bound to the process, and the user context is associated with the runtime system to process the request. In some implementations, sharing user contexts enables virtual machines to be used in a shared but isolated manner: Each user context can be exclusively associated with an available virtual machine from a fixed set of virtual machines, and each virtual machine can be exclusively executed in an available process from a fixed set of processes.
    Type: Grant
    Filed: May 20, 2004
    Date of Patent: April 27, 2010
    Assignee: SAP AG
    Inventors: Oliver Schmidt, Norbert Kuck, Edgar Lott, Martin Strassburger, Arno Hilgenberg, Ralf Schmelter
  • Publication number: 20100088675
    Abstract: In one embodiment the present invention includes a virtual machine environment that performs string operations using borrowed character arrays. A method includes creating a character array area that is related to a thread. The method further includes detecting a string operation which qualifies for using a character array from the thread's character array area. The method further includes borrowing a character array of a character array slot of the character array area. The method further includes performing the string operation using the character array having been borrowed. The method further includes returning the character array to the character array slot when the string operation has been performed. In this manner, the time and memory consumed by string operations may be reduced.
    Type: Application
    Filed: October 6, 2008
    Publication date: April 8, 2010
    Applicant: SAP AG
    Inventors: Arne Harren, Norbert Kuck, Jens Lieberum, Ralf Schmelter
  • Patent number: 7614045
    Abstract: Methods and apparatus, including computer systems and program products, for sharing classes and class loaders. One implementation provides a technique for performing a shared load procedure for a class, performing a post load procedure for the class, performing a shared link procedure for the class, performing a post link procedure for the class, and performing an initialization procedure for the class to reduce memory consumption and class loading time. Through performance of these procedures, a first portion of the class (which may include a class block and object) is loaded into a shared memory accessible by multiple runtime systems, and a second portion of the class (which may include a class static variable) as is stored in a local memory associated with a selected runtime system. A shared master copy of the second portion of the class is also stored in the shared memory.
    Type: Grant
    Filed: September 24, 2004
    Date of Patent: November 3, 2009
    Assignee: SAP (AG)
    Inventors: Norbert Kuck, Oliver Schmidt, Ralf Schmelter
  • Patent number: 7587721
    Abstract: Method, apparatus and system for data sharing in runtime systems are described. A set of data objects is identified, where each data object in the set of data objects comprises a reference to runtime metadata about the data object in a first runtime system. For each data object in the set of data objects, the reference to the runtime metadata in the data object is replaced with a proxy. The set of data objects is transmitted to a second runtime system. The transmitting of the set of data objects includes replacing the proxy with the reference to the runtime metadata for each of the set of data objects transmitted to the second runtime system. Further, a shared memory is associated with the first runtime system and the second runtime system such that the first and second runtime systems share us information at the shared memory.
    Type: Grant
    Filed: May 20, 2004
    Date of Patent: September 8, 2009
    Assignee: SAP AG
    Inventors: Oliver Schmidt, Norbert Kuck, Edgar Lott, Martin Strassburger, Arno Hilgenberg, Ralf Schmelter, Jan Dosert
  • Publication number: 20080270709
    Abstract: A method and apparatus for copying data from a virtual machine to a shared closure on demand. This process improves system efficiency by avoiding the copying of data in the large number of cases where the same virtual machine is the next to request access and use of the data. Load balancing and failure recovery are supported by copying the data to the shared closure when the data is requested by another virtual machine or recovering the data from the failed virtual machine and storing it in the shared closure before a terminated virtual machine is discarded.
    Type: Application
    Filed: April 26, 2007
    Publication date: October 30, 2008
    Inventors: Thomas Smits, Jan Boris Dostert, Oliver Patrick Schmidt, Norbert Kuck
  • Patent number: 7415704
    Abstract: Methods and apparatus, including computer systems and program products, for sharing data objects in runtime systems. An identification of a first data object in a first runtime system is received. The first data object references zero or more referenced data objects. A shared closure of data objects, which consists of the first data object and a transitive closure of the referenced data objects, is identified, and a determination is made as to whether the shared closure of data objects is usable in a second runtime system. In some implementations, determining whether a shared closure is usable in a second runtime system includes determining whether each data object in the shared closure is serializable without execution of custom code, or determining whether the runtime class of each object instance in the shared closure is shareable. Using shared closures to share objects between runtime systems can provide isolation between user sessions.
    Type: Grant
    Filed: May 20, 2004
    Date of Patent: August 19, 2008
    Assignee: SAP AG
    Inventors: Oliver Schmidt, Norbert Kuck, Edgar Lott, Martin Strassburger, Arno Hilgenberg, Ralf Schmelter
  • Publication number: 20080141246
    Abstract: Methods and apparatus, including computer program products, for using process attachable virtual machines to provide isolation between user sessions in a scalable manner, enabling a server to robustly process requests corresponding to a large number of user sessions. The methods and apparatus include initializing a process attachable virtual machine for a user session, receiving a request corresponding to the user session, and binding the process attachable virtual machine to an operating system process to process the request.
    Type: Application
    Filed: October 23, 2007
    Publication date: June 12, 2008
    Inventors: Norbert Kuck, Harald Kuck, Edgar Lott, Hans-Christoph Rohland, Oliver Schmidt
  • Patent number: 7325233
    Abstract: Methods and apparatus, including computer program products, for using process attachable virtual machines to provide isolation between user sessions in a scalable manner, enabling a server to robustly process requests corresponding to a large number of user sessions. The methods and apparatus include initializing a process attachable virtual machine for a user session, receiving a request corresponding to the user session, and binding the process attachable virtual machine to an operating system process to process the request.
    Type: Grant
    Filed: November 7, 2002
    Date of Patent: January 29, 2008
    Assignee: SAP AG
    Inventors: Norbert Kuck, Harald Kuck, Edgar Lott, Hans-Christoph Rohland, Oliver Schmidt
  • Patent number: 7135052
    Abstract: A cartridge filter includes a folded package including filter material and a frame holding the folded package. The frame includes a plurality of profiled strips having identical profiles, and each having two ends. The frame also includes a plurality of corner joints, each disposed at an end of a respective profiled strip. Each corner joint includes an end cap for engaging pair wise with an end cap of an adjacent one of the plurality of corner pieces.
    Type: Grant
    Filed: June 14, 2002
    Date of Patent: November 14, 2006
    Assignee: Carl Freudenberg KG
    Inventors: Michael Meierhoefer, Renate Tapper, Thomas Caesar, Heiko Knust, Thorsten Schmitt, Norbert Kuck, Rainer Kaffenberger
  • Publication number: 20060070051
    Abstract: Methods and apparatus, including computer systems and program products, for sharing classes and class loaders. One implementation provides a technique for performing a shared load procedure for a class, performing a post load procedure for the class, performing a shared link procedure for the class, performing a post link procedure for the class, and performing an initialization procedure for the class to reduce memory consumption and class loading time. Through performance of these procedures, a first portion of the class (which may include a class block and object) is loaded into a shared memory accessible by multiple runtime systems, and a second portion of the class (which may include a class static variable) as is stored in a local memory associated with a selected runtime system. A shared master copy of the second portion of the class is also stored in the shared memory.
    Type: Application
    Filed: September 24, 2004
    Publication date: March 30, 2006
    Inventors: Norbert Kuck, Oliver Schmidt, Ralf Schmelter
  • Publication number: 20060059453
    Abstract: Methods and apparatus, including computer systems and program products, for garbage collection of shared data entities. A computer program identifies a set of virtual machines (VMs), each operable to generate references to shared entities stored in shared memory. Each shared entity can include references to one or more of the other shared entities. The program waits for the VMs to independently identify the shared entities that they reference directly, and then initiates a shared garbage collection procedure to identify the shared entities that are not directly or indirectly referenced by any of the VMs and to reclaim the shared memory being used to store those shared entities. The VMs are prevented from generating new references to the shared entities solely during a portion of the shared garbage collection procedure. By minimizing the time during which access to the shared entities is restricted, performance and scalability can be increased.
    Type: Application
    Filed: September 15, 2004
    Publication date: March 16, 2006
    Inventors: Norbert Kuck, Oliver Schmidt, Arno Hilgenberg, Ralf Schmelter
  • Publication number: 20050262512
    Abstract: Methods and apparatus, including computer systems and program products, for sharing objects in runtime systems. A set of objects is identified, each object having a reference to runtime metadata about the object in a first runtime system. The reference to the runtime metadata in each object is replaced with a proxy, and the set of objects is transmitted to a second runtime system, where the proxy in each object is replaced with a reference to runtime metadata about the object in the second runtime system. In some implementations, the runtime metadata can be installed in the second runtime system if it is not already available. The set of objects can include a shared closure of objects, which can be shared between runtime systems (including virtual machines) located on distinct physical machines. Sharing objects between runtime systems on multiple machines can provide isolation between user sessions in a scalable manner.
    Type: Application
    Filed: May 20, 2004
    Publication date: November 24, 2005
    Inventors: Oliver Schmidt, Norbert Kuck, Edgar Lott, Martin Strassburger, Arno Hilgenberg, Ralf Schmelter, Jan Dosert
  • Publication number: 20050262493
    Abstract: Methods and apparatus, including computer systems and program products, for sharing data objects in runtime systems. An identification of a first data object in a first runtime system is received. The first data object references zero or more referenced data objects. A shared closure of data objects, which consists of the first data object and a transitive closure of the referenced data objects, is identified, and a determination is made as to whether the shared closure of data objects is usable in a second runtime system. In some implementations, determining whether a shared closure is usable in a second runtime system includes determining whether each data object in the shared closure is serializable without execution of custom code, or determining whether the runtime class of each object instance in the shared closure is shareable. Using shared closures to share objects between runtime systems can provide isolation between user sessions.
    Type: Application
    Filed: May 20, 2004
    Publication date: November 24, 2005
    Inventors: Oliver Schmidt, Norbert Kuck, Edgar Lott, Martin Strassburger, Arno Hilgenberg, Ralf Schmelter
  • Publication number: 20050262181
    Abstract: Methods and apparatus, including computer systems and program products, for sharing objects in runtime systems and for providing isolation between user sessions in a scalable manner. A user context corresponding to a user session is stored in a shared memory area. Upon receiving a request corresponding to the user session, a process is selected from a set of operating system processes, and a runtime system is selected from a set of runtime systems. The runtime system is bound to the process, and the user context is associated with the runtime system to process the request. In some implementations, sharing user contexts enables virtual machines to be used in a shared but isolated manner: Each user context can be exclusively associated with an available virtual machine from a fixed set of virtual machines, and each virtual machine can be exclusively executed in an available process from a fixed set of processes.
    Type: Application
    Filed: May 20, 2004
    Publication date: November 24, 2005
    Inventors: Oliver Schmidt, Norbert Kuck, Edgar Lott, Martin Strassburger, Arno Hilgenberg, Ralf Schmelter
  • Publication number: 20040172926
    Abstract: The invention relates to a cassette filter, especially a filter for fine or suspended matter from a folded package of filter material fitted in a frame. Said frame comprises profiled strips (1) of identical design and corner connectors (6, 7) that retain the end pieces (20, 21) of the profiled strips (1). The corner connectors (6, 7) are provided with end caps (12, 13) that can be superimposed pair-wise at a right angle.
    Type: Application
    Filed: February 3, 2004
    Publication date: September 9, 2004
    Inventors: Michael Meierhoeffer, Renate Tapper, Thomas Caesar, Heiko Knust, Thorsten Schmitt, Norbert Kuck, Rainer Kaffenberger