Patents by Inventor Peter F. Sollich
Peter F. Sollich 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: 11188460Abstract: An arena-based memory management system is disclosed. In response to a call to reclaim memory storing a plurality of objects allocated in an arena, a garbage collection of the arena is triggered based on heap-related parameter. A live object of the plurality of objects is preserved with the garbage collection.Type: GrantFiled: June 18, 2018Date of Patent: November 30, 2021Assignee: Microsoft Technology Licensing, LLCInventors: Maoni Zhang Stephens, Patrick H. Dussud, Peter F. Sollich
-
Publication number: 20190384703Abstract: An arena-based memory management system is disclosed. In response to a call to reclaim memory storing a plurality of objects allocated in an arena, a garbage collection of the arena is triggered based on heap-related parameter. A live object of the plurality of objects is preserved with the garbage collection.Type: ApplicationFiled: June 18, 2018Publication date: December 19, 2019Inventors: Maoni Zhang Stephens, Patrick H. Dussud, Peter F. Sollich
-
Patent number: 10127151Abstract: An instance of universally shared generic code is generated. A runtime parameter enables the size of a stack frame on which local data can be stored to be determined. Dynamically sized locals can be stored on a stack enabling precise garbage collection reporting. One frame of the stack is allocated for each code segment to simplify GC reporting. A reporting region in the frame memory region comprises a count of locals and a location at which the local is found in the stack.Type: GrantFiled: May 13, 2016Date of Patent: November 13, 2018Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC.Inventors: David C. Wrighton, Scott D. Mosier, Fadi M. Hanna, Peter F. Sollich, Jan Kotas
-
Publication number: 20170329704Abstract: An instance of universally shared generic code is generated. A runtime parameter enables the size of a stack frame on which local data can be stored to be determined. Dynamically sized locals can be stored on a stack enabling precise garbage collection reporting. One frame of the stack is allocated for each code segment to simplify GC reporting. A reporting region in the frame memory region comprises a count of locals and a location at which the local is found in the stack.Type: ApplicationFiled: May 13, 2016Publication date: November 16, 2017Inventors: David C. Wrighton, Scott D. Mosier, Fadi M. Hanna, Peter F. Sollich, Jan Kotas
-
Patent number: 8316357Abstract: The efficient use of type descriptors with frozen objects. A frozen object might actually include several type descriptors, a primary type descriptor that is canonical according to a set of canonicalization rules, and an auxiliary type descriptor that is not identical to the primary type descriptor. The auxiliary type descriptor may be used to access the canonical type descriptor. When performing an operation, if the auxiliary type descriptor can be used to perform the operation, then that auxiliary type descriptor may be used. If the canonical type descriptor is to be used to perform the operation, the auxiliary type descriptor is used to gain access to the canonical primary type descriptor. The primary type descriptor is then used to perform the operation.Type: GrantFiled: September 3, 2008Date of Patent: November 20, 2012Assignee: Microsoft CorporationInventors: Scott D. Mosier, Peter F. Sollich, Frank V. Peschel-Gallee, Patrick H. Dussud, Simon J. Hall, Rudi Martin, Michael M. Magruder, Andrew Pardoe, Madhusudhan Talluri
-
Patent number: 8271938Abstract: Mechanisms that allow frameworks significant flexibility in varying the library of common base classes in a manner that better suits the domain of applications served by the framework. Instead of providing the base class library, the runtime provides a data contract for the data structure of each base class. The frameworks can then define each base class in a custom way so long as the data contract is honored. Thus, for example, the framework may provide custom framework-specific methods and/or properties as is appropriate for the framework. Another framework might define the base classes in a different way.Type: GrantFiled: September 3, 2008Date of Patent: September 18, 2012Assignee: Microsoft CorporationInventors: Patrick H. Dussud, Scott D. Mosier, Peter F. Sollich, Frank V. Peschel-Gallee, Raja Krishnaswamy, Simon J. Hall, Madhusudhan Talluri, Rudi Martin, Michael M. Magruder, Andrew J. Pardoe
-
Patent number: 8001523Abstract: A system and methods are provided for implementing an explicit interface member in connection with a computer programming language. Thus, a mechanism is provided that prevents conflicts between independently developed interfaces, enables privately implemented interface members and enables specific versions of generic interfaces that are free from conflict.Type: GrantFiled: July 5, 2001Date of Patent: August 16, 2011Assignee: Microsoft CorporationInventors: Scott Wiltamuth, Anders Hejlsberg, Peter H. Golde, Peter F. Sollich
-
Patent number: 7987457Abstract: Various technologies and techniques are disclosed that provides targeted patching for native generation images. Changed binaries are updated with information that indicates whether or not they contain safe changes. A servicing process can then be provided for a client machine. For any compatible binaries with changes that have been identified as safe, a native generation update is performed that includes recompilation of the compatible binaries with the safe changes, and an updating of binding information for any dependent binaries. For any non-compatible binaries with changes that have been identified as unsafe, a native generation update is performed that includes recompilation of any non-compatible binaries and any dependent binaries.Type: GrantFiled: June 25, 2007Date of Patent: July 26, 2011Assignee: Microsoft CorporationInventors: Surupa Biswas, Ori Gershony, Jan Kotas, Peter F. Sollich
-
Patent number: 7873958Abstract: A system and methods for versioning software components in connection with a computer programming language are provided. In exemplary aspects, the versioning system makes use of intelligent defaults, provides a vehicle for unambiguous specification of developer intent and implements conflict resolution rules in connection with the versioning of software components. In another aspect, the versioning system bounds names at run-time, but does not bound offsets at compile-time.Type: GrantFiled: September 30, 2005Date of Patent: January 18, 2011Assignee: Microsoft CorporationInventors: Scott Wiltamuth, Anders Hejlsberg, Peter F. Sollich, Bradley M. Abrams
-
Patent number: 7774389Abstract: 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: GrantFiled: January 17, 2007Date of Patent: August 10, 2010Assignee: Microsoft CorporationInventors: Maoni Z. Stephens, Patrick H. Dussud, Peter F. Sollich, Claudio Caldato
-
Publication number: 20100058283Abstract: Mechanisms that allow frameworks significant flexibility in varying the library of common base classes in a manner that better suits the domain of applications served by the framework. Instead of providing the base class library, the runtime provides a data contract for the data structure of each base class. The frameworks can then define each base class in a custom way so long as the data contract is honored. Thus, for example, the framework may provide custom framework-specific methods and/or properties as is appropriate for the framework. Another framework might define the base classes in a different way.Type: ApplicationFiled: September 3, 2008Publication date: March 4, 2010Applicant: Microsoft CorporationInventors: Patrick H. Dussud, Scott D. Mosier, Peter F. Sollich, Frank V. Peschel-Gallee, Raja Krishnaswamy, Simon J. Hall, Madhusudhan Talluri, Rudi Martin, Michael M. Magruder, Andrew Pardoe
-
Publication number: 20100058304Abstract: The efficient use of type descriptors with frozen objects. A frozen object might actually include several type descriptors, a primary type descriptor that is canonical according to a set of canonicalization rules, and an auxiliary type descriptor that is not identical to the primary type descriptor. The auxiliary type descriptor may be used to access the canonical type descriptor. When performing an operation, if the auxiliary type descriptor can be used to perform the operation, then that auxiliary type descriptor may be used. If the canonical type descriptor is to be used to perform the operation, the auxiliary type descriptor is used to gain access to the canonical primary type descriptor. The primary type descriptor is then used to perform the operation.Type: ApplicationFiled: September 3, 2008Publication date: March 4, 2010Applicant: MICROSOFT CORPORATIONInventors: Scott D. Mosier, Peter F. Sollich, Frank V. Peschel-Gallee, Patrick H. Dussud, Simon J. Hall, Rudi Martin, Michael M. Magruder, Andrew Pardoe, Madhusudhan Talluri
-
Publication number: 20080320456Abstract: Various technologies and techniques are disclosed that provides targeted patching for native generation images. Changed binaries are updated with information that indicates whether or not they contain safe changes. A servicing process can then be provided for a client machine. For any compatible binaries with changes that have been identified as safe, a native generation update is performed that includes recompilation of the compatible binaries with the safe changes, and an updating of binding information for any dependent binaries. For any non-compatible binaries with changes that have been identified as unsafe, a native generation update is performed that includes recompilation of any non-compatible binaries and any dependent binaries.Type: ApplicationFiled: June 25, 2007Publication date: December 25, 2008Applicant: Microsoft CorporationInventors: Surupa Biswas, Ori Gershony, Jan Kotas, Peter F. Sollich
-
Patent number: 7430734Abstract: A system and method is provided for facilitating and implementing an efficient mechanism for doing an interface dispatch. The system and method retrieves source code and performs a pre-execution or preparation stage prior to execution of the source code. During the pre-execution stage memory is allocated for class types, class method tables are formed and interface virtual tables are formed. A block of memory is also allocated for an interface map in the form of a vector having a plurality of slots. The system and method packs the interface map with references to the interface virtual table locations utilizing a comb-vector technique.Type: GrantFiled: March 14, 2005Date of Patent: September 30, 2008Assignee: Microsoft CorporationInventor: Peter F. Sollich
-
Publication number: 20080172431Abstract: 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: ApplicationFiled: January 17, 2007Publication date: July 17, 2008Applicant: Microsoft CorporationInventors: Maoni Z. Stephens, Patrick H. Dussud, Peter F. Sollich, Claudio Caldato
-
Patent number: 7185167Abstract: One or more electronically-accessible media including exemplary electronically-executable instructions that, when executed, direct an electronic apparatus to perform actions including: ascertaining, from multiple processors, a processor on which a requesting thread is executing; each processor of the multiple processors associated with each respective heap of multiple respective heaps; and selecting, for a memory allocation to the requesting thread, a respective heap that is associated with the processor on which the requesting thread is executing responsive to the action of ascertaining.Type: GrantFiled: June 6, 2003Date of Patent: February 27, 2007Assignee: Microsoft CorporationInventor: Peter F. Sollich
-
Patent number: 6981250Abstract: A system and methods for versioning software components in connection with a computer programming language are provided. In exemplary aspects, the versioning system makes use of intelligent defaults, provides a vehicle for unambiguous specification of developer intent and implements conflict resolution rules in connection with the versioning of software components. In another aspect, the versioning system bounds names at run-time, but does not bound offsets at compile-time.Type: GrantFiled: July 5, 2001Date of Patent: December 27, 2005Assignee: Microsoft CorporationInventors: Scott Wiltamuth, Anders Hejlsberg, Peter F. Sollich, Bradley M. Abrams
-
Patent number: 6941550Abstract: A system and method is provided for facilitating and implementing an efficient mechanism for performing an interface dispatch. The system and method retrieves source code and performs a pre-execution or preparation stage prior to execution of the source code. During the pre-execution stage memory is allocated for class types, class method tables are formed and interface virtual tables are formed. A block of memory is also allocated for an interface map in the form of a vector having a plurality of slots. The system and method packs the interface map with references to the interface virtual table locations utilizing a comb-vector technique.Type: GrantFiled: July 9, 2001Date of Patent: September 6, 2005Assignee: Microsoft CorporationInventor: Peter F. Sollich
-
Publication number: 20040250041Abstract: One or more electronically-accessible media including exemplary electronically-executable instructions that, when executed, direct an electronic apparatus to perform actions including: ascertaining, from multiple processors, a processor on which a requesting thread is executing; each processor of the multiple processors associated with each respective heap of multiple respective heaps; and selecting, for a memory allocation to the requesting thread, a respective heap that is associated with the processor on which the requesting thread is executing responsive to the action of ascertaining.Type: ApplicationFiled: June 6, 2003Publication date: December 9, 2004Applicant: MICROSOFT CORPORATIONInventor: Peter F. Sollich