Patents by Inventor Philip Lucido

Philip Lucido 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: 8650570
    Abstract: A runtime environment of a computer system is provided that creates first and second scheduler instances in a process. Each scheduler instance includes allocated processing resources and is assigned a set of tasks for execution. Each scheduler instance schedules tasks for execution using the allocated processing resources to perform the work of the process.
    Type: Grant
    Filed: June 2, 2008
    Date of Patent: February 11, 2014
    Assignee: Microsoft Corporation
    Inventors: Paul Ringseth, Genevieve Fernandes, Niklas Gustafsson, Rick Molloy, Rahul Patil, Philip Lucido
  • Patent number: 8468528
    Abstract: A logger in a process of a computer system creates a log queue for each execution context and/or processing resource in the process. A log is created in the log queue for each log request and log information associated with the log request is stored into the log. All logs in each log queue except for the most recently added log in each log queue are flushed prior to the process completing.
    Type: Grant
    Filed: June 2, 2008
    Date of Patent: June 18, 2013
    Assignee: Microsoft Corporation
    Inventors: Rahul Patil, Paul Ringseth, Philip Lucido
  • Patent number: 8291426
    Abstract: A memory allocator is provided for each processor resource in a process of a computer system. Each memory allocator includes a set of pages, a locally freed list of objects, and a remotely freed list of objects. Each memory allocator requests the pages from an operating system and allocates objects to all execution contexts executing on a corresponding processing resource. Each memory allocator attempts to allocate an object from the locally freed list before allocating an object from the remotely freed list or an allocated page.
    Type: Grant
    Filed: June 2, 2008
    Date of Patent: October 16, 2012
    Assignee: Microsoft Corporation
    Inventors: Niklas Gustafsson, Paul Ringseth, Philip Lucido
  • Publication number: 20090300638
    Abstract: A memory allocator is provided for each processor resource in a process of a computer system. Each memory allocator includes a set of pages, a locally freed list of objects, and a remotely freed list of objects. Each memory allocator requests the pages from an operating system and allocates objects to all execution contexts executing on a corresponding processing resource. Each memory allocator attempts to allocate an object from the locally freed list before allocating an object from the remotely freed list or an allocated page.
    Type: Application
    Filed: June 2, 2008
    Publication date: December 3, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: Niklas Gustafsson, Paul Ringseth, Philip Lucido
  • Publication number: 20090300628
    Abstract: A logger in a process of a computer system creates a log queue for each execution context and/or processing resource in the process. A log is created in the log queue for each log request and log information associated with the log request is stored into the log. All logs in each log queue except for the most recently added log in each log queue are flushed prior to the process completing.
    Type: Application
    Filed: June 2, 2008
    Publication date: December 3, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: Rahul Patil, Paul Ringseth, Philip Lucido
  • Publication number: 20050144471
    Abstract: Security mechanisms detect and intervene in a malicious attack against a runtime function, even in the presence of a coding flaw such as a buffer overrun or overflow. One such exemplary mechanism uses a predetermined security list of the valid targets for a first runtime function (such as longjmp). For every call to a second runtime function (e.g., setjmp) that prepares for a later invocation of the first runtime function, the dispatcher finds and stores a reference to this list. When a subsequent attack targets the runtime functions by creating an attacker-provided setjmp target address (e.g., the attack overwrites the longjmp target address so that the pointer points somewhere else, such as code provided by the attacker or code that already exists that will eventually pass control to code provided by the attacker), the new (attacker provided) target address is compared to a reference list of the real (valid) target addresses. The list of real target addresses is stored in memory.
    Type: Application
    Filed: December 31, 2003
    Publication date: June 30, 2005
    Inventors: Richard Shupak, Philip Lucido
  • Patent number: 6502233
    Abstract: Automatic parameter help is disclosed. In one embodiment, the system comprises an editor to provide for developing source code for a computer program, where the source code includes an identifier; and an automatic help module invoked upon a predetermined event by the editor. The automatic help module is operative to display reference information associated with the identifier.
    Type: Grant
    Filed: November 13, 1998
    Date of Patent: December 31, 2002
    Assignee: Microsoft Corporation
    Inventors: Shankar Vaidyanathan, Philip Lucido, Sundeep Bhatia
  • Patent number: 6467081
    Abstract: Automatic parameter help is disclosed. In one embodiment, the system comprises an editor to provide for developing source code for a computer program, where the source code includes an identifier; and an automatic help module invoked upon a predetermined event by the editor. The automatic help module is operative to display reference information associated with the identifier.
    Type: Grant
    Filed: November 5, 2001
    Date of Patent: October 15, 2002
    Assignee: Microsoft Corporation
    Inventors: Shankar Vaidyanathan, Philip Lucido, Sundeep Bhatia
  • Publication number: 20020095657
    Abstract: Automatic parameter help is disclosed. In one embodiment, the system comprises an editor to provide for developing source code for a computer program, where the source code includes an identifier; and an automatic help module invoked upon a predetermined event by the editor. The automatic help module is operative to display reference information associated with the identifier.
    Type: Application
    Filed: November 5, 2001
    Publication date: July 18, 2002
    Applicant: Microsoft Corporation
    Inventors: Shankar Vaidyanathan, Philip Lucido, Sundeep Bhatia
  • Patent number: 6367068
    Abstract: Dynamic parsing is disclosed. In one embodiment, a system includes an editor and a dynamic parser. The editor provides for developing of source code for a computer program. The dynamic parser parses the source code as the source is developed within the editor during predetermined times (for example, in one embodiment, every second).
    Type: Grant
    Filed: November 13, 1998
    Date of Patent: April 2, 2002
    Assignee: Microsoft Corporation
    Inventors: Shankar Vaidyanathan, Philip Lucido, Sundeep Bhatia
  • Patent number: 6305008
    Abstract: Automatic statement completion is disclosed. In one embodiment, a system includes an editor to provide for developing source code for a computer program, and a database containing information on entities in the source code. The system also includes a completion module invoked by the editor upon the occurrence of a predetermined event and operative to display a set of valid entities in response to a pre-determined event.
    Type: Grant
    Filed: November 13, 1998
    Date of Patent: October 16, 2001
    Assignee: Microsoft Corporation
    Inventors: Shankar Vaidyanathan, Philip Lucido, Sundeep Bhatia
  • Patent number: 6266665
    Abstract: Indexing and searching across multiple sorted arrays. In one embodiment, a method. First, for a plurality of arrays, each array having a plurality of elements indexable by a pointer for the array, finding a smallest element of a set of elements comprising the element of each array at the pointer for the array. Second, increasing the pointer for the array in which the smallest element was found. Third, repeating until a desired number of smallest elements is found.
    Type: Grant
    Filed: November 13, 1998
    Date of Patent: July 24, 2001
    Assignee: Microsoft Corporation
    Inventors: Shankar Vaidyanathan, Philip Lucido, Sundeep Bhatia