Patents by Inventor Christopher Brumme
Christopher Brumme 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).
-
Publication number: 20070250470Abstract: The subject disclosure pertains to implicitly and adaptively parallelizing program language-integrated operations comprising queries and the like. In particular, a parallel execution plan can be generated and/or selected based on static information surrounding operations. The plan can be augmented subsequently or concurrently based on dynamic information concerning the operations, machine topology, utilization, as well as data characteristics, among other things. As a result, sizeable parallel speedup can be obtained upon execution of the plan and evaluation of the operations.Type: ApplicationFiled: April 24, 2006Publication date: October 25, 2007Applicant: Microsoft CorporationInventors: John Duffy, Jan Gray, Christopher Brumme, Henricus Meijer, Jim Larus
-
Publication number: 20070088716Abstract: Meta-data of compiled code may have a corresponding description of the schema for meta-data, to allow for deviations from a schema standard.Type: ApplicationFiled: October 13, 2005Publication date: April 19, 2007Applicant: Microsoft CorporationInventors: Christopher Brumme, James Hogg, James Miller, Sergey Lidin
-
Publication number: 20070006198Abstract: A system and method for mitigating problems associated with automatic execution of initialization code is provided. The system includes an initialization method activator that can call a class initialization method at a pre-determined execution point. The system also includes a deadlock analyzer that can determine whether calling the initialization method will create a deadlock, and, if a deadlock is detected that can resolve such a deadlock. The system also includes a semantic analyzing component that can analyze a semantic type associated with the initialization method and a domain uniqueness analyzer that can analyze the uniqueness of the domain with which the class will interact, to facilitate determining where to place code that will check whether a class is initialized, and if the class is not initialized that will invoke the class initializing method.Type: ApplicationFiled: August 16, 2006Publication date: January 4, 2007Applicant: MICROSOFT CORPORATIONInventors: Gopala Kakivaya, Christopher Brumme, James Miller, Vance Morrison, David Mortenson, Sean Trowbridge
-
Publication number: 20060212877Abstract: IO operations or processor-intensive operations may be canceled, interrupted, or otherwise terminated without corrupting an overriding process.Type: ApplicationFiled: February 17, 2005Publication date: September 21, 2006Applicant: Microsoft CorporationInventors: Brian Grunkemeyer, Christopher Brumme, Christopher George
-
Publication number: 20060156152Abstract: A finalizer may include a notification that no tolerance for failure or corruption is expected. Any potential failure point, which may be induced by a runtime execution environment routine or subroutine that is associated with the finalizer may then be prepared apart from the finalizer.Type: ApplicationFiled: December 10, 2004Publication date: July 13, 2006Applicant: Microsoft CorporationInventors: Sean Trowbridge, Brian Grunkemeyer, Christopher Brumme, Mahesh Prakriya, Patrick Dussud, Ian Carmichael
-
Publication number: 20060101446Abstract: The techniques and mechanisms described herein are directed at sharing objects between applications executing in a virtual runtime environment. The techniques include compiling a cpu-independent file to create executable instructions that are associated with an application that is executable in a virtual runtime environment. A constructor associated with a shareable class defined within the cpu-independent file is executed to create an instance of a shareable object. The shareable object is then persisted in a manner such that other applications executing in the virtual runtime environment may access the shareable object. The technique may be performed during pre-JIT compilation or just-in-time compilation of the cpu-independent file. The execution of the constructor is performed at a restricted security level that prevents access to changeable information when generating static data for the static members of the shareable object.Type: ApplicationFiled: October 18, 2004Publication date: May 11, 2006Applicant: Microsoft CorporationInventors: Rico Mariani, Christopher Brumme, Patrick Dussud, Sean Trowbridge
-
Publication number: 20060101401Abstract: Deterministic code execution may be recovered for programs or portions thereof by implementing a programmable policy on a system host to escalate the scope of a code discard based on various parameters.Type: ApplicationFiled: October 14, 2004Publication date: May 11, 2006Applicant: Microsoft CorporationInventors: Christopher Brumme, WeiWen Liu, Mahesh Prakriya, Sean Trowbridge, Ian Carmichael, Patrick Dussud, Brian Grunkemeyer
-
Publication number: 20060075383Abstract: Described herein is an implementation for exposing an “execution context” to a logical execution flow of procedures as it executes.Type: ApplicationFiled: October 6, 2004Publication date: April 6, 2006Applicant: Microsoft CorporationInventors: Arun Moorthy, Christopher Brumme, Jonathan Hawkins, Raja Krishnaswamy
-
Publication number: 20060070041Abstract: Authored code may include a notification that no tolerance for failure or corruption is expected for an identified sub-set of the code. Any potential failure point, which may be induced by a runtime environment routine or sub-routine, that is associated with the identified sub-set of code may then be identified and hoisted to a point apart from the identified sub-set of code.Type: ApplicationFiled: September 29, 2004Publication date: March 30, 2006Applicant: Microsoft CorporationInventors: Christopher Brumme, Sean Trowbridge, Rudi Martin, WeiWen Liu, Brian Grunkemeyer, Mahesh Prakriya
-
Publication number: 20060053138Abstract: The subject disclosure pertains to systems and methods for supporting null capabilities for general purpose programming languages. Low level, runtime support for a nullable type is provided to ensure consistency and coherency. An execution component restricts support of the nullable type to programming language types that lack a null capability. The execution component may also provide support for conversion between the nullable type and a reference type.Type: ApplicationFiled: August 29, 2005Publication date: March 9, 2006Applicant: Microsoft CorporationInventors: Henricus Meijer, Anders Hejisberg, Dinesh Kulkarni, Vance Morrison, John Duffy, Christopher Brumme, Matthew Warren, Luca Bolognese, Peter Hallam, Gary Katzenberger
-
Publication number: 20060004805Abstract: Enabling secure and efficient marshaling, utilization, and releasing of handles in either of an operating system or runtime environment includes wrapping a handle with a counter to tabulate a number of threads using currently using the handle. Thus, handle administration is implemented to circumvent potential security risks, avoid correctness problems, and foster more efficient handle releasing.Type: ApplicationFiled: May 25, 2004Publication date: January 5, 2006Applicant: Microsoft CorporationInventors: Brian Grunkemeyer, David Mortenson, Rudi Martin, Sonja Keserovic, Mahesh Prakriya, Christopher Brumme
-
Publication number: 20050273764Abstract: Reliability contracts declare an intent of executable code, and may be associated with at least a portion of the executable code. The intent of the executable code in the face of particular conditions may be declared for the use in any one of a programming, execution, or testing environment.Type: ApplicationFiled: May 14, 2004Publication date: December 8, 2005Applicant: Microsoft CorporationInventors: Rudi Martin, Mahesh Prakriya, Brian Grunkemeyer, Christopher Brumme, Sean Trowbridge, Weiwen Liu
-
Publication number: 20050268309Abstract: A system and method for interacting with an object is provided. The system includes a method call interceptor that intercepts a method call made on an object and that routes the method call to a proxy. The method call interceptor is accessible to application code. The system also includes an application code generic proxy that after overriding a base class invocation method can receive intercepted method calls, can invoke methods on the object that the proxy images, can receive results from the object that the proxy images and can pass results to the entity that generated the intercepted method call.Type: ApplicationFiled: July 13, 2005Publication date: December 1, 2005Applicant: Microsoft CorporationInventors: Raja Krishnaswamy, Tarun Anand, Christopher Brumme, Gopala Kakivaya
-
Publication number: 20050246716Abstract: 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: June 23, 2005Publication date: November 3, 2005Applicant: Microsoft CorporationInventors: Adam Smith, Anthony Moore, Brian LaMacchia, Anders Hejlsberg, Brian Grunkemeyer, Caleb Doise, Christopher Brumme, Christopher Anderson, Corina Feuerstein, Craig Sinclair, Daniel Takacs, David Ebbo, David Driver, David Mortenson, Erik Christensen, Erik Olson, Fabio Yeon, Gopala Kakivaya, Gregory Fee, Hany Ramadan, Henry Sanders, Jayanth Rajan, Jeffrey Cooperstein, Jonathan Hawkins, James Hogg, Joe Long, John McConnell, Jesus Ruiz-Scougall, James Miller, Julie Bennett, Krzysztof Cwalina, Lance Olson, Loren Kohnfelder, Michael Magruder, Manish Prabhu, Radu Palanca, Raja Krishnaswamy, Shawn Burke, Sean Trowbridge, Seth Demsey, Shajan Dasan, Stefan Pharies, Suzanne Cook, Tarun Anand, Travis Muhlestein, Yann Christensen, Yung-shin Lin, Ramasamy Krishnaswamy, Joseph Roxe, Alan Boshier, David Bau
-
Publication number: 20050240943Abstract: 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: June 23, 2005Publication date: October 27, 2005Applicant: Microsoft CorporationInventors: Adam Smith, Anthony Moore, Brian LaMacchia, Anders Hejlsberg, Biran Grunkemeyer, Caleb Doise, Christopher Brumme, Christopher Anderson, Corina Feuerstein, Craig Sinclair, Daniel Takacs, David Ebbo, David Driver, David Mortenson, Erik Christensen, Erik Olson, Fabio Yeon, Gopala Kakivaya, George Fee, Hany Ramadan, Henry Sanders, Jayanth Rajan, Jeffrey Cooperstein, Jonathan Hawkins, James Hogg, Joe Long, John McConnell, Jesus Ruiz-Scougall, James Miller, Julie Bennett, Krzysztof Cwalina, Lance Olson, Loren Kohnfelder, Michael Magruder, Manish Prabhu, Radu Palanca, Raja Krishnaswamy, Shawn Burke, Sean Trowbridge, Seth Demsey, Shajan Dasan, Stefan Pharies, Suzanne Cook, Tarun Anand, Travis Muhlestein, Yann Christensen, Yung-shin Lin, Ramasamy Krishnaswamy, Joseph Roxe, Alan Boshier, David Bau
-
Publication number: 20050193369Abstract: Systems and methods provide for the rewriting and transformation of a code unit through an extensible, composable, set of code rewriters that can be implemented at various phases throughout the development, deployment, and execution of the code unit. The described systems and methods provide a powerful way for program developers and system administrators to implement code transformations at different stages throughout the development, deployment, and execution of programs that is largely independent of such programs and does not significantly increase the complexity of the source programs, compilers, or execution environments.Type: ApplicationFiled: February 27, 2004Publication date: September 1, 2005Inventors: Christopher Brumme, Jan Gray, Jonathan Hawkins, Alan Shi, Sean Trowbridge
-
Publication number: 20050188346Abstract: A strategy is described for associating an InternalsVisibleTo (IVT) attribute with a non-public resource of a first assembly. The IVT attribute names a second assembly. By virtue of the IVT attribute, during runtime, the non-public resource in the first assembly is made visible to the second assembly. In addition to naming the second assembly, the IVT attribute can include a number of optional arguments, such as arguments which specify the version, culture, and public key token associated with the second assembly.Type: ApplicationFiled: February 20, 2004Publication date: August 25, 2005Inventors: James Hogg, Christopher Brumme, James Miller, William Evans
-
Publication number: 20050172286Abstract: A host operating in a managed environment intercepts a call from a managed caller to a particular callee and determines whether the call is permissible according to the host's prior configuration of a plurality of callees. The particular callee, which provides access to a resource that the host can be protecting, can have been previously configured by the host to always allow the call to be made, to never allow the call to be made, or to allow the call to be made based upon the degree to which the host trusts the managed caller.Type: ApplicationFiled: February 3, 2004Publication date: August 4, 2005Inventors: Christopher Brumme, Sebastian Lange, Gregory Fee, Michael Gashler, Mahesh Prakriya
-
Publication number: 20050172133Abstract: A host intercepts calls between two executables and determines whether the calls are permissible according to the host's security model which can be identify based, such as user identity based—for instance, mapping access rights within a specific data base user context to database object access. Such an identity security model differs from a common language runtime security model where managed code uses Code Access Security to prevent managed assemblies from performing certain operations. Managed assemblies registered with the host are host objects from the host's perspective for which access rights can be defined via security rules, such as are defined for individual user identities. A host can decide access between managed executables based on the host's identity based access rules by trapping any cross assembly calls and deciding whether such calls should proceed or be blocked from taking place based on the corresponding identity security settings.Type: ApplicationFiled: February 3, 2004Publication date: August 4, 2005Inventors: Christopher Brumme, Vance Morrison, Sebastian Lange, Gregory Fee, Dario Russi, Simon Hall, Mahesh Prakriya, Brian Sullivan
-
Publication number: 20050015753Abstract: Performing validation of a derived virtual method includes receiving program code where the derived virtual method is derived from a virtual method of the program language used to generate the program code, compiling the program code to an intermediate language expression, generating metadata descriptive of the compiled program code, validating the use of the derived virtual method by accessing the metadata, and permitting the use of the derived virtual method if the metadata grants override permissions concerning the virtual method of the programming language. The metadata indicating access and override permissions may be generated while compiling the program code in the common language infrastructure. Alternately, the flag may use pre-existing values indicative of the access and override permissions concerning the virtual method of the programming language.Type: ApplicationFiled: July 18, 2003Publication date: January 20, 2005Inventors: Erik Meijer, Craig Sinclair, James Hogg, Peter Golde, Sergey Lidin, Christopher Brumme