Patents by Inventor Benjamin C. Trumbull

Benjamin C. Trumbull 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: 10977172
    Abstract: Techniques are disclosed relating to virtual memory page reclamation policies. In some embodiments, an operating system of a computing device implements, during a first operating mode, a first page reclamation policy for pages corresponding to user processes and non-user processes. The computing device may then enter a second operating mode upon detecting some indication of user inactivity. The operating system may then implement, during the second operating mode, a second page reclamation policy for pages corresponding to user processes and non-user processes, where the second page reclamation policy prioritizes, relative to the first page reclamation policy, eviction of pages corresponding to non-user processes.
    Type: Grant
    Filed: September 29, 2018
    Date of Patent: April 13, 2021
    Assignee: Apple Inc.
    Inventors: Lionel D. Desai, Benjamin C. Trumbull
  • Patent number: 10649889
    Abstract: According to one embodiment, it is determined whether data stored in a compressor pool exceeds a first predetermined threshold, the compressor pool being a fixed-size memory pool maintained in a kernel of an operating system. The compressor pool stores a plurality of compressed memory pages, each memory page storing compressed data pages that can be paged out to or paged in from a persistent storage device. The compressed memory pages are associated with a plurality of processes. A memory consumption reduction action is performed to reduce memory usage, including terminating at least one of the processes to reclaim a memory space occupied by the process, in response to determining that the data stored in the compressor pool exceeds the first predetermined threshold.
    Type: Grant
    Filed: June 1, 2018
    Date of Patent: May 12, 2020
    Assignee: Apple Inc.
    Inventors: Lionel D. Desai, Russell A. Blaine, Benjamin C. Trumbull
  • Publication number: 20190370171
    Abstract: Techniques are disclosed relating to virtual memory page reclamation policies. In some embodiments, an operating system of a computing device implements, during a first operating mode, a first page reclamation policy for pages corresponding to user processes and non-user processes. The computing device may then enter a second operating mode upon detecting some indication of user inactivity. The operating system may then implement, during the second operating mode, a second page reclamation policy for pages corresponding to user processes and non-user processes, where the second page reclamation policy prioritizes, relative to the first page reclamation policy, eviction of pages corresponding to non-user processes.
    Type: Application
    Filed: September 29, 2018
    Publication date: December 5, 2019
    Inventors: Lionel D. Desai, Benjamin C. Trumbull
  • Publication number: 20180349261
    Abstract: According to one embodiment, it is determined whether data stored in a compressor pool exceeds a first predetermined threshold, the compressor pool being a fixed-size memory pool maintained in a kernel of an operating system. The compressor pool stores a plurality of compressed memory pages, each memory page storing compressed data pages that can be paged out to or paged in from a persistent storage device. The compressed memory pages are associated with a plurality of processes. A memory consumption reduction action is performed to reduce memory usage, including terminating at least one of the processes to reclaim a memory space occupied by the process, in response to determining that the data stored in the compressor pool exceeds the first predetermined threshold.
    Type: Application
    Filed: June 1, 2018
    Publication date: December 6, 2018
    Inventors: LIONEL D. DESAI, RUSSELL A. BLAINE, BENJAMIN C. TRUMBULL
  • Patent number: 9400677
    Abstract: An operating system of a data processing system receives a request from a first process to acquire an exclusive lock for accessing a resource of the data processing system. A second priority of a second process is increased to reduce total execution time. The second process is currently in possession of the exclusive lock for performing a transactional operation with the resource. The second priority was lower than a first priority of the first process. The operating system notifies the second process to indicate that another process is waiting for the exclusive lock to allow the second process to complete or roll back the transactional operation and to release the exclusive lock thereafter.
    Type: Grant
    Filed: May 14, 2013
    Date of Patent: July 26, 2016
    Assignee: Apple Inc.
    Inventors: Benjamin C. Trumbull, Adam C. Swift, Russell A. Blaine, Benjamin H. Nham, Kari E. Christianson
  • Patent number: 9244914
    Abstract: Methods and apparatus are provided in which applications that run on different devices can be upgraded with migration of data to a new database format. A method of upgrading a first version of an application installed on a first device to a second version is provided, where first and second transaction logs for respective first and second schema versions are stored in respective first and second log containers on a server computer, and the first version of the application stores data in accordance with a first schema version, and further stores a cache of at least a portion of the first transaction log in a log database on the first device, migrating the log database to the second schema version, storing a duplicate copy of the first transaction log in the second log container, and rewriting the duplicate copy of the first transaction logs using the second schema.
    Type: Grant
    Filed: September 28, 2012
    Date of Patent: January 26, 2016
    Assignee: Apple Inc.
    Inventors: Benjamin C. Trumbull, Nicholas W. Gillett, Adam C. Swift
  • Patent number: 8930324
    Abstract: Guarded file access operations are provided for creating and using guarded file descriptors, which can detect and prevent erroneous file access operations in computer programs. A file descriptor can be associated with a guard identifier to create a guarded file descriptor. The association can be established when the file is opened, and can be maintained independently of the computer program, which ordinarily maintains its own association between files, file descriptors, and guard identifiers. Subsequent file operations using the guarded file descriptor check that the guard identifier previously associated with that file descriptor is presented, and generate errors without performing the requested file operations if the correct guard identifier is not presented. This check serves as a validation of the computer program's use of file descriptors. An error and stack trace can be generated for use in analyzing a cause of the guard violation.
    Type: Grant
    Filed: September 15, 2012
    Date of Patent: January 6, 2015
    Inventors: Russell A. Blaine, Timothy P. Marsland, Benjamin H. Nham, Adam C. Swift, Benjamin C. Trumbull, Umesh S. Vaishampayan
  • Publication number: 20140189693
    Abstract: An operating system of a data processing system receives a request from a first process to acquire an exclusive lock for accessing a resource of the data processing system. A second priority of a second process is increased to reduce total execution time. The second process is currently in possession of the exclusive lock for performing a transactional operation with the resource. The second priority was lower than a first priority of the first process. The operating system notifies the second process to indicate that another process is waiting for the exclusive lock to allow the second process to complete or roll back the transactional operation and to release the exclusive lock thereafter.
    Type: Application
    Filed: May 14, 2013
    Publication date: July 3, 2014
    Applicant: Apple Inc.
    Inventors: Benjamin C. Trumbull, Adam C. Swift, Russell A. Blaine, Benjamin H. Nham, Kari E. Christianson
  • Patent number: 8700880
    Abstract: A method and apparatus for performing a function based on an executable code in response to receiving a request including function parameters are described. The executable code may be validated when loaded in a memory according to a signature statically signed over the executable code. A data location in the memory for storing the function parameters may be determined according location settings included inside the executable code. A target code location for storing a copy of the executable code may be determined based on the location parameters and the determined data location. A function is performed by executing the executable code from the target code location referencing the stored function parameters.
    Type: Grant
    Filed: November 9, 2012
    Date of Patent: April 15, 2014
    Assignee: Apple Inc.
    Inventor: Benjamin C. Trumbull
  • Publication number: 20140095432
    Abstract: Methods and apparatus are provided in which applications that run on different devices can be upgraded with migration of data to a new database format. A method of upgrading a first version of an application installed on a first device to a second version is provided, where first and second transaction logs for respective first and second schema versions are stored in respective first and second log containers on a server computer, and the first version of the application stores data in accordance with a first schema version, and further stores a cache of at least a portion of the first transaction log in a log database on the first device, migrating the log database to the second schema version, storing a duplicate copy of the first transaction log in the second log container, and rewriting the duplicate copy of the first transaction logs using the second schema.
    Type: Application
    Filed: September 28, 2012
    Publication date: April 3, 2014
    Applicant: APPLE INC.
    Inventors: Benjamin C. TRUMBULL, Nicholas W. GILLETT, Adam C. SWIFT
  • Publication number: 20130339313
    Abstract: Guarded file access operations are provided for creating and using guarded file descriptors, which can detect and prevent erroneous file access operations in computer programs. A file descriptor can be associated with a guard identifier to create a guarded file descriptor. The association can be established when the file is opened, and can be maintained independently of the computer program, which ordinarily maintains its own association between files, file descriptors, and guard identifiers. Subsequent file operations using the guarded file descriptor check that the guard identifier previously associated with that file descriptor is presented, and generate errors without performing the requested file operations if the correct guard identifier is not presented. This check serves as a validation of the computer program's use of file descriptors. An error and stack trace can be generated for use in analyzing a cause of the guard violation.
    Type: Application
    Filed: September 15, 2012
    Publication date: December 19, 2013
    Applicant: Apple Inc.
    Inventors: Russell A. BLAINE, Timothy P. Marsland, Benjamin H. Nham, Adam C. Swift, Benjamin C. Trumbull, Umesh S. Vaishampayan
  • Patent number: 8312249
    Abstract: A method and apparatus for performing a function based on an executable code in response to receiving a request including function parameters are described. The executable code may be validated when loaded in a memory according to a signature statically signed over the executable code. A data location in the memory for storing the function parameters may be determined according location settings included inside the executable code. A target code location for storing a copy of the executable code may be determined based on the location parameters and the determined data location. A function is performed by executing the executable code from the target code location referencing the stored function parameters.
    Type: Grant
    Filed: October 10, 2008
    Date of Patent: November 13, 2012
    Assignee: Apple Inc.
    Inventor: Benjamin C. Trumbull
  • Publication number: 20090307669
    Abstract: Methods, software media, compilers and programming techniques are described for binding data to a function using thunk synthesis. In one exemplary method, a computing system executes a program having a function with a first set of arguments. In response to the function being called, a function pointer of the function is synthesized to recover an extra argument for the function in addition to the first set of arguments.
    Type: Application
    Filed: September 30, 2008
    Publication date: December 10, 2009
    Inventors: Gerald Blaine Garst, JR., Benjamin C. Trumbull