Patents by Inventor Maoni Z. Stephens

Maoni Z. Stephens 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: 20240078114
    Abstract: Providing memory prefetch instructions with completion notifications in processor-based devices is disclosed. In this regard, an instruction set architecture (ISA) of a processor-based device provides a memory prefetch instruction that, when executed by a processor of a processor-based device, causes the processor to perform a memory prefetch operation by asynchronously retrieving a memory block from the system memory based on the memory address, and storing the memory block in a cache memory of the processor-based device. In response to completing the memory prefetch operation, the processor then notifies an executing software process that the memory prefetch operation is complete. Based on the notification, the executing software process may ensure that any subsequent memory access requests are not attempted until the memory prefetch operation is complete.
    Type: Application
    Filed: September 7, 2022
    Publication date: March 7, 2024
    Inventors: Thomas Philip SPEIER, Maoni Z. STEPHENS
  • Patent number: 10334031
    Abstract: Efforts to avoid time-outs during execution of an application in a managed execution environment may be implemented by monitoring memory allocation.
    Type: Grant
    Filed: July 3, 2012
    Date of Patent: June 25, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Maoni Z. Stephens, Patrick H. Dussud
  • Patent number: 8701095
    Abstract: Based on a requested allocation of a managed object, a native memory required with the managed object is determined. A portion of native memory is allocated and a portion of managed memory is allocated based on requirements of the managed object. A memory management strategy is implemented based on the allocation of native memory and unmanaged memory. For example, the memory management strategy can comprise garbage collection of first managed objects that have only managed heap associated therewith is performed before garbage collection of second managed objects that have both managed heap and native memory associated therewith.
    Type: Grant
    Filed: July 25, 2005
    Date of Patent: April 15, 2014
    Assignee: Microsoft Corporation
    Inventor: Maoni Z Stephens
  • Publication number: 20120278813
    Abstract: Efforts to avoid time-outs during execution of an application in a managed execution environment may be implemented by monitoring memory allocation.
    Type: Application
    Filed: July 3, 2012
    Publication date: November 1, 2012
    Applicant: Microsoft Corporation
    Inventors: Maoni Z. Stephens, Patrick H. Dussud
  • Patent number: 8234378
    Abstract: A method and system for managing applications in a managed execution environment is disclosed. Prior to performing a garbage collection the magnitude of the garbage collection or the allocated memory is compared to a threshold value. If the threshold value is exceeded at least a portion of an application currently executing in the environment is redistributed prior to the garbage collection occurring.
    Type: Grant
    Filed: October 20, 2005
    Date of Patent: July 31, 2012
    Assignee: Microsoft Corporation
    Inventors: Maoni Z. Stephens, Patrick H. Dussud
  • Patent number: 7987215
    Abstract: Adding references to objects to a mark stack. A limited number of references to objects referenced by an object with a large number of object references are added to the stack. An object is accessed. A determination is made that references in the object should be added to a mark stack using a reference in the mark stack to the object in conjunction with a pointer. The pointer is used to track which references in the object have been placed on the mark stack. A reference to the object on the mark stack is accessed. A pointer is initialized. A reference to another object referenced by the object is pushed onto the mark stack. The pointer is incremented. It is then determined that that more references should be pushed to the mark stack. Acts of pushing references onto the mark stack and incrementing the pointer are repeated.
    Type: Grant
    Filed: April 22, 2008
    Date of Patent: July 26, 2011
    Assignee: Microsoft Corporation
    Inventors: Patrick H. Dussud, Maoni Z. Stephens
  • Patent number: 7926071
    Abstract: Interfaces are provided to notify of conditions pertaining to memory management. Thus, efforts to avoid time-outs during execution of code in a managed execution environment may be implemented.
    Type: Grant
    Filed: October 20, 2005
    Date of Patent: April 12, 2011
    Assignee: Microsoft Corporation
    Inventors: Maoni Z. Stephens, Patrick H. Dussud
  • Patent number: 7860906
    Abstract: Per-segment overflow ranges. One method includes acts for handling overflows of a mark stack. A reference to an object is accessed. The object is processed by attempting to place references to other objects referenced in the object onto a mark stack. An overflow condition of the mark stack is detected. A range in a segment is defined which includes the object that caused the overflow condition. The range is assigned on a per segment basis such that the range is defined to only include addresses in a single segment.
    Type: Grant
    Filed: May 28, 2008
    Date of Patent: December 28, 2010
    Assignee: Microsoft Corporation
    Inventors: Maoni Z. Stephens, Patrick H. Dussud
  • Publication number: 20100318584
    Abstract: Techniques are described herein for managing access to a distributed cache during garbage collection. When garbage collection is to be performed with respect to a node, the node may send a request to a data manager requesting to have an instance of data module(s) included in the node that are in a primary state placed in a secondary state. The data manager may change the state of the data module(s) to the secondary state. The data manager may change the state of another instance of the data module(s) that is included in another node to the primary state. When the garbage collection is complete with respect to the node, the node may send another request to the data manager requesting that the data module(s) that were placed in the secondary state be returned to the primary state. The data manager may return those data module(s) to the primary state.
    Type: Application
    Filed: June 13, 2009
    Publication date: December 16, 2010
    Applicant: Microsoft Corporation
    Inventors: Muralidhar Krishnaprasad, Maoni Z. Stephens, Lu Xun, Anil K. Nori
  • Patent number: 7831640
    Abstract: Mark stack overflow list. A method may be practiced in a computing environment including application code that implements garbage collection functionality. The garbage collection functionality includes pushing object references onto a mark stack, such that objects referenced on the mark stack can be marked so as to prevent memory for the objects from being recycled for use with other objects instances. The method includes acts for handling overflows of a mark stack. The method includes accessing a reference to an object. The object is processed by attempting to enumerate references to other objects from the object onto a mark stack. An overflow condition of the mark stack is detected for a referenced other object. A reference to the referenced other object is placed on an overflow list. References from the overflow list are processed.
    Type: Grant
    Filed: April 15, 2008
    Date of Patent: November 9, 2010
    Assignee: Microsoft Corporation
    Inventors: Maoni Z. Stephens, Patrick H. Dussud
  • Patent number: 7801872
    Abstract: Publishing an object. Memory for an object may be reserved so as to lock the memory from being access by garbage collection threads or other user threads. While the lock is in place, type and size information can be installed for the object. If the reservation is being made to allow garbage collection threads to operate on the object, then the type may be a specialized type that indicates that the object has no references. Reservations can also be made to allow the intended type information to be installed for the object. An indication can be made that the object is well formed, thus unlocking the object and allowing garbage collection threads, other user threads, or both to access the object. The locking and unlocking may be performed by accessing an API provided by a system garbage collector.
    Type: Grant
    Filed: April 8, 2008
    Date of Patent: September 21, 2010
    Assignee: Microsoft Corporation
    Inventors: Patrick H. Dussud, Maoni Z. Stephens
  • Patent number: 7774389
    Abstract: Various technologies and techniques are disclosed for providing optimized garbage collection. A garbage collector is provided for managing a garbage collection process. An optimized garbage collection feature is provided that allows the garbage collection process to be suggested. When the optimized garbage collection feature is invoked at a particular moment, the system determines if collection is appropriate at the particular moment. If collection is determined to be appropriate at the particular moment, then the system performs the garbage collection process. If collection is determined to not be appropriate at the particular moment, then the system delays garbage collection until an appropriate time. A low latency mode can be used to automatically ensure that the garbage collection process starts sooner than it would in a normal mode. The latency mode in use can be changed at different points in time during the garbage collection process.
    Type: Grant
    Filed: January 17, 2007
    Date of Patent: August 10, 2010
    Assignee: Microsoft Corporation
    Inventors: Maoni Z. Stephens, Patrick H. Dussud, Peter F. Sollich, Claudio Caldato
  • Publication number: 20090300085
    Abstract: Per-segment overflow ranges. One method includes acts for handling overflows of a mark stack. A reference to an object is accessed. The object is processed by attempting to place references to other objects referenced in the object onto a mark stack. An overflow condition of the mark stack is detected. A range in a segment is defined which includes the object that caused the overflow condition. The range is assigned on a per segment basis such that the range is defined to only include addresses in a single segment.
    Type: Application
    Filed: May 28, 2008
    Publication date: December 3, 2009
    Applicant: Microsoft Corporation
    Inventors: Maoni Z. Stephens, Patrick H. Dussud
  • Publication number: 20090265402
    Abstract: Adding references to objects to a mark stack. A limited number of references to objects referenced by an object with a large number of object references are added to the stack. An object is accessed. A determination is made that references in the object should be added to a mark stack using a reference in the mark stack to the object in conjunction with a pointer. The pointer is used to track which references in the object have been placed on the mark stack. A reference to the object on the mark stack is accessed. A pointer is initialized. A reference to another object referenced by the object is pushed onto the mark stack. The pointer is incremented. It is then determined that that more references should be pushed to the mark stack. Acts of pushing references onto the mark stack and incrementing the pointer are repeated.
    Type: Application
    Filed: April 22, 2008
    Publication date: October 22, 2009
    Applicant: Microsoft Corporation
    Inventors: Patrick H. Dussud, Maoni Z. Stephens
  • Publication number: 20090259702
    Abstract: Mark stack overflow list. A method may be practiced in a computing environment including application code that implements garbage collection functionality. The garbage collection functionality includes pushing object references onto a mark stack, such that objects referenced on the mark stack can be marked so as to prevent memory for the objects from being recycled for use with other objects instances. The method includes acts for handling overflows of a mark stack. The method includes accessing a reference to an object. The object is processed by attempting to enumerate references to other objects from the object onto a mark stack. An overflow condition of the mark stack is detected for a referenced other object. A reference to the referenced other object is placed on an overflow list. References from the overflow list are processed.
    Type: Application
    Filed: April 15, 2008
    Publication date: October 15, 2009
    Applicant: Microsoft Corporation
    Inventors: Maoni Z. Stephens, Patrick H. Dussud
  • Publication number: 20090254596
    Abstract: Publishing an object. Memory for an object may be reserved so as to lock the memory from being access by garbage collection threads or other user threads. While the lock is in place, type and size information can be installed for the object. If the reservation is being made to allow garbage collection threads to operate on the object, then the type may be a specialized type that indicates that the object has no references. Reservations can also be made to allow the intended type information to be installed for the object. An indication can be made that the object is well formed, thus unlocking the object and allowing garbage collection threads, other user threads, or both to access the object. The locking and unlocking may be performed by accessing an API provided by a system garbage collector.
    Type: Application
    Filed: April 8, 2008
    Publication date: October 8, 2009
    Applicant: Microsoft Corporation
    Inventors: Patrick H. Dussud, Maoni Z. Stephens
  • Patent number: 7441094
    Abstract: Memory management within a runtime execution environment may be configured in accordance with data associated with executable code loaded therein.
    Type: Grant
    Filed: July 5, 2005
    Date of Patent: October 21, 2008
    Assignee: Microsoft Corporation
    Inventor: Maoni Z. Stephens
  • Publication number: 20080172431
    Abstract: Various technologies and techniques are disclosed for providing optimized garbage collection. A garbage collector is provided for managing a garbage collection process. An optimized garbage collection feature is provided that allows the garbage collection process to be suggested. When the optimized garbage collection feature is invoked at a particular moment, the system determines if collection is appropriate at the particular moment. If collection is determined to be appropriate at the particular moment, then the system performs the garbage collection process. If collection is determined to not be appropriate at the particular moment, then the system delays garbage collection until an appropriate time. A low latency mode can be used to automatically ensure that the garbage collection process starts sooner than it would in a normal mode. The latency mode in use can be changed at different points in time during the garbage collection process.
    Type: Application
    Filed: January 17, 2007
    Publication date: July 17, 2008
    Applicant: Microsoft Corporation
    Inventors: Maoni Z. Stephens, Patrick H. Dussud, Peter F. Sollich, Claudio Caldato