Patents by Inventor Sean E. Trowbridge
Sean E. Trowbridge 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: 20140195862Abstract: Handing errors in program execution. The method includes identifying a set including a plurality of explicitly identified failure conditions. The method further includes determining that one or more of the explicitly identified failure conditions has occurred. As a result, the method further includes halting a predetermined first execution scope of computing, and notifying another scope of computing of the failure condition. An alternative embodiment may be practiced in a computing environment, and includes a method handing errors. The method includes identifying a set including a plurality of explicitly identified failure conditions. The method further includes determining that an error condition has occurred that is not in the set including a plurality of explicitly identified failure conditions. As a result, the method further includes halting a predetermined first execution scope of computing, and notifying another scope of computing of the failure condition.Type: ApplicationFiled: January 4, 2013Publication date: July 10, 2014Applicant: MICROSOFT CORPORATIONInventors: Martin Taillefer, Jinsong Yu, John J. Duffy, Sean E. Trowbridge, Alexander D. Bromfield
-
Patent number: 8245205Abstract: 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: GrantFiled: November 20, 2009Date of Patent: August 14, 2012Assignee: Microsoft CorporationInventors: Rico Mariani, Christopher W. Brumme, Patrick H. Dussud, Sean E. Trowbridge
-
Patent number: 7941793Abstract: 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: GrantFiled: August 16, 2006Date of Patent: May 10, 2011Assignee: Microsoft CorporationInventors: Gopala Krishna R. Kakivaya, Christopher W. Brumme, James S. Miller, Vance P. Morrison, David S. Mortenson, Sean E. Trowbridge
-
Patent number: 7730464Abstract: The contents of a cache of specialized code interpreted into an intermediate language may be recompiled for execution in a managed execution environment in accordance with an automated process in such a manner to minimize any impact on machine resources.Type: GrantFiled: September 14, 2005Date of Patent: June 1, 2010Assignee: Microsoft CorporationInventor: Sean E. Trowbridge
-
Patent number: 7730468Abstract: A system and method is provided for generating and executing specialized code executables. The system includes a virtual subsystem that processes a generic code image and logs information relating to an operating environment of the virtual subsystem. The logged information is employed as feedback to generate a specialized native executable, wherein the specialized native executable is utilized to provide improved performance of the virtual subsystem. The specialized native executable is selected for execution by the virtual subsystem by matching a current operating environment setting with the logged information.Type: GrantFiled: March 26, 2001Date of Patent: June 1, 2010Inventor: Sean E. Trowbridge
-
Patent number: 7685574Abstract: 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: GrantFiled: September 29, 2004Date of Patent: March 23, 2010Assignee: Microsoft CorporationInventors: Christopher W Brumme, Sean E Trowbridge, Rudi Martin, WeiWen Liu, Brian M. Grunkemeyer, Mahesh Prakriya
-
Patent number: 7685589Abstract: Systems and methods to synchronize file loading operations are described. In one aspect, file loading operations are divided into multiple loading levels. The loading levels are incremental with respect to one another. The loading levels are executed in a sequential order. Each loading level includes operations that are independent and distinct of operations of all other loading levels. The systems and methods load a file to an allowed loading level. The allowed loading level includes operations associated with one or more of the multiple loading levels.Type: GrantFiled: October 14, 2004Date of Patent: March 23, 2010Assignee: Microsoft CorporationInventor: Sean E. Trowbridge
-
Publication number: 20100070957Abstract: 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: November 20, 2009Publication date: March 18, 2010Applicant: MICROSOFT CORPORATIONInventors: Rico Mariani, Christopher W. Brumme, Patrick H. Dussud, Sean E. Trowbridge
-
Patent number: 7665077Abstract: 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: GrantFiled: October 18, 2004Date of Patent: February 16, 2010Assignee: Microsoft CorporationInventors: Rico Mariani, Christopher W. Brumme, Patrick H. Dussud, Sean E. Trowbridge
-
Patent number: 7610579Abstract: 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: GrantFiled: December 10, 2004Date of Patent: October 27, 2009Assignee: Microsoft CorporationInventors: Sean E. Trowbridge, Brian M. Grunkemeyer, Christopher W. Brumme, Mahesh Prakriya, Patrick H. Dussud, Ian H. Carmichael
-
Patent number: 7581231Abstract: An application program interface (API) provides a set of functions for application developers who build Web applications on Microsoft Corporation's .NET™ platform.Type: GrantFiled: February 28, 2002Date of Patent: August 25, 2009Assignee: Microsoft CorporationInventors: 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. Millet, Joseph Roxe, Alan Boshier, Henry L. Sanders, David Bau
-
Patent number: 7571428Abstract: 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: GrantFiled: May 14, 2004Date of Patent: August 4, 2009Assignee: Microsoft CorporationInventors: Rudi Martin, Mahesh Prakriya, Brian M. Grunkemeyer, Christopher W. Brumme, Sean E. Trowbridge, Weiwen Liu
-
Patent number: 7555757Abstract: 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: June 30, 2009Assignee: 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, George D. Fee, Hany E. Ramadan, Henry L. Sanders, II, 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: 20090100435Abstract: Scheduling system resources. A system resource scheduling policy for scheduling operations within a workload is accessed. The policy is specified on a workload basis such that the policy is specific to the workload. System resources are reserved for the workload as specified by the policy. Reservations may be hierarchical in nature where workloads are also hierarchically arranged. Further, dispatching mechanisms for dispatching workloads to system resources may be implemented independent from policies. Feedback regarding system resource use may be used to determine policy selection for controlling dispatch mechanisms.Type: ApplicationFiled: October 11, 2007Publication date: April 16, 2009Applicant: MICROSOFT CORPORATIONInventors: Efstathios Papaefstathiou, Sean E. Trowbridge, Eric Dean Tribble, Stanislav A. Oks
-
Patent number: 7516441Abstract: A system and method of providing edit and continue support in a software program debugging environment. “Edit and continue” support allows a user (e.g., programmer and/or developer) to update the code and/or data structure(s) of an executing program while it is running. After the user has finished editing their code and resumes execution, an integrated development environment (IDE) propagates the edit(s) into a common language runtime (CLR) environment before continuing. Therefore, from the CLR environment's perspective, an edit is a block of intermediate language code (IL) and/or metadata that is inserted into a running process. Moreover, The IDE can facilitate: determining “legality” of an edit; building the edit; sending the edit to the CLR environment; and/or, facilitating the CLR environment switch execution to the edited code.Type: GrantFiled: July 21, 2004Date of Patent: April 7, 2009Assignee: Microsoft CorporationInventors: Jennifer A Hamilton, Michael M Magruder, James H Hogg, William G Evans, Vance P Morrison, Lawrence B Sullivan, Sean E Trowbridge, Jason L Zander, Ian H Carmichael, Patrick H Dussud, John L Hamby, John J Rivard, Li Zhang, Mario Chenier, Douglas Rosen, Steven J Steiner, Peter A Hallam, Brian R Crawford, James S Miller, Sam Spencer, Habib Heydarian
-
Patent number: 7487498Abstract: A strategy is described for assisting a supplier in updating code without negatively impacting preexisting applications that may interact with the original or updated code. In this strategy, a resource is transferred from a first code module to a second code module. So that the applications that utilize the resource can continue to access this resource, the strategy adds forwarding information to a new version of the first code module. The forwarding information provides a note which shows the Common Language Runtime (CLR) where to find the specified resource when the code modules are executed.Type: GrantFiled: November 12, 2003Date of Patent: February 3, 2009Assignee: Microsoft CorporationInventors: James H. Hogg, William G. Evans, Suzanne M. Cook, Sean E. Trowbridge
-
Patent number: 7487380Abstract: 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: GrantFiled: October 14, 2004Date of Patent: February 3, 2009Assignee: Microsoft CorporationInventors: Christopher W Brumme, WeiWen Liu, Mahesh Prakriya, Sean E Trowbridge, Ian H Carmichael, Patrick H Dussud, Brian M Grunkemeyer
-
Patent number: 7418718Abstract: Systems and methods for enhanced runtime hosting are described. In one aspect the runtime hosting interface includes a host abstraction interface. The HAI allowing the runtime to configure host execution environment parameters and/or notify the host of a runtime event. In particular, the host abstraction interface (HAI) corresponds to execution environment abstractions supported by a host application. Responsive to an action or event, the runtime invokes an identified HAI or an associated object during execution of runtime managed code.Type: GrantFiled: February 3, 2004Date of Patent: August 26, 2008Assignee: Microsoft CorporationInventors: Weiwen Liu, Steven J. Pratschner, Ian H. Carmichael, Peter A. Carlin, Christopher W. Brumme, Mason K. Bendixen, Beysim Sezgin, Sean E. Trowbridge, Christopher James Brown, Mei-Chin Tsai, Mahesh Prakriya, Raja Krishnaswamy, Alan C. Shi, Suzanne Maurine Cook
-
Patent number: 7409675Abstract: 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: GrantFiled: February 27, 2004Date of Patent: August 5, 2008Assignee: Microsoft CorporationInventors: Christopher W. Brumme, Jan Gray, Jonathan C. Hawkins, Alan C. Shi, Sean E. Trowbridge
-
Patent number: 7367015Abstract: A method and system are disclosed for editing a software program in a common language runtime environment, wherein the software program has a source code component, an intermediate language component, and a native code component. The method comprises executing a first portion of the native code component, suspending execution of the native code component at a first point, and allowing a user to edit the source code component to create an edited source code component. The edited source code component is compiled using a source compiler to create an edited intermediate language component, and the edited intermediate language component is compiled using an intermediate language compiler to create an edited native code component. The edited native code component is then executed beginning at the point where execution was previously suspended.Type: GrantFiled: August 25, 2004Date of Patent: April 29, 2008Assignee: Microsoft CorporationInventors: William G. Evans, Jennifer A Hamilton, Michael M Magruder, Vance P Morrison, Lawrence B Sullivan, Sean E Trowbridge, Jason L Zander