Patents by Inventor Alan G. Bishop
Alan G. Bishop 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: 8572375Abstract: In a computing device, both an address of a first device and a secret are graphically encoded to generate one or more images that can be captured by a second device. The second device captures and decodes the one or more images, and sends a communication initiation request to the address of the first device. The communication initiation request includes the address of the second device and identifies the secret. Communication between the first and second device continues only if the first device verifies, based on the communication initiation request, that the second device knows the secret.Type: GrantFiled: September 23, 2009Date of Patent: October 29, 2013Assignee: Microsoft CorporationInventors: Alan G. Bishop, Eric R. Soldan
-
Patent number: 8073673Abstract: A first software program executing on a computing device emulates a second computing device executing a software program using emulated memory. The first software program permits the second software program to perform an operation on a contiguous portion of the emulated memory only when a pointer and a table entry both contain the same identifier, thus protecting against common types of memory usage errors in the second software program. The pointer has an address to the contiguous portion. The table entry maps to the contiguous portion. A plurality of table entries map to a respective plurality of contiguous portion of the emulated memory. A plurality of the pointers each contain the address to a respective contiguous portion of the emulated memory as well as containing an identifier corresponding to the respective contiguous portion of the emulated memory. The second computing device can be high or low in resources.Type: GrantFiled: April 16, 2008Date of Patent: December 6, 2011Assignee: Microsoft CorporationInventors: Alan G. Bishop, Martin Taillefer, Landon M Dyer
-
Publication number: 20110072263Abstract: In a computing device, both an address of a first device and a secret are graphically encoded to generate one or more images that can be captured by a second device. The second device captures and decodes the one or more images, and sends a communication initiation request to the address of the first device. The communication initiation request includes the address of the second device and identifies the secret. Communication between the first and second device continues only if the first device verifies, based on the communication initiation request, that the second device knows the secret.Type: ApplicationFiled: September 23, 2009Publication date: March 24, 2011Applicant: MICROSOFT CORPORATIONInventors: Alan G. Bishop, Eric R. Soldan
-
Publication number: 20080215305Abstract: A first software program executing on a computing device emulates a second computing device executing a software program using emulated memory. The first software program permits the second software program to perform an operation on a contiguous portion of the emulated memory only when a pointer and a table entry both contain the same identifier, thus protecting against common types of memory usage errors in the second software program. The pointer has an address to the contiguous portion. The table entry maps to the contiguous portion. A plurality of table entries map to a respective plurality of contiguous portion of the emulated memory. A plurality of the pointers each contain the address to a respective contiguous portion of the emulated memory as well as containing an identifier corresponding to the respective contiguous portion of the emulated memory. The second computing device can be high or low in resources.Type: ApplicationFiled: April 16, 2008Publication date: September 4, 2008Applicant: Microsoft CorporationInventors: Alan G. Bishop, Landon Dyer, Martin Taillefer
-
Patent number: 7403887Abstract: A first software program executing on a computing device emulates a second computing device executing a software program using emulated memory. The first software program permits the second software program to perform an operation on a contiguous portion of the emulated memory only when a pointer and a table entry both contain the same identifier, thus protecting against common types of memory usage errors in the second software program. The pointer has an address to the contiguous portion. The table entry maps to the contiguous portion. A plurality of table entries map to a respective plurality of contiguous portions of the emulated memory. A plurality of the pointers each contain the address to a respective contiguous portion of the emulated memory as well as containing an identifier corresponding to the respective contiguous portion of the emulated memory. The second computing device can be high or low in resources.Type: GrantFiled: January 14, 2004Date of Patent: July 22, 2008Assignee: Microsoft CorporationInventors: Alan G. Bishop, Landon Dyer, Martin Taillefer
-
Publication number: 20040078807Abstract: Described herein is a technology for electronic program guides and multimedia presentation devices. One implementation, described herein, provides a unified access to multiple electronic program guides (EPGs) from multiple programming and guide data sources (e.g., local broadcast, satellite broadcast, DVR, VoD, etc.). With this implementation, multiple EPGs from a variety of sources are presented in a single common user interface (UI). Therefore, the television viewer may search/browse the EPG of all sources concurrently. The scope of the exemplary e-commerce facilitation is pointed out in the appending claims.Type: ApplicationFiled: June 27, 2002Publication date: April 22, 2004Inventors: Robert M. Fries, Alan G. Bishop, Jonathan A. Wray
-
Patent number: 6614804Abstract: The invention involves transmission download of data to plural, mass storage medium-based remote users of content or software upgrades or multiple versions. Optionally provided are pre-download scheduling of one or more future download sessions and post-download remote scripted software execution by the remote clients. For purposes of more efficient use of the transmission link, low-volume scheduling information or content are transmitted within designated narrow-bandwidth sub-channels or trickle streams allocated within the broad bandwidth of the transmission channel and such allocation may be dynamic to vary the allocation based upon relative high-volume, high-speed and low-volume, low-speed demands. The invention is implemented in software residing primarily in the server computer connected with the transmission provider.Type: GrantFiled: March 22, 1999Date of Patent: September 2, 2003Assignee: WEBTV Networks, Inc.Inventors: Andrew T. McFadden, Mark Wagner, Wei Huang, Dean J. Blackketter, Michael A. Killianey, Alan G. Bishop
-
Patent number: 6532517Abstract: The invention involves storing data on a storage medium without fragmentation. A data conveyance system configures data for delivery to a data storage system and associates a storage instruction with the data. The storage instruction instructs the data storage system to store the data without fragmentation. The data conveyance system then conveys the data and the storage instruction to the data storage system. The data storage system receives the conveyance and a controller reads the storage instruction. The controller stores the data in contiguous storage locations on the storage medium in accordance with the storage instruction. If the storage medium is a disk, the data conveyance system may configure the data for delivery to the data storage system by generating a filesystem and combining the data and the filesystem to form a partition file.Type: GrantFiled: April 13, 1999Date of Patent: March 11, 2003Assignee: WebTV Networks, Inc.Inventors: Mark Wagner, Alan G. Bishop, Dean J. Blackketter
-
Patent number: 5935242Abstract: A system is provided for rebooting a computer having a volatile memory device capable of storing operating information. The system reboots the computer using the operating information stored in the memory device if the memory device contains a valid copy of the operating information. The computer reboots the computer by reloading the operating information into the memory device if the memory device does not contain a valid copy of the operating information. The system determines whether the memory device contains a valid copy of the operating information by calculating a checksum for the operating information stored in the memory device and compares the checksum to a previously calculated checksum.Type: GrantFiled: October 28, 1996Date of Patent: August 10, 1999Assignee: Sun Microsystems, Inc.Inventors: Peter W. Madany, Graham Hamilton, Alan G. Bishop
-
Patent number: 5835958Abstract: A method, apparatus, and software for efficiently allocating discontiguous stack space without requiring compiler changes are described. In one aspect, a method is provided for executing a compiled function that is located in a first computer memory stack chunk such that additional memory is allocated efficiently if a determination is made that such additional memory is necessary for execution of the compiled function. In one embodiment, the method includes calling a stack checking function that includes the compiled function. A determination is made if additional memory is required for executing the compiled function. If no additional memory is required, then the compiled function is called and executed. However, if additional memory is necessary, then additional memory is allocated that is discontiguous with the original memory stack.Type: GrantFiled: October 29, 1996Date of Patent: November 10, 1998Assignee: Sun Microsystems, Inc.Inventors: Dean R. E. Long, Alan G. Bishop, Nedim Fresko
-
Patent number: 5765174Abstract: A distributed object oriented computer system that has two classes of object references: strong references and weak references. Weak references (or pointers) allow users to refer to an object, but does not prevent the object manager from deleting the object. A weak object reference can be converted into a strong object reference by execution of a "MakeStrong" operation, which generates a strong reference, and then deleting the weak reference. A strong object reference can be converted into a weak object reference by execution of a "MakeWeak" operation, which returns a weak reference to the object referred to in the operation's argument, and then deleting the strong reference. When an object no longer has any outstanding strong object references, deletion of the object is enabled. In another aspect of the invention, a portion of the computer's memory is set aside for a primary linker cache and a secondary linker image cache.Type: GrantFiled: October 6, 1995Date of Patent: June 9, 1998Assignee: Sun Microsystems, Inc.Inventor: Alan G. Bishop