Patents by Inventor Michael R. Marcelais

Michael R. Marcelais 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: 7814288
    Abstract: Applications are protected from being exposed to exploits and instabilities due to memory operations involving zero byte allocations. Memory operations involving a zero byte allocation are handled by a zero byte memory manager. When an application requests a zero byte allocation, a pointer to a protected part of memory is returned such that when the application attempts to read and/or write to the location the program flow is interrupted.
    Type: Grant
    Filed: March 29, 2007
    Date of Patent: October 12, 2010
    Assignee: Microsoft Corporation
    Inventors: Thomas S. Coon, Michael R. Marcelais, Christopher C. White
  • Publication number: 20080244335
    Abstract: Applications are protected from being exposed to exploits and instabilities due to memory operations involving zero byte allocations. Memory operations involving a zero byte allocation are handled by a zero byte memory manager. When an application requests a zero byte allocation, a pointer to a protected part of memory is returned such that when the application attempts to read and/or write to the location the program flow is interrupted.
    Type: Application
    Filed: March 29, 2007
    Publication date: October 2, 2008
    Applicant: Microsoft Corporation
    Inventors: Thomas S. Coon, Michael R. Marcelais, Christopher C. White
  • Patent number: 7302531
    Abstract: A system and methods for sharing configuration information with multiple services, or processes, via shared memory. The configuration information, typically, comprises runtime information utilized by processes during operation, including without limitation, information describing data communication connections between the local computer and other computing resources (i.e., port and wire information), and information defining numeric values or character string values (i.e., genre and record information). The system architecture includes a plurality of APIs which: reside at the local computer; populate, manage, and control access to a shared memory containing the configuration information; and, are executable only by processes executing at the local computer, thereby limiting access to the shared memory. Access to the configuration information is further limited to only those processes identified as having appropriate permission.
    Type: Grant
    Filed: November 15, 2006
    Date of Patent: November 27, 2007
    Assignee: Microsoft Corporation
    Inventors: Rob Martin Mensching, Michael R. Marcelais, Marcin Szuster
  • Patent number: 7139894
    Abstract: A system and methods for sharing configuration information with multiple services, or processes, via shared memory. The configuration information, typically, comprises runtime information utilized by processes during operation, including without limitation, information describing data communication connections between the local computer and other computing resources (i.e., port and wire information), and information defining numeric values or character string values (i.e., genre and record information). The system architecture includes a plurality of APIs which: reside at the local computer; populate, manage, and control access to a shared memory containing the configuration information; and, are executable only by processes executing at the local computer, thereby limiting access to the shared memory. Access to the configuration information is further limited to only those processes identified as having appropriate permission.
    Type: Grant
    Filed: September 12, 2003
    Date of Patent: November 21, 2006
    Assignee: Microsoft Corporation
    Inventors: Rob Martin Mensching, Michael R. Marcelais, Marcin Szuster
  • Patent number: 7089455
    Abstract: A system and method for handling the generation of an unexpected exception by an application. When the application generates an unexpected exception (i.e., crashes), the application's exception filter launches an outside exception handling program (EHP) that is separate and distinct from the application. Through a special protocol, the application and the EHP collaborate in responding to the unexpected exception. In this protocol, the application and the EHP communicate through kernel objects accessible by handles in a shared memory structure that the application creates before launching of the exception handling program and then shares with the EHP. Through this shared memory, the application also provides the EHP with information about the types of recovery options to offer the user. Through a graphical user interface, the EHP is then responsible for notifying the user of the application that an unexpected exception has occurred.
    Type: Grant
    Filed: May 5, 2004
    Date of Patent: August 8, 2006
    Assignee: Microsoft Corporation
    Inventors: Matthew J. Ruhlen, Michael R. Marcelais, Brian T. Hill
  • Patent number: 6857085
    Abstract: A system and method for handling the generation of an unexpected exception by an application. When the application generates an unexpected exception (i.e., crashes), the application's exception filter launches an outside exception handling program (EHP) that is separate and distinct from the application. Through a special protocol, the application and the EHP collaborate in responding to the unexpected exception. In this protocol, the application and the EHP communicate through kernel objects accessible by handles in a shared memory structure that the application creates before launching of the exception handling program and then shares with the EHP. Through this shared memory, the application also provides the EHP with information about the types of recovery options to offer the user. Through a graphical user interface, the EHP is then responsible for notifying the user of the application that an unexpected exception has occurred.
    Type: Grant
    Filed: May 15, 2000
    Date of Patent: February 15, 2005
    Assignee: Microsoft Corporation
    Inventors: Matthew J. Ruhlen, Michael R. Marcelais, Brian T. Hill
  • Publication number: 20040221203
    Abstract: A system and method for handling the generation of an unexpected exception by an application. When the application generates an unexpected exception (i.e., crashes), the application's exception filter launches an outside exception handling program (EHP) that is separate and distinct from the application. Through a special protocol, the application and the EHP collaborate in responding to the unexpected exception. In this protocol, the application and the EHP communicate through kernel objects accessible by handles in a shared memory structure that the application creates before launching of the exception handling program and then shares with the EHP. Through this shared memory, the application also provides the EHP with information about the types of recovery options to offer the user. Through a graphical user interface, the EHP is then responsible for notifying the user of the application that an unexpected exception has occurred.
    Type: Application
    Filed: May 5, 2004
    Publication date: November 4, 2004
    Applicant: Microsoft Corporation
    Inventors: Matthew J. Ruhlen, Michael R. Marcelais, Brian T. Hill
  • Patent number: 6701454
    Abstract: Method and system for recovering information from open files during a failure in a program module. Once a failure is detected in the program module, control passes to an exception handler that determines whether the open files have been modified. If so, the open files are verified and stored as recovery versions of the files at the time of the failure. The program module is then terminated and restarted. Upon restarting the program module, the recovery version of the file at the time of the failure is opened and displayed to the user.
    Type: Grant
    Filed: June 5, 2000
    Date of Patent: March 2, 2004
    Assignee: Microsoft Corporation
    Inventors: Kevin Joseph Fischer, Eric Fox, Eric A. LeVine, Brian T. Hill, Michael R. Marcelais, Jeffrey Larsson
  • Patent number: 6675295
    Abstract: Methods and systems for detecting and correcting computer software problems that cause an application program to crash upon startup are provided. Unsafe startup actions that are costly to initiate in terms of processor time and memory are handled by placing an unsafe startup action marker into the system registry prior to attempting startup. If an unsafe program module starts or boots successfully without causing the software application to crash, the unsafe startup action marker is deleted from the system registry. If loading the unsafe program module causes the application to crash, then startup actions, including corrective actions, are written into the unsafe startup action marker and are used on subsequent startup of the crashed application program to instruct the application on how to fix the problem. Other unsafe startup actions that are not costly in terms of processor time and memory are initially handled by an exception handler.
    Type: Grant
    Filed: June 19, 2000
    Date of Patent: January 6, 2004
    Assignee: Microsoft Corporation
    Inventors: Michael R. Marcelais, Brian T. Hill, Eric LeVine, Steven Miles Greenberg
  • Patent number: 6591379
    Abstract: A method and system for injecting an exception into a hung program module to recover unsaved data. The method and system allows a user to determine that the program module is hung and inject an exception into the hung program module. In response to the injected exception, program code, within the program module, is activated to detect the crash and launch a failure reporting executable program that instructs the hung program module to execute its data recovery program. The file recovery program recovers the unsaved data and notifies the failure reporting executable program when it has completed the data recovery. Once the failure reporting executable program receives the notification, it will instruct the operating system to restart the program module. The restarted program module then displays a user interface with a list of the unsaved data that were recovered. The user interface also provides controls for a user to select, from the list of recovered data, the data that the program module will keep.
    Type: Grant
    Filed: June 23, 2000
    Date of Patent: July 8, 2003
    Assignee: Microsoft Corporation
    Inventors: Eric A. LeVine, Kirk A. Glerum, Matthew J. Ruhlen, Michael R. Marcelais, Jeff David Mitchell, Steven Miles Greenberg