Patents by Inventor Gregory Miskelly
Gregory Miskelly 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: 11714613Abstract: Embodiments automate surfacing of underutilized development tool features, thereby enhancing the discoverability of subtools, commands, shortcuts, settings, visualizers, and other tool features. After spotting an inefficiency in the user's interaction with one or more tools, the feature surfacing functionality offers the user an interaction optimization suggestion. A mapping structure correlates detected interaction patterns with objectively better interaction optimizations. Several examples of mappings are discussed. The user can accept a suggestion, have the suggested optimization applied by an enhanced tool, and thereby reduce the number of user gestures utilized to accomplish a desired result, reduce the number of tools utilized, increase security, reduce risk of error, or get to the desired result faster, for example. Interaction optimizations also help the user stay focused, by reducing or avoiding departures from the user's current primary workflow.Type: GrantFiled: November 7, 2021Date of Patent: August 1, 2023Assignee: Microsoft Technology Licensing, LLCInventors: Peter Groenewegen, Arjun Radhakrishna, Gustavo Araujo Soares, Mark Alistair Wilson-Thomas, Piyush Arora, Aaron Chak Hei Yim, David Ellis Pugh, German David Obando Chacon, Andrew Richard Sterland, Gregory Miskelly
-
Publication number: 20230141807Abstract: Embodiments automate surfacing of underutilized development tool features, thereby enhancing the discoverability of subtools, commands, shortcuts, settings, visualizers, and other tool features. After spotting an inefficiency in the user’s interaction with one or more tools, the feature surfacing functionality offers the user an interaction optimization suggestion. A mapping structure correlates detected interaction patterns with objectively better interaction optimizations. Several examples of mappings are discussed. The user can accept a suggestion, have the suggested optimization applied by an enhanced tool, and thereby reduce the number of user gestures utilized to accomplish a desired result, reduce the number of tools utilized, increase security, reduce risk of error, or get to the desired result faster, for example. Interaction optimizations also help the user stay focused, by reducing or avoiding departures from the user’s current primary workflow.Type: ApplicationFiled: November 7, 2021Publication date: May 11, 2023Inventors: Peter GROENEWEGEN, Arjun RADHAKRISHNA, Gustavo ARAUJO SOARES, Mark Alistair WILSON-THOMAS, Piyush ARORA, Aaron Chak Hei YIM, David Ellis PUGH, German David OBANDO CHACON, Andrew Richard STERLAND, Gregory MISKELLY
-
Patent number: 11392482Abstract: To set data breakpoints on properties and certain other functions, constituent data locations (CDLs) that can contribute to computation of the property value or other function result are identified, and respective constituent data breakpoints are added at one or more CDLs by data breakpoint adder code. Each constituent data breakpoint will suspend execution of an inspectable software in response to occurrence of a CDL data entry. The CDLs are identified by CDL identifier code using static data flow analysis, enhanced interpretation, or disassembly, with recursion as appropriate. Kernel or runtime routines, and other routines designated as known, can be excluded from the CDL search. Data locations marked read-only, or that are effectively read-only because they will not be written, can also be excluded.Type: GrantFiled: January 3, 2019Date of Patent: July 19, 2022Assignee: Microsoft Technology Licensing, LLCInventors: Charles Joseph Ries, Patrick Nelson, Cagri Aslan, Gregory Miskelly, Isadora Sophia Garcia Rodopoulos
-
Publication number: 20200218639Abstract: To set data breakpoints on properties and certain other functions, constituent data locations (CDLs) that can contribute to computation of the property value or other function result are identified, and respective constituent data breakpoints are added at one or more CDLs by data breakpoint adder code. Each constituent data breakpoint will suspend execution of an inspectable software in response to occurrence of a CDL data entry. The CDLs are identified by CDL identifier code using static data flow analysis, enhanced interpretation, or disassembly, with recursion as appropriate. Kernel or runtime routines, and other routines designated as known, can be excluded from the CDL search. Data locations marked read-only, or that are effectively read-only because they will not be written, can also be excluded.Type: ApplicationFiled: January 3, 2019Publication date: July 9, 2020Inventors: Charles Joseph RIES, Patrick NELSON, Cagri ASLAN, Gregory MISKELLY, Isadora Sophia GARCIA RODOPOULOS
-
Patent number: 9772925Abstract: Debugging without reliance on source code includes obtaining a disassembly of a portion of an executable code. The disassembly includes a sequence of assembly instructions including an instruction Y at which an exception or other event of interest occurred and at least five assembly instructions that precede Y. An assembly instruction X is located for which a mapping is known between a storage location accessed in instruction X and a symbolic name SYM_X for that storage location, where data flow and/or control flow leads from instruction X to instruction Y. A symbolic name SYM_Y that pertains to instruction Y is built from SYM_X while interpreting the assembly instructions between X and Y, and SYM_Y is reported to the user. Some variations include tools and techniques for locating the instruction X, and tools and techniques for determining a flow relationship between instruction X and instruction Y.Type: GrantFiled: October 26, 2015Date of Patent: September 26, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Gregory Miskelly, Maciej Piotr Foks
-
Patent number: 9703681Abstract: Assistance is given to aid in optimizing a program's performance during initial development while the program's features are still being implemented and/or debugged, without interfering with that development, by providing easy-to-ignore yet accurate tips about a program's performance inside a debugger. Raw performance information for a software program which is being debugged in a debugger is adjusted by removing from it a measured debug overhead or other diagnostic overhead. Some factors considered when measuring overhead include pauses, context switches, debug versus release build presence, bounds checking, funceval, and call stack analyses. The debugger is enhanced to display the adjusted program performance measure in a graphical user interface, next to the corresponding source code. The enhanced debugger updates the adjusted program performance measure value and keeps its screen location current as the developer moves through the source code, providing more detailed performance information upon request.Type: GrantFiled: July 28, 2014Date of Patent: July 11, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Daniel Joshua Taylor, Andrew Brian Hall, Karl Melder, Daniel Demetris George Moth, Zhaoqing Wu, Oleg Izmerly, Gregory Miskelly, Jackson Michael Davis
-
Publication number: 20170116108Abstract: Debugging without reliance on source code includes obtaining a disassembly of a portion of an executable code. The disassembly includes a sequence of assembly instructions including an instruction Y at which an exception or other event of interest occurred and at least five assembly instructions that precede Y. An assembly instruction X is located for which a mapping is known between a storage location accessed in instruction X and a symbolic name SYM_X for that storage location, where data flow and/or control flow leads from instruction X to instruction Y. A symbolic name SYM_Y that pertains to instruction Y is built from SYM_X while interpreting the assembly instructions between X and Y, and SYM_Y is reported to the user. Some variations include tools and techniques for locating the instruction X, and tools and techniques for determining a flow relationship between instruction X and instruction Y.Type: ApplicationFiled: October 26, 2015Publication date: April 27, 2017Inventors: Gregory MISKELLY, Maciej Piotr FOKS
-
Publication number: 20150347274Abstract: Assistance is given to aid in optimizing a program's performance during initial development while the program's features are still being implemented and/or debugged, without interfering with that development, by providing easy-to-ignore yet accurate tips about a program's performance inside a debugger. Raw performance information for a software program which is being debugged in a debugger is adjusted by removing from it a measured debug overhead or other diagnostic overhead. Some factors considered when measuring overhead include pauses, context switches, debug versus release build presence, bounds checking, funceval, and call stack analyses. The debugger is enhanced to display the adjusted program performance measure in a graphical user interface, next to the corresponding source code. The enhanced debugger updates the adjusted program performance measure value and keeps its screen location current as the developer moves through the source code, providing more detailed performance information upon request.Type: ApplicationFiled: July 28, 2014Publication date: December 3, 2015Inventors: Daniel Joshua Taylor, Andrew Brian Hall, Karl Melder, Daniel Demetris George MOTH, Zhaoqing Wu, Oleg Izmerly, Gregory Miskelly, Jackson Michael Davis