Memory management based on classification of a software process

    公开(公告)号:US11301296B2

    公开(公告)日:2022-04-12

    申请号: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.

    Quality of service classes
    3.
    发明授权

    公开(公告)号:US10908954B2

    公开(公告)日:2021-02-02

    申请号:US15444186

    申请日:2017-02-27

    Applicant: Apple Inc.

    Abstract: In one embodiment, tasks executing on a data processing system can be associated with a Quality of Service (QoS) classification that is used to determine the priority values for multiple subsystems of the data processing system. The QoS classifications are propagated when tasks interact and the QoS classes are interpreted a multiple levels of the system to determine the priority values to set for the tasks. In one embodiment, one or more sensors coupled with the data processing system monitor a set of system conditions that are used in part to determine the priority values to set for a QoS class.

    METHOD AND SYSTEM FOR SCHEDULING THREADS FOR EXECUTION
    4.
    发明申请
    METHOD AND SYSTEM FOR SCHEDULING THREADS FOR EXECUTION 审中-公开
    用于调度执行螺纹的方法和系统

    公开(公告)号:US20150347192A1

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

    申请号:US14290791

    申请日:2014-05-29

    Applicant: Apple Inc.

    CPC classification number: G06F9/5027 G06F9/4881 G06F2209/5021

    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.

    Abstract translation: 在这里描述了用于调度用于在数据处理系统中执行的线程的技术。 根据一个实施例,响应于执行线程的请求,数据处理系统的操作系统的调度器访问全局运行队列以识别与最高进程优先级相关联的全局运行条目。 全局运行队列包括多个全局运行条目,每个条目对应于多个进程优先级中的一个。 基于全局运行条目识别组运行队列,其中组运行队列包括与其中一个进程相关联的多个线程。 调度程序将组运行队列中的线程中具有最高线程优先级的一个线程调度到数据处理系统的一个处理器核心以执行。

    ADAPTIVE HANDLING OF PRIORITY INVERSIONS USING TRANSACTIONS
    5.
    发明申请
    ADAPTIVE HANDLING OF PRIORITY INVERSIONS USING TRANSACTIONS 有权
    使用交易优先处理优先权的自适应处理

    公开(公告)号:US20140189693A1

    公开(公告)日:2014-07-03

    申请号: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

    公开(公告)号:US20220222116A1

    公开(公告)日:2022-07-14

    申请号:US17699911

    申请日:2022-03-21

    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