发明名称 Task scheduling policy for limited memory systems
摘要 A system, method, and program product for scheduling applications in a data processing system. The method of the invention includes a step of monitoring memory availability within the data processing system during execution of one or more applications. The method further includes recording a memory usage history for one or more applications from which a memory requirement may be determined. A kernel scheduler is utilized to schedule a next application for execution in accordance with the memory availability and the determined memory requirements of the one or more monitored applications.
申请公布号 US8959515(B2) 申请公布日期 2015.02.17
申请号 US200611334665 申请日期 2006.01.18
申请人 International Business Machines Corporation 发明人 Qin Xiaohan
分类号 G06F9/46;G06F15/173;G06F9/48;G06F9/50 主分类号 G06F9/46
代理机构 Yudell Isidore PLLC 代理人 Yudell Isidore PLLC ;Baca Matthew
主权项 1. In a data processing system, a method for scheduling applications comprising: monitoring memory availability within said data processing system; recording, within a memory usage history table, a memory usage history for one or more monitored applications, wherein said recording includes updating memory usage metrics of each monitored application when a monitored process of the monitored application exits an execution run, wherein the memory usage metrics are updated in accordance with memory usage of the monitored process during the execution run, and wherein memory usage metrics for a monitored application are maintained cumulatively and is updated within the table for each application run; determining if a present amount of available memory, recorded within a free pages field, is less than or equal to a global available memory threshold; in response to determining that the amount of available memory is less than or equal to the global available memory threshold: entering a memory conscious scheduling mode, wherein during the memory conscious scheduling mode the amount of available memory recorded within the free pages field and an amount of memory usage of the one or more applications recorded in the memory usage history table are utilized as at least one of a primary prioritization criteria or one of a plurality of prioritization criteria;scheduling a next application for execution in accordance with a memory availability and the memory usage history of the one or more monitored applications and in accordance with the memory conscious scheduling mode by: computing a rescheduling index for the application, wherein the rescheduling index is a numeric value computed as a function of the presently available memory and actual and predicted memory usage of the application;wherein a memory availability factor utilized in computing the rescheduling index is derived from the value contained in the free pages field, and the predicted memory usage is determined from the memory usage metrics tracked and updated in the memory usage history table;comparing the computed rescheduling index with a specified threshold value to determine whether sufficient memory resources are currently available for the application; andif there is not sufficient memory resources currently available, sending, from a memory manager to a scheduler, a signal instructing the scheduler to reschedule the application; and in response to determining that the amount of available memory is greater than the global available memory threshold, exiting the memory conscious scheduling mode.
地址 Armonk NY US