Patents by Inventor Andrew Rogers
Andrew Rogers 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: 20130318136Abstract: Directories in a file system are defined with a dummy cluster in a file allocation table as the initial entry. Subsequent clusters in a directory's definition may define any data for the directory that can be changed in a transaction-safe mode. A directory may be modified in a transaction-safe mode by modifying any of the subsequent clusters while tracking changes in a second file allocation table. When the changes have been made to the directory, a pointer to the second file allocation table may be switched to indicate that the second file allocation table is now last known good. The first file allocation table may then be synchronized with the second.Type: ApplicationFiled: July 29, 2013Publication date: November 28, 2013Applicant: MICROSOFT CORPORATIONInventors: Sachin Patel, Yadhu Gopalan, Andrew Rogers
-
Patent number: 8499013Abstract: Directories in a file system are defined with a dummy cluster in a file allocation table as the initial entry. Subsequent clusters in a directory's definition may define any data for the directory that can be changed in a transaction-safe mode. A directory may be modified in a transaction-safe mode by modifying any of the subsequent clusters while tracking changes in a second file allocation table. When the changes have been made to the directory, a pointer to the second file allocation table may be switched to indicate that the second file allocation table is now last known good. The first file allocation table may then be synchronized with the second.Type: GrantFiled: September 19, 2011Date of Patent: July 30, 2013Assignee: Microsoft CorporationInventors: Sachin Patel, Yadhu Gopalan, Andrew Rogers
-
Patent number: 8397290Abstract: Embodiments provide a security infrastructure that may be configured to run on top of an existing operating system to control what resources can be accessed by an applications and what APIs an application can call. Security decisions are made by taking into account both the current thread's identity and the current thread's call chain context to enable minimal privilege by default. The current thread context is captured and a copy of it is created to be used to perform security checks asynchronously. Every thread in the system has an associated identity. To obtain access to a particular resource, all the callers on the current thread are analyzed to make sure that each caller and thread has access to that resource. Only when each caller and thread has access to that resource is the caller given access to that resource.Type: GrantFiled: June 27, 2008Date of Patent: March 12, 2013Assignee: Microsoft CorporationInventors: Neil Laurence Coles, Scott Randall Shell, Upender Reddy Sandadi, Angelo Renato Vals, Matthew G. Lyons, Christopher Ross Jordan, Andrew Rogers, Yadhu Gopalan, Bor-Ming Hsieh
-
Publication number: 20130013856Abstract: Various flash management techniques may be described. An apparatus may comprise a processor, a flash memory coupled to the processor, and a flash management module. The flash management module may be executed by the processor to receive a write request to write data to the flash memory, write a first control sector with a sequence number to the flash memory, and write the sequence number, an address for a logical sector, and data to at least one physical sector corresponding to the logical sector of the flash memory. Other embodiments are described and claimed.Type: ApplicationFiled: September 14, 2012Publication date: January 10, 2013Applicant: MICROSOFT CORPORATIONInventors: Andrew Rogers, Sachin C. Patel, Yadhu N. Gopalan
-
Patent number: 8307148Abstract: Various flash management techniques may be described. An apparatus may comprise a processor, a flash memory coupled to the processor, and a flash management module. The flash management module may be executed by the processor to receive a write request to write data to the flash memory, write a first control sector with a sequence number to the flash memory, and write the sequence number, an address for a logical sector, and data to at least one physical sector corresponding to the logical sector of the flash memory. Other embodiments are described and claimed.Type: GrantFiled: June 23, 2006Date of Patent: November 6, 2012Assignee: Microsoft CorporationInventors: Andrew Rogers, Sachin C. Patel, Yadhu N. Gopalan
-
Publication number: 20120011179Abstract: Directories in a file system are defined with a dummy cluster in a file allocation table as the initial entry. Subsequent clusters in a directory's definition may define any data for the directory that can be changed in a transaction-safe mode. A directory may be modified in a transaction-safe mode by modifying any of the subsequent clusters while tracking changes in a second file allocation table. When the changes have been made to the directory, a pointer to the second file allocation table may be switched to indicate that the second file allocation table is now last known good. The first file allocation table may then be synchronized with the second.Type: ApplicationFiled: September 19, 2011Publication date: January 12, 2012Applicant: MICROSOFT CORPORATIONInventors: Sachin Patel, Yadhu Gopalan, Andrew Rogers
-
Publication number: 20110302142Abstract: A transaction safe file system uses two sets of file allocation tables and bitmap images to perform file modifications on one of the sets while the other set remains a last known good set. After a modification is complete, a pointer is changed to the newly modified set, and the newly modified set becomes the last known good set. The sets are then synchronized. The file allocation table is used to define cluster chains while the bitmap image is used to determine if a cluster is free or not. In some operations, only the bitmap image may need to be manipulated. The file system may be used in a transaction safe mode as well as a non-transaction safe mode.Type: ApplicationFiled: August 15, 2011Publication date: December 8, 2011Applicant: MICROSOFT CORPORATIONInventors: Sachin Patel, Yadhu Gopalan, Andrew Rogers
-
Patent number: 8024383Abstract: Directories in a file system are defined with a dummy cluster in a file allocation table as the initial entry. Subsequent clusters in a directory's definition may define any data for the directory that can be changed in a transaction-safe mode. A directory may be modified in a transaction-safe mode by modifying any of the subsequent clusters while tracking changes in a second file allocation table. When the changes have been made to the directory, a pointer to the second file allocation table may be switched to indicate that the second file allocation table is now last known good. The first file allocation table may then be synchronized with the second.Type: GrantFiled: November 2, 2009Date of Patent: September 20, 2011Assignee: Mircrosoft CorporationInventors: Sachin Patel, Yadhu Gopalan, Andrew Rogers
-
Patent number: 8001165Abstract: A transaction safe file system uses two sets of file allocation tables and bitmap images to perform file modifications on one of the sets while the other set remains a last known good set. After a modification is complete, a pointer is changed to the newly modified set, and the newly modified set becomes the last known good set. The sets are then synchronized. The file allocation table is used to define cluster chains while the bitmap image is used to determine if a cluster is free or not. In some operations, only the bitmap image may need to be manipulated. The file system may be used in a transaction safe mode as well as a non-transaction safe mode.Type: GrantFiled: May 6, 2010Date of Patent: August 16, 2011Assignee: Microsoft CorporationInventors: Sachin Patel, Yadhu Gopalan, Andrew Rogers
-
Patent number: 7930760Abstract: This disclosure describes techniques of using a centralized rule database to control the abilities of software processes to perform actions with regard to resources provided by a computer. As described herein, each software process executing in a computer executes within a chamber and each resource provided by the computer is associated with a canonical name that uniquely identifies the resource. Furthermore, the computer stores a set of security rules in a centralized rule database. In addition, this disclosure describes techniques of enforcing the rules stored in the centralized rule database.Type: GrantFiled: June 27, 2008Date of Patent: April 19, 2011Assignee: Microsoft CorporationInventors: Neil Coles, Yadhu Gopalan, Christopher Jordan, Matthew Lyons, Andrew Rogers, Upender Sandadi, Scott Shell, Zoheb Vacheri, Angelo Vals, Sharath Viswanathan, Loren M. Kohnfelder
-
Publication number: 20100217788Abstract: A transaction safe file system uses two sets of file allocation tables and bitmap images to perform file modifications on one of the sets while the other set remains a last known good set. After a modification is complete, a pointer is changed to the newly modified set, and the newly modified set becomes the last known good set. The sets are then synchronized. The file allocation table is used to define cluster chains while the bitmap image is used to determine if a cluster is free or not. In some operations, only the bitmap image may need to be manipulated. The file system may be used in a transaction safe mode as well as a non-transaction safe mode.Type: ApplicationFiled: May 6, 2010Publication date: August 26, 2010Applicant: MICROSOFT CORPORATIONInventors: Sachin Patel, Yadhu Gopalan, Andrew Rogers
-
Patent number: 7747664Abstract: A transaction safe file system uses two sets of file allocation tables and bitmap images to perform file modifications on one of the sets while the other set remains a last known good set. After a modification is complete, a pointer is changed to the newly modified set, and the newly modified set becomes the last known good set. The sets are then synchronized. The file allocation table is used to define cluster chains while the bitmap image is used to determine if a cluster is free or not. In some operations, only the bitmap image may need to be manipulated. The file system may be used in a transaction safe mode as well as a non-transaction safe mode.Type: GrantFiled: January 16, 2007Date of Patent: June 29, 2010Assignee: Microsoft CorporationInventors: Sachin Patel, Yadhu Gopalan, Andrew Rogers
-
Patent number: 7734714Abstract: A method, apparatus, and system is described for creating a spatial sieve tree which stores, manages, and manipulates multidimensional data by partitioning the bounds of the nodes of the tree, creating child nodes which each have defined bounds associated with a partitioned portion of their parent node(s) and may be further partitioned into additional levels of child nodes, and determining which level of the tree has the smallest size node in which a data object could wholly fit regardless of the data object's location in coordinate space and the one or more nodes of that determined level that could at least partially contain the data object based on the bounds of the one or more nodes and the data object's location in coordinate space.Type: GrantFiled: January 11, 2008Date of Patent: June 8, 2010Assignee: SpaceCurve, Inc.Inventor: J. Andrew Rogers
-
Patent number: 7711923Abstract: Flash memory is accessed via mapping tables comprising a master mapping table and at least one secondary mapping table. The master mapping table contains indexes to the secondary mapping tables. The secondary mapping tables contain indexes to locations in the flash memory. The mapping tables are maintained in the flash memory. Upon initialization subsequent a safe power shutdown, the master mapping table is cached and secondary mapping tables are cached as needed. Upon initialization subsequent an unsafe power shutdown, the mapping tables are constructed in accordance with a multiple-phase process. In an example embodiment, the multiple-phase process comprises locating all the secondary mapping tables stored in the flash memory, determining which secondary mapping tables are valid, determining which secondary mapping tables are invalid, determining which sectors of the flash memory are free, and constructing the master mapping table and the secondary mapping tables from this information.Type: GrantFiled: June 23, 2006Date of Patent: May 4, 2010Assignee: Microsoft CorporationInventors: Andrew Rogers, Sachin C. Patel, Yadhu N. Gopalan
-
Publication number: 20100049776Abstract: Directories in a file system are defined with a dummy cluster in a file allocation table as the initial entry. Subsequent clusters in a directory's definition may define any data for the directory that can be changed in a transaction-safe mode. A directory may be modified in a transaction-safe mode by modifying any of the subsequent clusters while tracking changes in a second file allocation table. When the changes have been made to the directory, a pointer to the second file allocation table may be switched to indicate that the second file allocation table is now last known good. The first file allocation table may then be synchronized with the second.Type: ApplicationFiled: November 2, 2009Publication date: February 25, 2010Applicant: MICROSOFT CORPORATIONInventors: Sachin Patel, Yadhu Gopalan, Andrew Rogers
-
Patent number: 7650458Abstract: Various flash management techniques may be described. An apparatus may comprise a processor, a flash memory coupled to the processor, and a flash management module. The flash management module may be executed by the processor to receive a write transaction request to write data to a flash memory, and write the data to a set of multiple discontiguous logical sectors corresponding to a set of physical sectors of the flash memory in a single atomic operation. Other embodiments are described and claimed.Type: GrantFiled: June 23, 2006Date of Patent: January 19, 2010Assignee: Microsoft CorporationInventors: Andrew Rogers, Sachin C. Patel, Yadhu N. Gopalan
-
Patent number: 7643658Abstract: A display arrangement comprises an image display device having a first camera directed towards positions adopted by users viewing the display; one or more further cameras directed towards other respective locations; a face detector for detecting human faces in images captured by the cameras; and means for detecting those faces which appear in images captured by both the first camera and at least one of the further cameras.Type: GrantFiled: January 21, 2005Date of Patent: January 5, 2010Assignee: Sony United Kingdom LimitedInventors: Andrew Roger Kilner, Victoria Sophia Jennings, Sebastian Aleksander Paszkowicz, Robert Mark Stefan Porter, Ratna Rambaruth, Clive Henry Gillard
-
Publication number: 20090328180Abstract: Embodiments provide a security infrastructure that may be configured to run on top of an existing operating system to control what resources can be accessed by an applications and what APIs an application can call. Security decisions are made by taking into account both the current thread's identity and the current thread's call chain context to enable minimal privilege by default. The current thread context is captured and a copy of it is created to be used to perform security checks asynchronously. Every thread in the system has an associated identity. To obtain access to a particular resource, all the callers on the current thread are analyzed to make sure that each caller and thread has access to that resource. Only when each caller and thread has access to that resource is the caller given access to that resource.Type: ApplicationFiled: June 27, 2008Publication date: December 31, 2009Applicant: Microsoft CorporationInventors: Neil Laurence Coles, Scott Randall Shell, Upender Sandadi, Angelo Renato Vals, Matthew G. Lyons, Christopher Ross Jordan, Andrew Rogers, Yadhu Gopalan, Bor-Ming Hsieh
-
Patent number: 7636456Abstract: A display arrangement comprises an image display device having two or more sets of images for display; a camera directed towards positions adopted by users viewing the display; a face detector for detecting human faces in images captured by the camera, the face detector being arranged to detect faces in at least two face categories; and means, responsive to the a frequency of detection of categories of faces by the face detector at one or more different periods, for selecting a set of images to be displayed on the image display device at that time of day.Type: GrantFiled: January 21, 2005Date of Patent: December 22, 2009Assignee: Sony United Kingdom LimitedInventors: Andrew Collins, Andrew Roger Kilner, Victoria Sophia Jennings, Sebastian Aleksander Paszkowicz, Eric Rudolf Siereveld, Stephane Daniel Andre Charles Labrousse, Robert Mark Stefan Porter, Ratna Rambaruth, Clive Henry Gillard
-
Patent number: 7613738Abstract: Directories in a file system are defined with a dummy cluster in a file allocation table as the initial entry. Subsequent clusters in a directory's definition may define any data for the directory that can be changed in a transaction-safe mode. A directory may be modified in a transaction-safe mode by modifying any of the subsequent clusters while tracking changes in a second file allocation table. When the changes have been made to the directory, a pointer to the second file allocation table may be switched to indicate that the second file allocation table is now last known good. The first file allocation table may then be synchronized with the second.Type: GrantFiled: January 16, 2007Date of Patent: November 3, 2009Assignee: Microsoft CorporationInventors: Sachin Patel, Yadhu Gopalan, Andrew Rogers