Patents by Inventor Ulrich Drepper

Ulrich Drepper 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).

  • Publication number: 20080189282
    Abstract: An embodiment relates to a method of managing primitives. The method includes providing a data structure available in user-space where the data structure comprises at least one futex. The method also includes detecting a termination of the process and searching the data structure for status of the at least one futex. The method further includes releasing the at least one futex in response to status of the at least one futex being held and setting a flag for at least one futex. The method further includes notifying at least one process waiting for the released at least one futex.
    Type: Application
    Filed: February 1, 2007
    Publication date: August 7, 2008
    Inventors: Ingo Molnar, Thomas Glelxner, Ulrich Drepper
  • Publication number: 20080127154
    Abstract: An embodiment relates generally to a method of optimization in a run-time execution environment. The method includes providing for a plurality of symbol tables, each symbol table associated with a respective object, the plurality of objects being linked to create a runtime version of a program. The method also includes searching through a selected symbol table of the plurality of symbol tables and determining a symbol type of an entry in the selected symbol table. The method further includes executing a callback function in response to the symbol type being an special symbol table entry and returning the address of an optimized function for the entry in the selected symbol table.
    Type: Application
    Filed: November 28, 2006
    Publication date: May 29, 2008
    Inventor: Ulrich Drepper
  • Publication number: 20070277024
    Abstract: An embodiment generally pertains to a method of secure address handling in a processor. The method includes detecting an instruction that implicitly designates a target address and retrieving an encoded location associated with the target address. The method also includes decoding the encoded location to determine the target address. Another embodiment generally relates to detecting an instruction having an operand designating an encoded target address and determining a location of a target instruction associated with the target address. The method also includes determining a location of a subsequent instruction and encoding the location of the subsequent instruction. The method further includes storing the encoded location of the subsequent instruction.
    Type: Application
    Filed: May 25, 2006
    Publication date: November 29, 2007
    Inventor: Ulrich Drepper
  • Publication number: 20070204274
    Abstract: An embodiment of the invention pertains to a method of filtering messages in a kernel of an operating system. The method includes receiving message traffic from network and determining information that indicates contents of each message in the kernel. The method also includes selectively passing the message from the kernel to one or more applications based on the information and according to at least one criterion, where the least one criterion is associated with a respective application of the one or more applications.
    Type: Application
    Filed: February 27, 2006
    Publication date: August 30, 2007
    Inventor: Ulrich Drepper
  • Publication number: 20070204268
    Abstract: Embodiments of the present invention provide efficient scheduling in a multi-core processor environment. In some embodiments, each core is assigned, at most, one execution context. Each execution context may then asynchronously run on its assigned core. If execution context is blocked, then its dedicated core may be suspended or powered down until the execution context resumes operation. The processor core may remain dedicated to a particular thread, and thus, avoid the costly operations of a process or context switch, such as clearing register contents. In other embodiments, execution contexts are partitioned into two groups. The execution contexts may be partitioned based on various factors, such as their relative priority. One group of the execution contexts may be assigned their own dedicated core and allowed to run asynchronously. The other group of execution contexts, such as those with a lower priority, are co-scheduled among the remaining cores by the scheduler of the operating system.
    Type: Application
    Filed: February 27, 2006
    Publication date: August 30, 2007
    Inventor: Ulrich Drepper
  • Publication number: 20070169024
    Abstract: Embodiments of the present invention provide an architecture for securely and efficiently executing byte code generated from a general programming language. In particular, a computer system is divided into a hierarchy comprising multiple types of virtual machines. A thin layer of software, known as a virtual machine monitor, virtualizes the hardware of the computer system and emulates the hardware of the computer system to form a first type of virtual machine. This first type of virtual machine implements a virtual operating domain that allows running its own operating system. Within a virtual operating domain, a byte code interpreter may further implement a second type of virtual machine that executes byte code generated from a program written in a general purpose programming language. The byte code interpreter is incorporated into the operating system running in the virtual operating domain.
    Type: Application
    Filed: November 30, 2005
    Publication date: July 19, 2007
    Inventor: Ulrich Drepper
  • Publication number: 20070169070
    Abstract: Embodiments of the present invention provide an architecture for efficiently loading and executing byte code generated from a general programming language. In particular, a byte code interpreter implements a virtual machine that executes the byte code and is divided into a kernel component and one or more user components. The kernel component of the virtual machine is integrated into the operating system kernel. The user component runs in the same virtual address space as the applet, provides support for executing an applet and couples the applet to the operating system. In addition, the kernel component of the virtual machine may share code with multiple user components.
    Type: Application
    Filed: November 30, 2005
    Publication date: July 19, 2007
    Inventor: Ulrich Drepper
  • Publication number: 20070169005
    Abstract: Embodiments of the present invention provide an architecture for securely and efficiently executing byte code generated from a general programming language. In particular, a computer system is divided into a hierarchy comprising multiple types of virtual machines. A thin layer of software, known as a virtual machine monitor, virtualizes the hardware of the computer system and emulates the hardware of the computer system to form a first type of virtual machine. This first type of virtual machine implements a virtual operating domain that allows running its own operating system. Within a virtual operating domain, a byte code interpreter may further implement a second type of virtual machine that executes byte code generated from a program written in a general purpose programming language. The byte code interpreter is incorporated into the operating system running in the virtual operating domain.
    Type: Application
    Filed: November 30, 2005
    Publication date: July 19, 2007
    Inventor: Ulrich Drepper
  • Publication number: 20070169027
    Abstract: Embodiments of the present invention provide systems and methods for the static analysis of entire systems of software. Source code for at least some of the software system is received. An functional representation of the source code is generated from when the source code is compiled and references to other software are identified. The functional representations of the other software is retrieved from an archive and an abstract representation of the entire software system is built. A static analysis is then performed against the abstract representation of the entire system and results are provided. The software system or one or more of its components may be certified based on the static analysis results.
    Type: Application
    Filed: November 30, 2005
    Publication date: July 19, 2007
    Inventor: Ulrich Drepper
  • Publication number: 20060075059
    Abstract: A computing device includes a local directory service cache. The local directory service cache is a live database. The directory service cache is stored in a shared memory space. In certain embodiments of the invention, client processes needing directory services can directly access the local directory service cache via memory mapping. A caching program updates and maintains the database and obtains the needed data if a cache miss is encountered. Some socket communications between the client processes and the caching program may be used to update database entries, notify the caching program of cache misses, etc.
    Type: Application
    Filed: August 31, 2004
    Publication date: April 6, 2006
    Applicant: Red Hat, Inc.
    Inventor: Ulrich Drepper