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: 7127709Abstract: 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: GrantFiled: September 25, 2002Date of Patent: October 24, 2006Assignee: Microsoft CorporationInventors: Seth M. Demsey, Brian J. Smith, Scott M. Corbin, Michael D. Smith, W. Michael Zintel
-
Patent number: 7017162Abstract: 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: GrantFiled: July 10, 2001Date of Patent: March 21, 2006Assignee: Microsoft CorporationInventors: 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: 7013469Abstract: 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: GrantFiled: June 23, 2005Date of Patent: March 14, 2006Assignee: Microsoft CorporationInventors: 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: 20040095387Abstract: 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: ApplicationFiled: November 19, 2002Publication date: May 20, 2004Inventors: Seth M. Demsey, Tuan Huynh, Christopher W. Lorton, Ramasamy Krishnaswamy, Bruce E. Johnson
-
Publication number: 20040098724Abstract: 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: ApplicationFiled: November 14, 2002Publication date: May 20, 2004Inventors: Seth M. Demsey, Scott K. Holden, William Michael Zintel, Brian J. Smith, Tuan Huynh
-
Publication number: 20040098731Abstract: 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: ApplicationFiled: November 19, 2002Publication date: May 20, 2004Inventors: Seth M. Demsey, Tuan Huynh, Christopher W. Lorton, Ramasamy Krishnaswamy, Armin Sadeghi, Bruce E. Johnson
-
Publication number: 20040093604Abstract: 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: ApplicationFiled: November 13, 2002Publication date: May 13, 2004Inventors: Seth M. Demsey, Tuan Huynh, Christopher W. Lorton
-
Publication number: 20040060041Abstract: 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: ApplicationFiled: September 25, 2002Publication date: March 25, 2004Applicant: Microsoft CorporationInventors: Seth M. Demsey, Brian J. Smith, Scott M. Corbin
-
Publication number: 20040054994Abstract: 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: ApplicationFiled: September 17, 2002Publication date: March 18, 2004Applicant: Microsoft CorporationInventors: Seth M. Demsey, Brian J. Smith, Scott M. Corbin, Michael D. Smith, W. Michael Zintel
-
Publication number: 20030167356Abstract: 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: ApplicationFiled: July 10, 2001Publication date: September 4, 2003Inventors: 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: 20030028685Abstract: An application program interface (API) provides a set of functions for application developers who build Web applications on Microsoft Corporation's .NET™ platform.Type: ApplicationFiled: February 28, 2002Publication date: February 6, 2003Inventors: 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