Patents by Inventor Jainam Shah
Jainam Shah 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: 20240370133Abstract: A platform employing graphic interfaces which correspond to an event which are generated by a system provider. A graphic interface correlating to an event requested by users is communicated for display on a computer device of each user. Users are depicted with respective user icons on the graphic interface wherein they can choose to join groups of other users, communicate with individual other users, and view streaming video generated by other users using a drag and drop of their respective user icon to make such choices.Type: ApplicationFiled: August 8, 2022Publication date: November 7, 2024Applicant: WiseDV Inc.Inventors: Atul Anandpura, Shuchi Anandpura, Bhavika Anandpura, Jaimin Shah, Yash Shah, Jainam Shah
-
Patent number: 11940931Abstract: A turnstile OS primitive is provided that enables support for owner tracking and waiting. The turnstile primitive enables a common framework that can be adopted across multiple different types of synchronization primitives to provide a common service for priority boosting and wait queuing. A turnstile can also provide a mechanism to enable a turnstile to block on another turnstile, allowing multi-hop priority boosting within a chain of multiple blocking turnstiles.Type: GrantFiled: January 5, 2021Date of Patent: March 26, 2024Assignee: Apple Inc.Inventors: Jainam A. Shah, Jeremy C. Andrus, Daniel A. Chimene, Kushal Dalmia, Pierre Habouzit, James M. Magee, Marina Sadini, Daniel A. Steffen
-
Publication number: 20210157748Abstract: A turnstile OS primitive is provided that enables support for owner tracking and waiting. The turnstile primitive enables a common framework that can be adopted across multiple different types of synchronization primitives to provide a common service for priority boosting and wait queuing. A turnstile can also provide a mechanism to enable a turnstile to block on another turnstile, allowing multi-hop priority boosting within a chain of multiple blocking turnstiles.Type: ApplicationFiled: January 5, 2021Publication date: May 27, 2021Inventors: Jainam A. Shah, Jeremy C. Andrus, Daniel A. Chimene, Kushal Dalmia, Pierre Habouzit, James M. Magee, Marina Sadini, Daniel A. Steffen
-
Patent number: 10901920Abstract: One embodiment provides for a computer-implemented method comprising instantiating a synchronization primitive to control access to a resource, acquiring the synchronization primitive at a first thread, the first thread having a first priority, associating a turnstile with the synchronization primitive, setting an inheritor of the turnstile to the first thread, attempting to acquire the synchronization primitive at a second thread while the synchronization primitive is held by the first thread, the second thread having a second priority, adding the second thread to a wait queue of the turnstile; and in response to determining that the second priority is higher than the first priority, increasing the priority of the first thread to the second priority.Type: GrantFiled: April 10, 2019Date of Patent: January 26, 2021Assignee: Apple Inc.Inventors: Jainam A. Shah, Jeremy C. Andrus, Daniel A. Chimene, Kushal Dalmia, Pierre Habouzit, James M. Magee, Marina Sadini, Daniel A. Steffen
-
Patent number: 10671430Abstract: Techniques are disclosed relating to inter-process communication. In some embodiments, a kernel receives a notification of a communication to be sent from a first thread of a first application to a second thread of a second application. The kernel provides a reply port to the first thread for receiving a reply to the communication from the second thread. The kernel facilitates sending the communication from the first thread to the second thread. The kernel increases an execution priority of the second thread in response to the kernel determining that the reply port and a destination port associated with the second thread are identified in the communication. In some embodiments, the kernel creates the reply port in response to receiving the notification and, in response to detecting the reply has been communicated to the reply port, decreases the execution priority of the second thread and removes the reply port.Type: GrantFiled: December 8, 2017Date of Patent: June 2, 2020Assignee: Apple Inc.Inventors: Daniel A. Steffen, Jainam A. Shah, James M. Magee, Jeremy C. Andrus, Russell A. Blaine
-
Patent number: 10599785Abstract: A system includes a plurality of sound devices, an electronic device having a serial port emulator configured to generate a serial port emulation corresponding to each of the plurality of sound devices, and a computer-readable storage medium having one or more programming instructions. The system receives compressed and encoded sound input from a first sound device via a serial port emulation associated with the first sound device. The sound input is associated with a first language. The system decodes and decompresses the compressed and encoded sound input to generate decompressed and decoded sound input, generates sound output by translating the decompressed and decoded sound input from the first language to a second language, compresses and encodes the sound output to generate compressed and encoded sound output, and transmits the compressed and encoded sound output to a second sound device via a serial port emulation associated with the second sound device.Type: GrantFiled: May 10, 2018Date of Patent: March 24, 2020Assignee: WAVERLY LABS INC.Inventors: William O. Goethals, Jainam Shah, Benjamin J. Carlson
-
Publication number: 20190370061Abstract: One embodiment provides for a computer-implemented method comprising instantiating a synchronization primitive to control access to a resource, acquiring the synchronization primitive at a first thread, the first thread having a first priority, associating a turnstile with the synchronization primitive, setting an inheritor of the turnstile to the first thread, attempting to acquire the synchronization primitive at a second thread while the synchronization primitive is held by the first thread, the second thread having a second priority, adding the second thread to a wait queue of the turnstile; and in response to determining that the second priority is higher than the first priority, increasing the priority of the first thread to the second priority.Type: ApplicationFiled: April 10, 2019Publication date: December 5, 2019Inventors: Jainam A. Shah, Jeremy C. Andrus, Daniel A. Chimene, Kushal Dalmia, Pierre Habouzit, James M. Magee, Marina Sadini, Daniel A. Steffen
-
Patent number: 10430577Abstract: 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: GrantFiled: December 19, 2014Date of Patent: October 1, 2019Assignee: 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: 20180349181Abstract: Techniques are disclosed relating to inter-process communication. In some embodiments, a kernel receives a notification of a communication to be sent from a first thread of a first application to a second thread of a second application. The kernel provides a reply port to the first thread for receiving a reply to the communication from the second thread. The kernel facilitates sending the communication from the first thread to the second thread. The kernel increases an execution priority of the second thread in response to the kernel determining that the reply port and a destination port associated with the second thread are identified in the communication. In some embodiments, the kernel creates the reply port in response to receiving the notification and, in response to detecting the reply has been communicated to the reply port, decreases the execution priority of the second thread and removes the reply port.Type: ApplicationFiled: December 8, 2017Publication date: December 6, 2018Inventors: Daniel A. Steffen, Jainam A. Shah, James M. Magee, Jeremy C. Andrus, Russell A. Blaine
-
Publication number: 20180329896Abstract: A system includes a plurality of sound devices, an electronic device having a serial port emulator configured to generate a serial port emulation corresponding to each of the plurality of sound devices, and a computer-readable storage medium having one or more programming instructions. The system receives compressed and encoded sound input from a first sound device via a serial port emulation associated with the first sound device. The sound input is associated with a first language. The system decodes and decompresses the compressed and encoded sound input to generate decompressed and decoded sound input, generates sound output by translating the decompressed and decoded sound input from the first language to a second language, compresses and encodes the sound output to generate compressed and encoded sound output, and transmits the compressed and encoded sound output to a second sound device via a serial port emulation associated with the second sound device.Type: ApplicationFiled: May 10, 2018Publication date: November 15, 2018Inventors: William O. Goethals, Jainam Shah
-
Publication number: 20150347743Abstract: 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: ApplicationFiled: December 19, 2014Publication date: December 3, 2015Inventors: James Michael Magee, Russell A. Blaine, Vishal Patel, Daniel Andreas Steffen, Kevin James Van Vechten, Jacques Anthony Vidrine, Kelly B. Yancey, Jainam A. Shah
-
Patent number: D908230Type: GrantFiled: January 7, 2019Date of Patent: January 19, 2021Assignee: Apex Neuro Holdings, Inc.Inventors: Zen Chu, Sean Hagberg, Francois Kress, Jainam Shah, Geoff Baldwin, Priyanka Venkatesh, Christopher Wright, Thomas Kershaw
-
Patent number: D922592Type: GrantFiled: May 31, 2019Date of Patent: June 15, 2021Assignee: Apex Neuro Holdings, Inc.Inventors: Zen Chu, Sean Hagberg, Francois Kress, Jainam Shah, Geoff Baldwin, Priyanka Venkatesh
-
Patent number: D922593Type: GrantFiled: May 31, 2019Date of Patent: June 15, 2021Assignee: Apex Neuro Holdings, Inc.Inventors: Zen Chu, Sean Hagberg, Francois Kress, Jainam Shah, Geoff Baldwin, Priyanka Venkatesh, Christopher Wright, Thomas Kershaw