Patents by Inventor Franz Valentin
Franz Valentin 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: 11954023Abstract: Garbage collection or other computational work accesses memory which is located outside processor registers. Some embodiments specify at least some of the memory accesses and separate them from other computations, and utilize a memory access state machine to control the execution of both kinds of computation. Code that employs memory access results is placed in a run routine which is divided between respective states of the state machine. The specified memory accesses are invoked from a state code, and overlap other computation. A prefetch buffer may be dynamically sized based on the availability of space in the prefetch buffer. Code for shared work, such as address relocation code, may be placed in its own state structure. Candidate code for possible separation into a specified memory access routine may be automatically recognized.Type: GrantFiled: July 20, 2022Date of Patent: April 9, 2024Assignee: Microsoft Technology Licensing, LLCInventors: Maoni Zhang Stephens, Peter Franz Valentin Sollich
-
Publication number: 20240028509Abstract: Computational costs are reduced for garbage collection or other computational work that accesses memory which is located outside processor registers. Cost reduction is accomplished by specifying at least some of the memory accesses and separating them from other computations, and by utilizing a memory access cost management state machine to control the execution of both kinds of computation. Code that employs memory access results is placed in a run routine which is divided between respective states of the state machine. The specified memory accesses are invoked from a state code, and overlap other computation to reduce overall execution time. A prefetch buffer may be dynamically sized based on the availability of space in the prefetch buffer. Code for shared work, such as address relocation code, may be placed in its own state structure. Candidate code for possible separation into a specified memory access routine may be automatically recognized.Type: ApplicationFiled: July 20, 2022Publication date: January 25, 2024Inventors: Maoni Zhang STEPHENS, Peter Franz Valentin SOLLICH
-
Patent number: 11416392Abstract: An arena-based memory management system is disclosed. In response to a call to reclaim memory storing a group of objects allocated in an arena, an object not in use of the group of objects allocated in the arena is collected. A live object of the plurality of objects is copied from the arena to a heap.Type: GrantFiled: June 20, 2019Date of Patent: August 16, 2022Assignee: Microsoft Technology Licensing, LLCInventors: Peter Franz Valentin Sollich, Robert Lovejoy Goodwin, Charles Ryan Salada
-
Publication number: 20200401517Abstract: An arena-based memory management system is disclosed. In response to a call to reclaim memory storing a group of objects allocated in an arena, an object not in use of the group of objects allocated in the arena is collected. A live object of the plurality of objects is copied from the arena to a heap.Type: ApplicationFiled: June 20, 2019Publication date: December 24, 2020Applicant: Microsoft Technology Licensing, LLCInventors: Peter Franz Valentin Sollich, Robert Lovejoy Goodwin, Charles Ryan Salada
-
Patent number: 10656926Abstract: A precompiled form of information derived from CIL metadata is created in a compact type layout (CTL) format. Information in CTL format for each data type in a program can be represented as a contiguous byte stream. Information that is irrelevant to decisions concerning layout of a data type in memory can be suppressed. Information that is irrelevant to creation of virtual machine data structures can be suppressed. The information in CTL format may reference types, methods, and fields by CIL metadata token. Virtual override information such as, for example, a logical virtual table layout, can be pre-computed. Interface implementation information can be pre-computed. A decoder can generate data structures used in generation of an executable from the CTL formatted data.Type: GrantFiled: February 23, 2016Date of Patent: May 19, 2020Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC.Inventor: Peter Franz Valentin Sollich
-
Patent number: 10572275Abstract: Compatibility can be maintained when program code and pre-computed data associated with the program code are distributed in separate modules by using a data structure of key/value pairs comprising a dictionary. The dictionary can include a fixed part, a floating part and a version number. The version number in the dictionary can be used to determine if a dictionary for the program is current or outdated by comparing the dictionary version number and the version number associated with a dictionary layout in the current shared library. The dictionary can be rebuilt dynamically if the version number of the dictionary does not match the version number of the dictionary layout in the current shared library. The version number of the dictionary can be updated to the version associated with the layout version and the version pointer in the dictionary can be updated to point to the updated version number.Type: GrantFiled: June 15, 2017Date of Patent: February 25, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Hongtao Yu, David Charles Wrighton, Ian Michael Bearman, Michal Strehovský, Peter Franz Valentin Sollich
-
Publication number: 20180365033Abstract: Compatibility can be maintained when program code and pre-computed data associated with the program code are distributed in separate modules by using a data structure of key/value pairs comprising a dictionary. The dictionary can include a fixed part, a floating part and a version number. The version number in the dictionary can be used to determine if a dictionary for the program is current or outdated by comparing the dictionary version number and the version number associated with a dictionary layout in the current shared library. The dictionary can be rebuilt dynamically if the version number of the dictionary does not match the version number of the dictionary layout in the current shared library. The version number of the dictionary can be updated to the version associated with the layout version and the version pointer in the dictionary can be updated to point to the updated version number.Type: ApplicationFiled: June 15, 2017Publication date: December 20, 2018Inventors: Hongtao YU, David Charles WRIGHTON, Ian Michael BEARMAN, Michal STREHOVSKÝ, Peter Franz Valentin SOLLICH
-
Publication number: 20160342400Abstract: A precompiled form of information derived from CIL metadata is created in a compact type layout (CTL) format. Information in CTL format for each data type in a program can be represented as a contiguous byte stream. Information that is irrelevant to decisions concerning layout of a data type in memory can be suppressed. Information that is irrelevant to creation of virtual machine data structures can be suppressed. The information in CTL format may reference types, methods, and fields by CIL metadata token. Virtual override information such as, for example, a logical virtual table layout, can be pre-computed. Interface implementation information can be pre-computed. A decoder can generate data structures used in generation of an executable from the CTL formatted data.Type: ApplicationFiled: February 23, 2016Publication date: November 24, 2016Inventor: Peter Franz Valentin Sollich
-
Patent number: 9274772Abstract: A precompiled form of information derived from CIL metadata is created in a compact type layout (CTL) format. Information in CTL format for each data type in a program can be represented as a contiguous byte stream. Information that is irrelevant to decisions concerning layout of a data type in memory can be suppressed. information that is irrelevant to creation of virtual machine data structures can be suppressed. The information in CTL format may reference types, methods, and fields by CIL metadata token. Virtual override information such as, for example, a logical virtual table layout, can be pre-computed. Interface implementation information can be pre-computed. A decoder can generate data structures used in generation of an executable from the CTL formatted data.Type: GrantFiled: August 13, 2012Date of Patent: March 1, 2016Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC.Inventor: Peter Franz Valentin Sollich
-
Publication number: 20140046984Abstract: A precompiled form of information derived from CIL metadata is created in a compact type layout (CTL) format. Information in CTL format for each data type in a program can be represented as a contiguous byte stream. Information that is irrelevant to decisions concerning layout of a data type in memory can be suppressed. Information that is irrelevant to creation of virtual machine data structures can be suppressed. The information in CTL format may reference types, methods, and fields by CIL metadata token. Virtual override information such as, for example, a logical virtual table layout, can be pre-computed. Interface implementation information can be pre-computed. A decoder can generate data structures used in generation of an executable from the CTL formatted data.Type: ApplicationFiled: August 13, 2012Publication date: February 13, 2014Applicant: MICROSOFT CORPORATIONInventor: Peter Franz Valentin Sollich
-
Patent number: 8375373Abstract: In a change-resilient intermediate language code, registers have been allocated but symbolic references and pseudo instructions still use unbound items. Pseudo instructions having a specific location within generated intermediate language code request insertion of machine instruction(s) at the location to perform specified operations. Specified operations may include, for example, operations to perform or facilitate garbage collection, memory allocation, exception handling, various kinds of method calls and execution engine service calls, managed object field access, heap management, generic code, static variable storage access, address mode modification, and/or symbolic reference to types. A binder may transform the intermediate language code into executable code. Little or no register allocation is needed during binding, but unbound items such as offsets, sizes, slots, and the like are determined and specified to produce executable code.Type: GrantFiled: April 19, 2010Date of Patent: February 12, 2013Assignee: Microsoft CorporationInventor: Peter Franz Valentin Sollich
-
Patent number: 8365156Abstract: Management of changes involving base classes is facilitated. An intermediate language code has execution-ready register allocation but unbound object field layout and/or virtual method slot assignment, thereby providing resilience. A symbolic reference rather than a direct offset can identify a field, and intermediate language code can be field order independent. Other symbolic references may also be used. Intermediate language code pseudo instructions can express items such as a field access, a method call, a virtual method call, part or all of a method prolog, part or all of a method epilog. A binder binds the intermediate language code to produce executable code. Thus, one may avoid recompilation otherwise required when a base class is revised by adding a field, removing a private field, rearranging field order, adding a virtual method, or rearranging virtual method order.Type: GrantFiled: April 17, 2010Date of Patent: January 29, 2013Assignee: Microsoft CorporationInventor: Peter Franz Valentin Sollich
-
Publication number: 20110258615Abstract: Management of changes involving base classes is facilitated. An intermediate language code has execution-ready register allocation but unbound object field layout and/or virtual method slot assignment, thereby providing resilience. A symbolic reference rather than a direct offset can identify a field, and intermediate language code can be field order independent. Other symbolic references may also be used. Intermediate language code pseudo instructions can express items such as a field access, a method call, a virtual method call, part or all of a method prolog, part or all of a method epilog. A binder binds the intermediate language code to produce executable code. Thus, one may avoid recompilation otherwise required when a base class is revised by adding a field, removing a private field, rearranging field order, adding a virtual method, or rearranging virtual method order.Type: ApplicationFiled: April 17, 2010Publication date: October 20, 2011Applicant: Microsoft CorporationInventor: Peter Franz Valentin Sollich
-
Publication number: 20110258616Abstract: In a change-resilient intermediate language code, registers have been allocated but symbolic references and pseudo instructions still use unbound items. Pseudo instructions having a specific location within generated intermediate language code request insertion of machine instruction(s) at the location to perform specified operations. Specified operations may include, for example, operations to perform or facilitate garbage collection, memory allocation, exception handling, various kinds of method calls and execution engine service calls, managed object field access, heap management, generic code, static variable storage access, address mode modification, and/or symbolic reference to types. A binder may transform the intermediate language code into executable code. Little or no register allocation is needed during binding, but unbound items such as offsets, sizes, slots, and the like are determined and specified to produce executable code.Type: ApplicationFiled: April 19, 2010Publication date: October 20, 2011Applicant: Microsoft CorporationInventor: Peter Franz Valentin Sollich
-
Publication number: 20020016953Abstract: A visual development system having an interface which assists a user with input of source code expressions and statements during creation of a computer program is described. The interface includes an Integrated Development Environment (IDE) interface having a code editor with “Code Completion” and “Code Parameter” features for displaying context sensitive pop-up windows within a source code file. Code Completion is implemented at the user interface level by displaying a Code Completion dialog box after the user enters a record or class name followed by a period. For a class, the dialog lists the properties, methods and events appropriate to the class. For a record or structure, the dialog lists the data members of the record. To complete entry of the expression, the user need only select an item from the dialog list, whereupon the system automatically enters the selected item in the code. Code completion also operates during input of assignment statements.Type: ApplicationFiled: August 22, 2001Publication date: February 7, 2002Applicant: Borland International, Inc.Inventor: Peter Franz Valentin Sollich
-
Patent number: 6314559Abstract: A visual development system having an interface which assists a user with input of source code expressions and statements during creation of a computer program is described. The interface includes an Integrated Development Environment (IDE) interface having a code editor with “Code Completion” and “Code Parameter” features for displaying context sensitive pop-up windows within a source code file. Code Completion is implemented at the user interface level by displaying a Code Completion dialog box after the user enters a record or class name followed by a period. For a class, the dialog lists the properties, methods and events appropriate to the class. For a record or structure, the dialog lists the data members of the record. To complete entry of the expression, the user need only select an item from the dialog list, whereupon the system automatically enters the selected item in the code. Code completion also operates during input of assignment statements.Type: GrantFiled: October 2, 1997Date of Patent: November 6, 2001Assignee: Barland Software CorporationInventor: Peter Franz Valentin Sollich
-
Patent number: 5628903Abstract: The invention relates to an apparatus for the removal of clarified waste water from circular tanks which have a central waste-water inlet. It is notable for a submerged pipe which is constructed as a ring conduit provided concentrically with the vertical axis of the ring tank and is arranged underneath the surface of the clarified waste water in order to draw off the clarified waste water uniformly, the drainage of the latter being regulatable independently of the incoming amount by means of a control system and the water level in the tank being controllable in a constant manner by means of said system.Type: GrantFiled: June 13, 1995Date of Patent: May 13, 1997Assignee: Hans Huber GmbH & Co. KGInventor: Franz Valentin
-
Patent number: 5591348Abstract: A device for centrically charging tanks (9) with a spin chamber (1, 10) connected to an inlet (20) and to a vertical downpipe (2, 12) ending seamlessly in a trumpet-shaped mouth (3, 18). Rotary flow charges circular settlement tanks and sand sorters and sedimentation tanks in such a way that the Coanda effect is activated at the trumpet-shaped mouth (3, 18) and in turn causes the rotary outflow of fluid from the vertical pipe (2, 12) to be diverted into the horizontal plane or vertically upwards as well as a radially symmetrical flow in the tank (9). There is a guiding pipe (14, 16) in the downpipe (2, 12) with preferably circular apertures around its periphery and which is open to the atmosphere at the top.Type: GrantFiled: August 16, 1994Date of Patent: January 7, 1997Assignee: Anton FelderInventors: Anton Felder, Franz Valentin
-
Patent number: 5552050Abstract: The invention relates to a device for the removal of clarified waste water from rectangular basins, which device has at least one completely filled submerged pipe (16; 16) disposed underneath the water surface in the rectangular basin, the arrangement and design of said pipe being of the type suitable for a two-dimensionally uniform take-off of the clarified waste water over the entire basin (10).Type: GrantFiled: July 27, 1994Date of Patent: September 3, 1996Assignee: Hans Huber GmbH & Co. KGInventor: Franz Valentin
-
Patent number: 5470489Abstract: A method and apparatus for charging either a a shallow grit tank or a settling tank with waste water by means of a horizontal feed line and a horizontal drain line using the Coanda Effect. The waste water is pressured through a gap which directs the waste water stream onto a curved surface. Due to the Coanda Effect, the direction of the waste water is changed from downward when used in a shallow grit tank or changed from upward when used in a settling tank, to a substantially horizontal direction. The mineral constituents and the organic constituents of the waste water are consequently separated.Type: GrantFiled: November 17, 1993Date of Patent: November 28, 1995Inventors: Anton Felder, Franz Valentin