METHOD AND SYSTEM FOR SCHEDULING THREADS FOR EXECUTION

    公开(公告)号:US20190155656A1

    公开(公告)日:2019-05-23

    申请号:US16195429

    申请日:2018-11-19

    Applicant: Apple Inc.

    Abstract: Techniques for scheduling threads for execution in a data processing system are described herein. According to one embodiment, in response to a request for executing a thread, a scheduler of an operating system of the data processing system accesses a global run queue to identify a global run entry associated with the highest process priority. The global run queue includes multiple global run entries, each corresponding to one of a plurality of process priorities. A group run queue is identified based on the global run entry, where the group run queue includes multiple threads associated with one of the processes. The scheduler dispatches one of the threads that has the highest thread priority amongst the threads in the group run queue to one of the processor cores of the data processing system for execution.

    Multiple process scheduling of threads using process queues

    公开(公告)号:US10140157B2

    公开(公告)日:2018-11-27

    申请号:US14290791

    申请日:2014-05-29

    Applicant: Apple Inc.

    Abstract: Techniques for scheduling threads for execution in a data processing system are described herein. According to one embodiment, in response to a request for executing a thread, a scheduler of an operating system of the data processing system accesses a global run queue to identify a global run entry associated with the highest process priority. The global run queue includes multiple global run entries, each corresponding to one of a plurality of process priorities. A group run queue is identified based on the global run entry, where the group run queue includes multiple threads associated with one of the processes. The scheduler dispatches one of the threads that has the highest thread priority amongst the threads in the group run queue to one of the processor cores of the data processing system for execution.

    Adaptive handling of priority inversions using transactions
    26.
    发明授权
    Adaptive handling of priority inversions using transactions 有权
    使用事务处理优先级的自适应处理

    公开(公告)号:US09400677B2

    公开(公告)日:2016-07-26

    申请号:US13893631

    申请日:2013-05-14

    Applicant: Apple Inc.

    CPC classification number: G06F9/466 G06F9/526 G06F2209/522 G06F2209/523

    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.

    Abstract translation: 数据处理系统的操作系统从第一进程接收到获取用于访问数据处理系统的资源的排他锁的请求。 增加第二个进程的第二个优先级,以减少总执行时间。 第二个进程当前拥有执行与该资源的事务操作的排他锁。 第二个优先次序低于第一个进程的第一优先事项。 操作系统通知第二进程以指示另一进程正在等待排他锁以允许第二进程完成或回滚事务操作并且此后释放排他锁。

    MEMORY MANAGEMENT IN DATA PROCESSING SYSTEMS
    30.
    发明申请

    公开(公告)号:US20200379810A1

    公开(公告)日:2020-12-03

    申请号:US16808021

    申请日:2020-03-03

    Applicant: Apple Inc.

    Abstract: Memory management in a data processing system can learn one or more behaviors of software processes such as daemon software processes and application processes, and based on information learned about the behaviors, the memory management can adjust how it controls memory usage in the system. For example, a memory management system can learn how software processes react (e.g. how quickly they relaunch) to memory recovery methods, such as system initiated terminations of one or more software processes that are performed to reclaim memory to increase available volatile memory, and based on information about how they react, the memory recovery methods can operate differently depending upon how the software reacted previously.

Patent Agency Ranking