Patents by Inventor Sean Trowbridge
Sean 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: 20200409481Abstract: An electronic device tracks, for a user performing a target acquisition movement within a 3D space, movement parameters of a plurality of input devices of the user. The electronic device predicts, for the user, a region of interest within the 3D space, using a regression model, based on the movement parameters. The region of interest includes a plurality of targets in close proximity. The electronic device predicts an endpoint of the target acquisition movement, within the region of interest, using a pointer facilitation technique. In some embodiments, the plurality of input devices includes an eye tracking input device, each input device corresponds to a predefined input device type, and the movement parameters include gaze data from the eye tracking input device. In some embodiments, input devices includes an eye tracking input device, a head-mounted display, and a hand-held controller, and the user's eye, hand, and head movements are coordinated.Type: ApplicationFiled: September 15, 2020Publication date: December 31, 2020Inventors: Rorik Henrikson, Tovi Samuel Grossman, Sean Trowbridge, Hrvoje Benko, Daniel Wigdor
-
Patent number: 10824247Abstract: An electronic device with a display selects a subset of templates from a library of templates. Each of the templates comprises logged movements of one or more predefined input device types in a 3D space and each template includes one or more movement parameters. The electronic device tracks, for a user, movement parameters of at least one input device of the user. The at least one input device corresponds to one of the predefined input device types. The electronic device compares the tracked movement parameters of the at least one input device of the user to the movement parameters for the subset of the templates selected from the library of templates. The electronic device predicts, based on the comparison, a goal target ray, within the 3D space. In some embodiments, the goal target ray is highlighted or visually emphasized according to the prediction.Type: GrantFiled: September 4, 2019Date of Patent: November 3, 2020Assignee: FACEBOOK TECHNOLOGIES, LLCInventors: Rorik Henrikson, Tovi Grossman, Sean Trowbridge, Hrvoje Benko, Daniel Wigdor
-
Publication number: 20070061787Abstract: 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: ApplicationFiled: September 14, 2005Publication date: March 15, 2007Applicant: Microsoft CorporationInventor: Sean Trowbridge
-
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: 20060288336Abstract: Dependencies among code modules loaded into a particular execution environment may be graphed, charted, or otherwise listed. Thus, when one of the code modules is initialized within one or more isolated execution constructs of the execution environment, other code modules that are graphed, charted, or otherwise listed as having a dependency from the initialized code module are initialized in the same isolated execution constructs.Type: ApplicationFiled: July 25, 2005Publication date: December 21, 2006Applicant: Microsoft CorporationInventors: Sean Trowbridge, Michael Rayhelson
-
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: 20060085482Abstract: 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: ApplicationFiled: October 14, 2004Publication date: April 20, 2006Applicant: Microsoft CorporationInventor: Sean Trowbridge
-
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: 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: 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: 20050102649Abstract: 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: ApplicationFiled: November 12, 2003Publication date: May 12, 2005Inventors: James Hogg, William Evans, Suzanne Cook, Sean Trowbridge
-
Publication number: 20050097399Abstract: A system and method for facilitating cross-process access into a managed code process is useful in an embodiment of the invention for debugging managed code without perturbing the process being accessed or requiring the code under test to be running during debugging. A compiler according to an embodiment of the invention is used to produce mirror code wherein in-process pointers have been replaced with cross-process pointers in order to mirror the address space of the process under test to the address space of the mirror code process. In a further embodiment, the mirror code process is modified not only to allow but also to optimize the cross-process access.Type: ApplicationFiled: November 3, 2003Publication date: May 5, 2005Applicant: Microsoft CorporationInventors: Andrew Bliss, Vance Morrison, Sean Trowbridge
-
Publication number: 20050034109Abstract: 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. 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: ApplicationFiled: July 21, 2004Publication date: February 10, 2005Applicant: Microsoft CorporationInventors: Jennifer Hamilton, Michael Magruder, James Hogg, William Evans, Vance Morrison, Lawrence Sullivan, Sean Trowbridge, Jason Zander, Ian Carmichael, Patrick Dussud, John Hamby, John Rivard, Li Zhang, Mario Chenier, Douglas Rosen, Steven Steiner, Peter Hallam, Brian Crawford, James Miller, Sam Spencer, Habib Heydarian
-
Publication number: 20050028137Abstract: 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: ApplicationFiled: August 25, 2004Publication date: February 3, 2005Applicant: Microsoft CorporationInventors: William Evans, Jennifer Hamilton, Michael Magruder, Vance Morrison, Lawrence Sullivan, Sean Trowbridge, Jason Zander