ДИСПЕТЧЕРИЗАЦИЯ РЕСУРСОВ НА ОСНОВАНИИ ПРОФИЛЕЙ ИСПОЛЬЗОВАНИЯ РЕСУРСОВ, ЗАВИСЯЩИХ ОТ УСТРОЙСТВА ИЛИ ЗАВИСЯЩИХ ОТ ПОЛЬЗОВАТЕЛЯ

1. Способ, осуществляемый вычислительным устройством для диспетчеризации его ресурса, содержащий этапы, на которых:
определяют первую величину ресурса, который используется первым экземпляром приложения, выполняющегося на вычислительном устройстве, причем определение включает в себя определение величины ресурса, который используется процессом переднего плана, связанным с первым экземпляром приложения, и одной или более фоновыми задачами, связанными с первым экземпляром приложения;
вычисляют первую прогнозируемую величину использования ресурсов для приложения на основании, по меньшей мере, первой величины;
сохраняют первую прогнозируемую величину использования ресурсов в хранилище данных;
определяют вторую величину ресурса, подлежащего выделению второму экземпляру приложения, подлежащего выполнению вычислительным устройством на основании, по меньшей мере, первой прогнозируемой величины использования ресурсов, хранящейся в хранилище данных, причем приложение, выполняющееся на вычислительном устройстве, взаимодействует с диспетчером ресурсов вычислительного устройства для динамического управления тем, как выделяемая часть ресурса вычислительного устройства должна быть разделена между процессом переднего плана, связанным с приложением и одним или более фоновыми процессами, связанными с приложением.
2. Способ по п. 1, в котором ресурс содержит, по меньшей мере, один из:
ресурса энергозависимой или энергонезависимой памяти;
ресурса центрального процессора (CPU);
ресурса ввода/вывода (I/O);
сетевого ресурса;
ресурса питания; и
ресурса датчика.
3. Способ по п. 1, в котором вычисление первой прогнозируемой величины использования ресурсов для приложения на основании, по меньшей мере, первой величины содержит этапы, на которых:
получают максимальную величину использования ресурсов для приложения путем сравнения первой величины с одной или более ранее определенных величин, связанных с одним или более ранее выполненными экземплярами приложения; и
вычисляют первую прогнозируемую величину использования ресурсов на основании максимальной величины использования ресурсов.
4. Способ по п. 1, в котором вычисление первой прогнозируемой величины использования ресурсов для приложения на основании, по меньшей мере, первой величины содержит этапы, на которых:
получают среднюю величину использования ресурсов для приложения на основании первой величины и одной или более ранее определенных величин, связанных с ранее выполненными экземплярами приложения; и
вычисляют первую прогнозируемую величину использования ресурсов на основании средней величины использования ресурсов.
5. Способ по п. 4, в котором получение средней величины использования ресурсов для приложения на основании первой величины и одной или более ранее определенных величин, связанных с ранее выполненными экземплярами приложения, содержит этапы, на которых:
умножают первую величину на первый весовой коэффициент для получения первого произведения;
умножают величину скользящего среднего, полученную на основании, по меньшей мере, одной или более ранее определенных величин, на второй весовой коэффициент для получения второго произведения; и
суммируют первое произведение и второе произведение.
6. Способ по п. 1, дополнительно содержащий этапы, на которых:
в ответ на определение, что величина ресурса, используемого вторым экземпляром приложения, выполняющегося на вычислительном устройстве, превышает вторую величину, завершают один или более процессов, которые одновременно выполняются на вычислительном устройстве.
7. Способ по п. 1, дополнительно содержащий этап, на котором:
в ответ на определение, что вторая величина ресурса в данный момент недоступна, препятствуют выполнению второго экземпляра приложения.
8. Способ по п. 1, дополнительно содержащий этап, на котором:
в ответ на определение, что вторая величина ресурса в данный момент недоступна, завершают один или более процессов, которые в данный момент выполняются на вычислительном устройстве.
9. Способ по п. 1, в котором этапы определения, вычисления и сохранения содержат:
определение первой величины ресурса, который используется первым экземпляром приложения, выполняющегося на вычислительном устройстве со стороны первого пользователя;
вычисление первой прогнозируемой величины использования ресурсов для приложения и первого пользователя на основании, по меньшей мере, первой величины;
сохранение первой прогнозируемой величины использования ресурсов в хранилище данных; и
определение второй величины ресурса, подлежащего выделению второму экземпляру приложения, подлежащего выполнению вычислительным устройством со стороны первого пользователя на основании, по меньшей мере, первой прогнозируемой величины использования ресурсов, хранящейся в хранилище данных;
причем способ дополнительно содержит:
определение третьей величины ресурса, который используется третьим экземпляром приложения, выполняющегося на вычислительном устройстве со стороны второго пользователя;
вычисление второй прогнозируемой величины использования ресурсов для приложения и второго пользователя на основании, по меньшей мере, третьей величины;
сохранение второй прогнозируемой величины использования ресурсов в хранилище данных; и
определение четвертой величины ресурса, подлежащего выделению четвертому экземпляру приложения, подлежащего выполнению вычислительным устройством со стороны второго пользователя на основании, по меньшей мере, второй прогнозируемой величины использования ресурсов, хранящейся в хранилище данных.
10. Система, реализованная на вычислительном устройстве, содержащая:
по меньшей мере, один процессор; и
память, к которой может осуществлять доступ, по меньшей мере, один процессор, причем в памяти хранятся компоненты для выполнения, по меньшей мере, одним процессором, причем компоненты включают в себя:
диспетчер ресурсов, выполненный с возможностью осуществлять способ по п. 1.
11. Система по п. 10, в которой диспетчер ресурсов дополнительно выполнен с возможностью отслеживания схемы использования, по меньшей мере, одного ресурса вычислительного устройства одним или более приложением и пользователем, для сохранения информации, связанной со схемой использования, и использования сохраненной информации для прогностического выделения, по меньшей мере, части ресурса, по меньшей мере, одному процессу до его выполнения, по меньшей мере, одним процессором.