Patents by Inventor Seth M. Demsey

Seth M. Demsey 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: 7127709
    Abstract: The present invention is directed at a virtual machine environment operating on portable devices with limited resources. The virtual machine environment includes a method for managing dynamically generated code and data together in order to shift memory usage to/from generated code or data as needed. Each application domain manages several code pools and several garbage collection pools that are allocated from a system memory heap. When additional memory is not available for allocation from the system memory heap, garbage collection is performed until sufficient memory becomes available. During garbage collection, unreachable data in each garbage collection pool is cleared. The garbage collection process may further compact the garbage collection pools in order to empty one or more of the garbage collection pools.
    Type: Grant
    Filed: September 25, 2002
    Date of Patent: October 24, 2006
    Assignee: Microsoft Corporation
    Inventors: Seth M. Demsey, Brian J. Smith, Scott M. Corbin, Michael D. Smith, W. Michael Zintel
  • Patent number: 7017162
    Abstract: An application program interface (API) provides a set of functions, including a set of base classes and types that are used in substantially all applications accessing the API, for application developers who build Web applications on Microsoft Corporation's .NETâ„¢ platform.
    Type: Grant
    Filed: July 10, 2001
    Date of Patent: March 21, 2006
    Assignee: Microsoft Corporation
    Inventors: Adam W. Smith, Anthony J. Moore, Brian A. LaMacchia, Anders Hejlsberg, Brian M. Grunkemeyer, Caleb L. Doise, Christopher W. Brumme, Christopher L. Anderson, Corina E. Feuerstein, Craig T. Sinclair, Daniel Takacs, David S. Ebbo, David O. Driver, David S. Mortenson, Erik B. Christensen, Erik B. Olson, Fabio A. Yeon, Gopala Krishna R. Kakivaya, Gregory D. Fee, Hany E. Ramadan, Henry L. Sanders, Jayanth V. Rajan, Jeffrey M. Cooperstein, Jonathan C. Hawkins, James H. Hogg, Joe D. Long, John I. McConnell, Jesus Ruiz-Scougall, James S. Miller, Julie D. Bennett, Krzysztof J. Cwalina, Lance E. Olson, Loren M. Kohnfelder, Michael M. Magruder, Manish S. Prabhu, Radu Rares Palanca, Raja Krishnaswamy, Shawn P. Burke, Sean E. Trowbridge, Seth M. Demsey, Shajan Dasan, Stefan H. Pharies, Suzanne M. Cook, Tarun Anand, Travis J. Muhlestein, Yann E. Christensen, Yung-shin Lin, Ramasamy Krishnaswamy, Joseph Roxe, Alan Boshier, David Bau
  • Patent number: 7013469
    Abstract: An application program interface (API) provides a set of functions, including a set of base classes and types that are used in substantially all applications accessing the API, for application developers who build Web applications on Microsoft Corporation's .NETâ„¢ platform.
    Type: Grant
    Filed: June 23, 2005
    Date of Patent: March 14, 2006
    Assignee: Microsoft Corporation
    Inventors: Adam W. Smith, Anthony J. Moore, Brian A. LaMacchia, Anders Hejlsberg, Brian M. Grunkemeyer, Caleb L. Doise, Christopher W. Brumme, Christopher L. Anderson, Corina E. Feuerstein, Craig T. Sinclair, Daniel Takacs, David S. Ebbo, David O. Driver, David S. Mortenson, Erik B. Christensen, Erik B. Olson, Fabio A. Yeon, Gopala Krishna R. Kakivaya, Gregory D. Fee, Hany E. Ramadan, Henry L. Sanders, Jayanth V. Rajan, Jeffrey M. Cooperstein, Jonathan C. Hawkins, James H. Hogg, Joe D. Long, John I. McConnell, Jesus Ruiz-Scougall, James S. Miller, Julie D. Bennett, Krzysztof J. Cwalina, Lance E. Olson, Loren M. Kohnfelder, Michael M. Magruder, Manish S. Prabhu, Radu Rares Palanca, Raja Krishnaswamy, Shawn P. Burke, Sean E. Trowbridge, Seth M. Demsey, Shajan Dasan, Stefan H. Pharies, Suzanne M. Cook, Tarun Anand, Travis J. Muhlestein, Yann E. Christensen, Yung-shin Lin, Ramasamy Krishnaswamy, Joseph Roxe, Alan Boshier, David Bau
  • Publication number: 20040095387
    Abstract: One aspect relates to a process and associated apparatus that implements a user interface (UI) control within a computer environment. The computer environment includes a managed code portion and a native code portion. The implementing the UI control includes creating a plurality of control node data structures within the managed code portion. A managed UI control is virtualized within the managed code portion by associating and/or batching at least two of the control node data structures. The UI control is realized in the native code portion by migrating the managed UI control into the native code portion. In certain aspects, the UI control is populated and parented prior to the realizing.
    Type: Application
    Filed: November 19, 2002
    Publication date: May 20, 2004
    Inventors: Seth M. Demsey, Tuan Huynh, Christopher W. Lorton, Ramasamy Krishnaswamy, Bruce E. Johnson
  • Publication number: 20040098724
    Abstract: Handles associate respective native resources with an application that utilizes a library to call for the native resource. Each handle is created to track a native resource that has been allocated to an application. All native resources associated with the application are freed by examining the handles to find those native resources still being held by the application after they are no longer being used, or when that application has been, or is being, terminated. If a native resource is requested by the application and found to be unavailable, the handles are reviewed to collect allocated native resources that are found to be unneeded by their respective applications. A collected native resource corresponding to the requested native resource is thereby made available to be reallocated to the requesting application.
    Type: Application
    Filed: November 14, 2002
    Publication date: May 20, 2004
    Inventors: Seth M. Demsey, Scott K. Holden, William Michael Zintel, Brian J. Smith, Tuan Huynh
  • Publication number: 20040098731
    Abstract: Notifications are generated in managed and native environments and propagated to an interfacing abstraction layer of native code there between. The abstraction layer assesses each received notification to determine whether the notification, or a previously received collection thereof, should be transitioned across a boundary between the managed environment and the native environment. The managed environment includes a virtual machine in a managed code portion. The native environment includes an operating system that interfaces the abstraction layer which is at a boundary between the managed code portion and the operating system. A collection of notifications are those that have been batched and/or synthesized. The abstraction layer is configured with predetermined criteria to assess whether to form a collection of received notifications and/or to prevent a transition of a notification, or collection thereof, across the boundary.
    Type: Application
    Filed: November 19, 2002
    Publication date: May 20, 2004
    Inventors: Seth M. Demsey, Tuan Huynh, Christopher W. Lorton, Ramasamy Krishnaswamy, Armin Sadeghi, Bruce E. Johnson
  • Publication number: 20040093604
    Abstract: This disclosure relates to drawing within a computer environment using a drawing resource. The computer environment includes a managed code portion and a native code portion. The computer environment compares a draw parameter call value being passed from the managed code portion to the native code portion with a stored drawing resource value stored in the native code portion. If the draw parameter call value is the same as the stored drawing resource value, then the computer environment is configured to draw onto a native drawing surface using the stored drawing resource. If the draw parameter call value is not the same as the drawing resource value, then a new drawing resource is created in the managed code portion. In another aspect, a portion of the drawing resource feature portion that contains data that describes at least one or more parameter of the drawing resource is transmitted between the managed code portion and the native code portion.
    Type: Application
    Filed: November 13, 2002
    Publication date: May 13, 2004
    Inventors: Seth M. Demsey, Tuan Huynh, Christopher W. Lorton
  • Publication number: 20040060041
    Abstract: The present invention is directed at a virtual machine environment operating on portable devices with limited resources. The virtual machine environment includes a method for managing dynamically generated code and data together in order to shift memory usage to/from generated code or data as needed. Each application domain manages several code pools and several garbage collection pools that are allocated from a system memory heap. When additional memory is not available for allocation from the system memory heap, garbage collection is performed until sufficient memory becomes available. During garbage collection, unreachable data in each garbage collection pool is cleared. The garbage collection process may further compact the garbage collection pools in order to empty one or more of the garbage collection pools.
    Type: Application
    Filed: September 25, 2002
    Publication date: March 25, 2004
    Applicant: Microsoft Corporation
    Inventors: Seth M. Demsey, Brian J. Smith, Scott M. Corbin
  • Publication number: 20040054994
    Abstract: The present invention is directed at a virtual machine environment operating on portable devices with limited resources. The virtual machine environment includes a method for compiling an intermediate language into native code wherein the native code is stored in a directly addressable and executable storage medium, such as flash memory. A portion of the native code is written to a cache resident in volatile memory during compiling. The cache is written to the directly addressable and executable storage medium. The cache may be sized in relation to a block size associated with the directly addressable and executable storage medium. A metadata map is maintained and associates a physical address at which the native code is stored in the storage medium with the method. The native code is persisted by storing the metadata map in the storage medium and associating the metadata map with the method.
    Type: Application
    Filed: September 17, 2002
    Publication date: March 18, 2004
    Applicant: Microsoft Corporation
    Inventors: Seth M. Demsey, Brian J. Smith, Scott M. Corbin, Michael D. Smith, W. Michael Zintel
  • Publication number: 20030167356
    Abstract: An application program interface (API) provides a set of functions, including a set of base classes and types that are used in substantially all applications accessing the API, for application developers who build Web applications on Microsoft Corporation's .NET™ platform.
    Type: Application
    Filed: July 10, 2001
    Publication date: September 4, 2003
    Inventors: Adam W. Smith, Anthony J. Moore, Brian A. LaMacchia, Anders Hejlsberg, Brian M. Grunkemeyer, Caleb L. Doise, Christopher W. Brumme, Christopher L. Anderson, Corina E. Feuerstein, Craig T. Sinclair, Daniel Takacs, David S. Ebbo, David O. Driver, David S. Mortenson, Erik B. Christensen, Erik B. Olson, Fabio A. Yeon, Gopala Krishna R. Kakivaya, Gregory D. Fee, Hany E. Ramadan, Henry L. Sanders, Jayanth V. Rajan, Jeffrey M. Cooperstein, Jonathan C. Hawkins, James H. Hogg, Joe D. Long, John I. McConnell, Jesus Ruiz-Scougall, James S. Miller, Julie D. Bennett, Krzysztof J. Cwalina, Lance E. Olson, Loren M. Kohnfelder, Michael M. Magruder, Manish S. Prabhu, Radu Rares Palanca, Raja Krishnaswamy, Shawn P. Burke, Sean E. Trowbridge, Seth M. Demsey, Shajan Dasan, Stefan H. Pharies, Suzanne M. Cook, Tarun Anand, Travis J. Muhlestein, Yann E. Christensen, Yung-shin Lin, Ramasamy Krishnaswamy, Joseph Roxe, Alan Boshier, David Bau
  • Publication number: 20030028685
    Abstract: An application program interface (API) provides a set of functions for application developers who build Web applications on Microsoft Corporation's .NET™ platform.
    Type: Application
    Filed: February 28, 2002
    Publication date: February 6, 2003
    Inventors: Adam W. Smith, Anthony J. Moore, Anders Hejlsberg, Brian A. LaMacchia, Blaine J. Dockter, Brian M. Grunkemeyer, Brian K. Pepin, Caleb L. Doise, Christopher W. Brumme, Chad W. Royal, Christopher L. Anderson, Corina E. Feuerstein, Craig T. Sinclair, Daniel Dedu-Constantin, Daniel Takacs, David S. Ebbo, David S. Mortenson, Erik B. Christensen, Erik B. Olson, Fabio A. Yeon, Giovanni M. Della-Libera, Gopala Krishna R. Kakivaya, Gregory D. Fee, Hany E. Ramadan, Jayanth V. Rajan, Jeffrey M. Cooperstein, Jonathan C. Hawkins, James H. Hogg, Joe D. Long, John I. McConnell, Jesus Ruiz-Scougall, James S. Miller, Julie D. Bennett, Jun Fang, Krzysztof J. Cwalina, Keith W. Ballinger, Lance E. Olson, Loren M. Kohnfelder, Luca Bolognese, Manu Vasandani, Mark T. Anders, Mark P. Ashton, Mark A. Boulter, Mark W. Fussell, Michael M. Magruder, Manish S. Prabhu, Neetu Rajpal, Nikhil Kothari, Nithyalakshmi Sampathkumar, Nicholas M. Kramer, Omri Gazitt, Radu Rares Palanca, Raja Krishnaswamy, Robert M. Howard, Ramasamy Krishnaswamy, Shawn P. Burke, Scott D. Guthrie, Sean E. Trowbridge, Seth M. Demsey, Shajan Dasan, Subhag P. Oak, Sreeram Nivarthi, Stefan H. Pharies, Suzanne M. Cook, Susan M. Warren, Tarun Anand, Travis J. Muhlestein, William A. Adams, Yan Leshinsky, Yann E. Christensen, Yung-shin Lin, Stephen J. Miller, Joseph Roxe, Alan Boshier, Henry L. Sanders, David Bau