Patents by Inventor James A. Van Vechten

James A. Van Vechten 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: 11392283
    Abstract: An electronic device: displays a first window in a display area; and detects a first user input associated with one or more edges of the first window. In response to detecting the first user input, and in accordance with a determination that the first user input corresponds to a first input type, the device resizes one or more dimensions of the first window that correspond to the one or more edges of the first window based on a movement vector associated with the first user input. In response to detecting the first user input, and in accordance with a determination that the first user input corresponds to a second input type, the device moves the one or more edges of the first window to one or more corresponding edges of the display area while maintaining respective one or more opposite edges of the first window.
    Type: Grant
    Filed: April 5, 2021
    Date of Patent: July 19, 2022
    Assignee: APPLE INC.
    Inventors: Corbin Robert Dunn, John O. Louch, Kevin James Van Vechten, Patrick Lee Coffman, Troy N. Stephens
  • Patent number: 11372672
    Abstract: A method and apparatus that schedules and manages a background task for device is described. In an exemplary embodiment, the device registers the background task, where the registering includes storing execution criteria for the background task. The execution criteria indicates a criterion for launching the background task and the execution criteria based on a component status of the device. The device further monitors the running state of the device for an occurrence of the execution criteria. If the execution criteria occurs, the device determines an available headroom with the device in order to perform the background task and launches the background task if the background task importance is greater than the available device headroom, where the background task importance is a measure of how important it is for the device to run the background task.
    Type: Grant
    Filed: February 6, 2014
    Date of Patent: June 28, 2022
    Assignee: Apple Inc.
    Inventors: Daniel Andreas Steffen, Kevin James Van Vechten
  • Publication number: 20210303141
    Abstract: An electronic device: displays a first window in a display area; and detects a first user input associated with one or more edges of the first window. In response to detecting the first user input, and in accordance with a determination that the first user input corresponds to a first input type, the device resizes one or more dimensions of the first window that correspond to the one or more edges of the first window based on a movement vector associated with the first user input. In response to detecting the first user input, and in accordance with a determination that the first user input corresponds to a second input type, the device moves the one or more edges of the first window to one or more corresponding edges of the display area while maintaining respective one or more opposite edges of the first window.
    Type: Application
    Filed: April 5, 2021
    Publication date: September 30, 2021
    Inventors: Corbin Robert Dunn, John O. Louch, Kevin James Van Vechten, Patrick Lee Coffman, Troy N. Stephens
  • Patent number: 11003338
    Abstract: An electronic device: displays a first window in a display area; and detects a first user input associated with one or more edges of the first window. In response to detecting the first user input, and in accordance with a determination that the first user input corresponds to a first input type, the device resizes one or more dimensions of the first window that correspond to the one or more edges of the first window based on a movement vector associated with the first user input. In response to detecting the first user input, and in accordance with a determination that the first user input corresponds to a second input type, the device moves the one or more edges of the first window to one or more corresponding edges of the display area while maintaining respective one or more opposite edges of the first window.
    Type: Grant
    Filed: March 18, 2019
    Date of Patent: May 11, 2021
    Assignee: APPLE INC.
    Inventors: Corbin Robert Dunn, John O. Louch, Kevin James Van Vechten, Patrick Lee Coffman, Troy N. Stephens
  • Patent number: 10430577
    Abstract: A method and an apparatus to dynamically distribute privileges among a plurality of processes are described. Each process may have attributes including a privilege to control access to processing resources. A first process may be running with a first privilege prohibited from access to a processing resource. A second process may be running with a second privilege allowed to access the processing resource. The first process may receive a request from the second process to perform a data processing task for the second process. In response, the second privilege may be dynamically transferred to the first process to allow the first process to access the processing resource. The first process may perform operations for the data processing task with the second privilege transferred from the second process.
    Type: Grant
    Filed: December 19, 2014
    Date of Patent: October 1, 2019
    Assignee: Apple Inc.
    Inventors: James Michael Magee, Russell A. Blaine, Vishal Patel, Daniel Andreas Steffen, Kevin James Van Vechten, Jacques Anthony Vidrine, Kelly B. Yancey, Jainam A. Shah
  • Publication number: 20190272084
    Abstract: An electronic device: displays a first window in a display area; and detects a first user input associated with one or more edges of the first window. In response to detecting the first user input, and in accordance with a determination that the first user input corresponds to a first input type, the device resizes one or more dimensions of the first window that correspond to the one or more edges of the first window based on a movement vector associated with the first user input. In response to detecting the first user input, and in accordance with a determination that the first user input corresponds to a second input type, the device moves the one or more edges of the first window to one or more corresponding edges of the display area while maintaining respective one or more opposite edges of the first window.
    Type: Application
    Filed: March 18, 2019
    Publication date: September 5, 2019
    Inventors: Corbin Robert Dunn, John O. Louch, Kevin James Van Vechten, Patrick Lee Coffman, Troy N. Stephens
  • Patent number: 10289292
    Abstract: An electronic device: displays a first window and a second window within a display area, the first window having a first edge parallel to a second edge of the second window; and detects an input moving the first edge toward the second edge. In response to detecting the input, the device: pairs the first edge to the second edge such that the first window stops moving before it overlaps the second window when the user input satisfies pairing criteria, the pairing criteria include a first pairing criterion that is met when the input corresponds to movement of the first edge toward the second edge that deviates from a predefined axis by less than an angular threshold value; and continues the movement of the first window based on the input so that the first window overlaps the second window when the user input does not satisfy the pairing criteria.
    Type: Grant
    Filed: May 31, 2017
    Date of Patent: May 14, 2019
    Assignee: Apple Inc.
    Inventors: Corbin Robert Dunn, John O. Louch, Kevin James Van Vechten, Patrick Lee Coffman, Troy N. Stephens
  • Publication number: 20170357418
    Abstract: An electronic device: displays a first window and a second window within a display area, the first window having a first edge parallel to a second edge of the second window; and detects an input moving the first edge toward the second edge. In response to detecting the input, the device: pairs the first edge to the second edge such that the first window stops moving before it overlaps the second window when the user input satisfies pairing criteria, the pairing criteria include a first pairing criterion that is met when the input corresponds to movement of the first edge toward the second edge that deviates from a predefined axis by less than an angular threshold value; and continues the movement of the first window based on the input so that the first window overlaps the second window when the user input does not satisfy the pairing criteria.
    Type: Application
    Filed: May 31, 2017
    Publication date: December 14, 2017
    Inventors: Corbin Robert Dunn, John O. Louch, Kevin James Van Vechten, Patrick Lee Coffman, Troy N. Stephens
  • Patent number: 9411637
    Abstract: A method and apparatus of a device that changes the importance of a daemon process is described. In an exemplary embodiment, the device receives a message from a user process destined for daemon process, wherein the daemon process executes independently of the user process and the first daemon process communicates messages with other executing processes. The device further determines if the first message indicates that the importance of the first daemon process can be changed. If the first message indicates the importance of the first daemon process can be changed, the device changes the importance of the first daemon process. The device additionally forwards the first message to the first daemon process.
    Type: Grant
    Filed: October 19, 2012
    Date of Patent: August 9, 2016
    Assignee: Apple Inc.
    Inventors: Ananthakrishna Ramesh, Yosen Lin, Damien Pascal Sorresso, James Michael Magee, Kevin James Van Vechten, Umesh Suresh Vaishampayan
  • Patent number: 9348732
    Abstract: A method and apparatus of a device that captures a stackshot of an executing process is described. In an exemplary embodiment, the device detects an interrupt of the process occurring during the execution of the process, where the process execution can be in a kernel space and user space, and the interrupt occurs during the user space. The device further determines whether to capture a stackshot during the interrupt using a penalty function. If the stackshot is to be captured, the device captures the stackshot and saves the stackshot.
    Type: Grant
    Filed: March 15, 2013
    Date of Patent: May 24, 2016
    Assignee: Apple Inc.
    Inventors: Kevin James Van Vechten, Shantonu Sen, Craig M. Federighi, Guy L. Tribble
  • Patent number: 9348645
    Abstract: A method and an apparatus for priority donations among different processes are described. A first process running with a first priority may receive a request from a second process running with a second priority to perform a data processing task for the second process. A dependency relationship may be identified between the first process and a third process running with a third priority performing separate data processing task. The dependency relationship may indicate that the data processing task is to be performed via the first process subsequent to completion of the separate data processing task via the third process. The third process may be updated with the second priority to complete the separate data processing task. The first process may perform the data processing task with the second priority for the second process.
    Type: Grant
    Filed: December 19, 2014
    Date of Patent: May 24, 2016
    Assignee: Apple Inc.
    Inventors: James Michael Magee, Russell A. Blaine, Daniel A. Chimene, James McIlree, Vishal Patel, Daniel Andreas Steffen, Kevin James Van Vechten
  • Publication number: 20150347177
    Abstract: A method and an apparatus for priority donations among different processes are described. A first process running with a first priority may receive a request from a second process running with a second priority to perform a data processing task for the second process. A dependency relationship may be identified between the first process and a third process running with a third priority performing separate data processing task. The dependency relationship may indicate that the data processing task is to be performed via the first process subsequent to completion of the separate data processing task via the third process. The third process may be updated with the second priority to complete the separate data processing task. The first process may perform the data processing task with the second priority for the second process.
    Type: Application
    Filed: December 19, 2014
    Publication date: December 3, 2015
    Inventors: James Michael Magee, Russell A. Blaine, Daniel A. Chimene, James McIlree, Vishal Patel, Daniel Andreas Steffen, Kevin James Van Vechten
  • Publication number: 20150347743
    Abstract: A method and an apparatus to dynamically distribute privileges among a plurality of processes are described. Each process may have attributes including a privilege to control access to processing resources. A first process may be running with a first privilege prohibited from access to a processing resource. A second process may be running with a second privilege allowed to access the processing resource. The first process may receive a request from the second process to perform a data processing task for the second process. In response, the second privilege may be dynamically transferred to the first process to allow the first process to access the processing resource. The first process may perform operations for the data processing task with the second privilege transferred from the second process.
    Type: Application
    Filed: December 19, 2014
    Publication date: December 3, 2015
    Inventors: James Michael Magee, Russell A. Blaine, Vishal Patel, Daniel Andreas Steffen, Kevin James Van Vechten, Jacques Anthony Vidrine, Kelly B. Yancey, Jainam A. Shah
  • Publication number: 20140237475
    Abstract: A method and apparatus of a device that manages processes upon the device entering and waking from sleep mode is described. In an exemplary embodiment, the device receives a signal to wakeup the device from the sleep mode. The sleep mode includes a plurality of processes that were executing prior to the device being put into a sleep mode and the plurality of processes includes a suppressed process and an unsuppressed process. For each of the processes, the device resumes execution of that process if that process is an unsuppressed process and defers execution of the process if that process is a suppressed process.
    Type: Application
    Filed: February 14, 2014
    Publication date: August 21, 2014
    Applicant: APPLE INC.
    Inventors: Jairey Connie Jong, Kevin James Van Vechten
  • Publication number: 20140237476
    Abstract: A method and apparatus that schedules and manages a background task for device is described. In an exemplary embodiment, the device registers the background task, where the registering includes storing execution criteria for the background task. The execution criteria indicates a criterion for launching the background task and the execution criteria based on a component status of the device. The device further monitors the running state of the device for an occurrence of the execution criteria. If the execution criteria occurs, the device determines an available headroom with the device in order to perform the background task and launches the background task if the background task importance is greater than the available device headroom, where the background task importance is a measure of how important it is for the device to run the background task.
    Type: Application
    Filed: February 6, 2014
    Publication date: August 21, 2014
    Applicant: Apple Inc.
    Inventors: Daniel Andreas Steffen, Kevin James Van Vechten
  • Publication number: 20140237219
    Abstract: A method and apparatus of a device that captures a stackshot of an executing process is described. In an exemplary embodiment, the device detects an interrupt of the process occurring during the execution of the process, where the process execution can be in a kernel space and user space, and the interrupt occurs during the user space. The device further determines whether to capture a stackshot during the interrupt using a penalty function. If the stackshot is to be captured, the device captures the stackshot and saves the stackshot.
    Type: Application
    Filed: March 15, 2013
    Publication date: August 21, 2014
    Applicant: Apple Inc.
    Inventors: Kevin James Van Vechten, Shantonu Sen, Craig M. Federighi, Guy L. Tribble
  • Publication number: 20130332941
    Abstract: A method and apparatus of a device that changes the importance of a daemon process is described. In an exemplary embodiment, the device receives a message from a user process destined for daemon process, wherein the daemon process executes independently of the user process and the first daemon process communicates messages with other executing processes. The device further determines if the first message indicates that the importance of the first daemon process can be changed. If the first message indicates the importance of the first daemon process can be changed, the device changes the importance of the first daemon process. The device additionally forwards the first message to the first daemon process.
    Type: Application
    Filed: October 19, 2012
    Publication date: December 12, 2013
    Applicant: APPLE INC.
    Inventors: Ananthakrishna Ramesh, Yosen Lin, Damien Pascal Sorresso, James Michael Magee, Kevin James Van Vechten, Umesh Suresh Vaishampayan
  • Patent number: 8239867
    Abstract: Techniques for implementing an atomic FIFO queue and system for processing queue elements are described herein. According to one embodiment, in a first thread of execution, new data is atomically merged with existing data of an object via an atomic instruction associated with hardware that executes the first thread. An attempt is made to acquire ownership of the object (exclusive access). If successful, the object is enqueued on an atomic FIFO queue as a continuation element for further processing. Otherwise, another thread of execution is safely assumed to have acquired ownership and taken responsibility to enqueue the object. A second thread of execution processes the atomic FIFO queue and assumes ownership of the continuation elements. The second thread invokes a function member of the continuation element with a data member of the continuation element, the data member including the newly merged data. Other methods and apparatuses are also described.
    Type: Grant
    Filed: June 3, 2009
    Date of Patent: August 7, 2012
    Assignee: Apple Inc.
    Inventors: David A. Zarzycki, Kevin James Van Vechten, Joshua Osborne
  • Patent number: 7990600
    Abstract: An optically addressed, photoconductive spatial light modulator (SLM) operates in a transmissive mode and is capable of modulating a wide spectrum of visible light. There is no pixel structure or native pixel resolution in the SLM. The SLM has no photodiodes and does not rectify. A light projection system (100) in which one or more SLMs (128, 130, 132) are placed includes a write (image definition) UV light path (102) and a read (illumination) visible light path (104) to form a color image projection display. The write UV light propagates from an image display pattern source (120) and either sequentially or continuously writes image patterns on the photoconductive SLMs. The read visible light propagates through the SLM and is modulated by an electro-optical material, the optical properties of which change in response to the image structure carried by the write light. The result is a high efficiency display system that delivers high resolution color images through a projection lens (190) onto a display screen.
    Type: Grant
    Filed: May 24, 2005
    Date of Patent: August 2, 2011
    Assignee: Compound Photonics Limited
    Inventors: Jonathan A. Sachs, Howard V. Goetz, David Keith, Lin Li, Steven H. Linn, Alexander Parfenov, Stephen E. Brice, Terry J. Scheffer, James A. Van Vechten, Jiuzhi Xue
  • Publication number: 20100313208
    Abstract: Techniques for implementing an atomic FIFO queue and system for processing queue elements are described herein. According to one embodiment, in a first thread of execution, new data is atomically merged with existing data of an object via an atomic instruction associated with hardware that executes the first thread. An attempt is made to acquire ownership of the object (exclusive access). If successful, the object is enqueued on an atomic FIFO queue as a continuation element for further processing. Otherwise, another thread of execution is safely assumed to have acquired ownership and taken responsibility to enqueue the object. A second thread of execution processes the atomic FIFO queue and assumes ownership of the continuation elements. The second thread invokes a function member of the continuation element with a data member of the continuation element, the data member including the newly merged data. Other methods and apparatuses are also described.
    Type: Application
    Filed: June 3, 2009
    Publication date: December 9, 2010
    Applicant: APPLE INC.
    Inventors: David A. Zarzycki, Kevin James Van Vechten, Joshua Osborne