ТЕРМИНАЛ И СПОСОБ УПРАВЛЕНИЯ ЕГО ПРИЛОЖЕНИЯМИ
TERMINAL AND CONTROL METHOD FOR APPLICATIONS THEREOF

ОБЛАСТЬ ТЕХНИКИ
[1] Настоящее изобретение относится, в целом, к терминалу и способу управления данными приложения на терминале, и, в частности, к терминалу и способу одновременного обновления множественных приложений.
УРОВЕНЬ ТЕХНИКИ
[2] На мобильных терминалах, например смартфонах, выполняются различные приложения, например электронной почты, служб социальных сетей (SNS) и мгновенного обмена сообщениями (IM). Такие приложения способны синхронизировать данные приложения через сеть. В целом, для каждого приложения установлено надлежащее значение периода синхронизации данных. Обычно период синхронизации можно задавать равным значению времени, например 5 минут, 15 минут, 30 минут, 1 час, 4 часа и т.д. При конфигурировании периода обновления приложения, пользователь, желающий принимать обновления данных в реальном времени устанавливает период синхронизации равным короткому значению времени.
[3] Соответственно, терминал запрашивает сеть на предмет обновленных данных за период синхронизации соответствующего приложения. В ответ на запрос, сеть передает запрашиваемые данные на терминал.
[4] Всякий раз, когда каждое из отдельных приложений осуществляет обновление, терминал переходит из неактивного режима в активный режим. Соответственно, если множественные приложения имеют разные периоды синхронизации, терминал будет чаще переходить из неактивного режима в активный режим.
[5] На фиг. 1 показана схема, демонстрирующая переход состояния из неактивного режима для энергосбережения в активный режим для обновления приложений на традиционном терминале.
[6] Согласно фиг. 1, приложения А, В и С имеют разные периоды синхронизации, и, таким образом, терминал часто активируется из энергосберегающего режима, что сокращает длительность энергосбережения. Следовательно, частые переходы из неактивного режима в активный режим увеличивают объем сигнализации, таким образом, увеличивая энергопотребление.
РАСКРЫТИЕ ИЗОБРЕТЕНИЯ
ТЕХНИЧЕСКАЯ ПРОБЛЕМА
[7] Соответственно, настоящее изобретение призвано решать, по меньшей мере, вышеописанные проблемы и/или недостатки и обеспечивать, по меньшей мере, преимущества, описанные ниже.
[8] Аспектом настоящего изобретения является обеспечение способа и устройства для эффективного управления периодами обновления данных приложений, выполняющихся на терминале.
РЕШЕНИЕ ПРОБЛЕМЫ
[9] В соответствии с аспектом настоящего изобретения, предусмотрен способ синхронизации приложений терминала, который включает в себя этапы, на которых получают хронирование (тайминг) синхронизации ранее зарегистрированного целевого приложения синхронизации или общее хронирование синхронизации ранее зарегистрированных целевых приложений синхронизации, при добавлении приложения, подлежащего синхронизации; и регулируют хронирование синхронизации добавленного приложения с учетом предыдущего хронирования синхронизации или общего хронирования синхронизации.
[10] В соответствии с другим аспектом настоящего изобретения, предусмотрен терминал для осуществления синхронизации приложений. Терминал включает в себя память; и контроллер, который получает хронирование синхронизации ранее зарегистрированного целевого приложения синхронизации или общее хронирование синхронизации ранее зарегистрированных целевых приложений синхронизации из памяти, при добавлении приложения, подлежащего синхронизации, и регулирует хронирование синхронизации добавленного приложения с учетом предыдущего хронирования синхронизации или общего хронирования синхронизации.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[11] Вышеозначенные и другие аспекты, признаки и преимущества определенных вариантов осуществления настоящего изобретения явствуют из нижеследующего подробного описания, приведенного совместно с прилагаемыми чертежами, в которых:
[12] фиг. 1 - схема, демонстрирующая переход состояния из неактивного режима для энергосбережения в активный режим для обновления приложений на традиционном терминале;
[13] фиг. 2 - блок-схема, демонстрирующая терминал согласно варианту осуществления настоящего изобретения;
[14] фиг. 3 - схема, демонстрирующая конфигурацию операционной системы (OS) блока управления для синхронизации между приложениями согласно варианту осуществления настоящего изобретения;
[15] фиг. 4 - схема, демонстрирующая список извещений для использования в способе управления приложениями согласно варианту осуществления настоящего изобретения;
[16] фиг. 5 - схема, демонстрирующая первое местоположение планировщика на уровне OS блока управления терминала согласно варианту осуществления настоящего изобретения;
[17] фиг. 6 - схема, демонстрирующая второе местоположение планировщика на уровне OS блока управления терминала согласно варианту осуществления настоящего изобретения;
[18] фиг. 7 - блок-схема последовательности операций способа, демонстрирующая способ управления приложениями согласно варианту осуществления настоящего изобретения;
[19] фиг. 8 - блок-схема последовательности операций способа, демонстрирующая процедуру вычисления периода синхронизации планирования способа управления приложениями согласно варианту осуществления настоящего изобретения;
[20] фиг. 9 - блок-схема последовательности операций способа, демонстрирующая процедуру для конфигурации периода синхронизации приложений способа управления приложениями согласно варианту осуществления настоящего изобретения;
[21] фиг. 10 - схема, демонстрирующая принцип обновления на основании периода синхронизации планирования, сконфигурированного для каждого приложения, согласно варианту осуществления настоящего изобретения;
[22] фиг. 11A-11C - схемы, демонстрирующие процедуру синхронизации приложений согласно варианту осуществления настоящего изобретения;
[23] фиг. 12 - блок-схема последовательности операций способа, демонстрирующая процедуру конфигурации синхронизации способа управления приложениями согласно варианту осуществления настоящего изобретения; и
[24] фиг. 13 - блок-схема последовательности операций способа, демонстрирующая процедуру конфигурации синхронизации способа управления приложениями согласно варианту осуществления настоящего изобретения.
ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯ
[25] Различные варианты осуществления настоящего изобретения будут описаны ниже подробно со ссылкой на прилагаемые чертежи. В нижеследующем описании, конкретные детали, например, детализированная конфигурация и компоненты предоставлены лишь для облегчения общего понимания этих вариантов осуществления настоящего изобретения. Таким образом, специалисты в данной области техники могут предложить различные изменения и модификации описанных здесь вариантов осуществления, не выходя за рамки объема и сущности настоящего изобретения. Кроме того, описания общеизвестных функций и конструкций опущены для ясности и краткости.
[26] В нижеследующем описании, термин "терминал" обозначает устройство обработки информации, способное генерировать данные и обрабатывать данные, принятые из внешнего источника. Например, терминалом может быть любой из настольного компьютера, портативного компьютера, планшетного персонального компьютера (ПК), портативного терминала, смартфона и т.д.
[27] На фиг. 2 показана блок-схема, демонстрирующая терминал согласно варианту осуществления настоящего изобретения.
[28] Согласно фиг. 2, терминал включает в себя блок 210 связи, блок 220 управления и блок 230 хранения. Блок 210 связи обменивается данными с внешним объектом под управлением блока 220 управления. Например, блок 210 связи устанавливает канал связи с базовой станцией для передачи данных, например, переноса текста и изображения, и речевой и видеосвязи. Соответственно, блок 210 связи включает в себя радиочастотный (РЧ) передатчик (не показан) для повышающего преобразования и усиления сигнала, подлежащего передаче, и РЧ приемник (не показан) для малошумного усиления и понижающего преобразования принятого сигнала. Блок 210 связи обменивается данными с сетью за период обновления под управлением блока 220 управления. Блок 201 связи передает сообщение для запрашивания сети, взаимодействующей с приложением, подлежащим обновлению, под управлением блока 220 управления.
[29] Здесь, синхронизация приложения включает в себя обмен сообщениями для поддержания соединения (например, сообщением keep-alive) и передачи и приема измененных данных на внешний объект и от него.
[30] Блок 220 управления управляет состояниями и операциями всех компонентов терминала. В частности, в соответствии с вариантом осуществления настоящего изобретения, блок 220 управления синхронизирует периоды обновления приложений, требующих периодических обновлений данных из приложений, выполняющихся на терминале.
[31] Сначала блок 220 управления определяет, следует ли устанавливать период синхронизации. Таким образом, блок 220 управления определяет, выбран ли режим конфигурации периода синхронизации. Режим конфигурации периода синхронизации приложений предназначен для регистрации приложения, для которого данные периодически обновляются или для изменения периода обновления в настройках уже установленного приложения.
[32] Например, приложения, требующие периодических обновлений, это приложения, для которых информация пользовательского профиля данных, принятых от контрагента через сеть, должна периодически обновляться, например приложения электронной почты и электронного секретаря. Приложения SNS также лучше работают с более периодическими обновлениями.
[33] Если режим конфигурация синхронизации приложений выбран, т.е., если период синхронизации приложения подлежит заданию или изменению, блок 220 управления синхронизирует период обновления приложения с периодами обновления других приложений с использованием калькулятора 225 оптимального периода синхронизации и планировщика 227 синхронизации.
[34] Альтернативно, блок 220 управления способен планировать период обновления приложения соответствующего приложения во время установки или активации или в отдельно назначенное время.
[35] Калькулятор 225 оптимального периода синхронизации проверяет период обновления, выбранный пользователем. Калькулятор 225 оптимального периода синхронизации проверяет заранее определенный период обновления синхронизации согласно периодам обновления всех остальных приложений, выполняющихся на терминале. Таким образом, если режим конфигурации периода синхронизации приложений включен, калькулятор 225 оптимального периода синхронизации вычисляет период синхронизации планирования на основании других приложений.
[36] Генератор 225 оптимального периода синхронизации вычисляет период обновления зарегистрированного приложения и наибольший общий делитель ранее сохраненных периодов обновления синхронизации. Период обновления синхронизации является синхронизированным периодом обновления приложений, которые могут выполняться на текущем терминале. Всякий раз, когда обновление периода регистрируется для приложения, калькулятор 225 оптимального периода синхронизации сравнивает период обновления синхронизации и периоды обновления ранее зарегистрированных приложений для вычисления наибольшего общего делителя.
a
b
gcd
[37] Например, когда периоды обновления приложений A и B равны T и T, соответственно, наибольший общий делитель (T) периодов обновления приложений вычисляется по формуле 1.
[38] Формула 1
[39]
x
[40] После определения периода обновления синхронизации с наибольшим общим делителем, если добавляется период обновления (T) нового приложения, наибольший общий делитель вычисляется по формуле 2.
[41] Формула 2
[42]
x
gcd_old
[43] В формуле 2, T обозначает период обновления вновь добавленного приложения, и T обозначает сохраненный период обновления синхронизации.
[44] Планировщик 227 синхронизации регулирует период обновления приложения, выбранного для регистрации, с использованием наибольшего общего делителя, вычисленного калькулятором 225 оптимального периода синхронизации. Планировщик 227 синхронизации планирует период обновления согласно вычисленному периоду синхронизации планирования.
[45] Планировщик 227 синхронизации сначала определяет, являются ли период обновления приложения, выбранного для регистрации, и ранее сохраненный период обновления синхронизации относительно простыми. Если период обновления приложения, выбранного для регистрации, и ранее сохраненный период обновления синхронизации являются относительно простыми, то планировщик 227 синхронизации устанавливает минимальное значение приложения, выбранного для регистрации, и ранее сохраненный период обновления синхронизации в качестве основной единицы синхронизации.
[46] Например, когда период обновления приложения, выбранного для регистрации, равен 6 мин, и ранее сохраненный период обновления синхронизации равен 7 мин, наибольший общий делитель периода обновления приложения, выбранного для регистрации, и ранее сохраненного периода обновления синхронизации равен 1. Соответственно, период обновления приложения, выбранного для регистрации, и ранее сохраненный период обновления синхронизации являются относительно простыми. В этом случае планировщик 227 синхронизации устанавливает основную единицу синхронизации равной 6 мин в качестве минимального значения периода обновления приложения, выбранного для регистрации, и ранее сохраненного периода обновления синхронизации. Эта основная единица синхронизации затем сохраняется в блоке 230 хранения в качестве нового периода обновления синхронизации.
[47] После задания основной единицы синхронизации, планировщик 227 синхронизации определяет, превышает ли период обновления приложения, выбранного для регистрации, ранее сохраненный период обновления синхронизации. Если период обновления приложения, выбранного для регистрации больше ранее сохраненного периода обновления синхронизации, и два значения являются относительно простыми, планировщик 227 синхронизации выбирает кратное, ближайшее к периоду обновления, из кратных основной единицы синхронизации, в качестве периода синхронизации планирования. Таким образом, планировщик 227 синхронизации выбирает период синхронизации планирования с использованием формулы 3.
[48] Формула 3
<mrow><msub><mi>T</mi><msup><mi>x</mi><mo>′</mo></msup></msub><mo>=</mo><mi>б</mi><mi>л</mi><mi>и</mi><mi>ж</mi><mi>а</mi><mi>й</mi><mi>ш</mi><mi>е</mi><mi>е</mi><mtext> </mtext><mi>з</mi><mi>н</mi><mi>а</mi><mi>ч</mi><mi>е</mi><mi>н</mi><mi>и</mi><mi>е</mi><mtext> </mtext><mi>м</mi><mi>е</mi><mi>ж</mi><mi>д</mi><mi>у</mi><mtext> </mtext><mrow><mo>[</mo><mrow><mfrac><mrow><msub><mi>T</mi><mi>x</mi></msub></mrow><mrow><msub><mi>T</mi><mrow><mi>gcd</mi><mo>_</mo><mi>o</mi><mi>l</mi><mi>d</mi></mrow></msub></mrow></mfrac></mrow><mo>]</mo></mrow><mo>∗</mo><msub><mi>T</mi><mrow><mi>gcd</mi><mo>_</mo><mi>o</mi><mi>l</mi><mi>d</mi></mrow></msub><mtext> </mtext><mi>и</mi><mtext> </mtext><mrow><mo>[</mo><mrow><mfrac><mrow><msub><mi>T</mi><mi>x</mi></msub></mrow><mrow><msub><mi>T</mi><mrow><mi>gcd</mi><mo>_</mo><mi>o</mi><mi>l</mi><mi>d</mi></mrow></msub></mrow></mfrac></mrow><mo>]</mo></mrow><mo>∗</mo><msub><mi>T</mi><mrow><mi>gcd</mi><mo>_</mo><mi>o</mi><mi>l</mi><mi>d</mi></mrow></msub></mrow>
[49]
x
x
gcd_old
x
x
gcd_old
[50] В формуле 3, T обозначает период синхронизации планирования выбранного в данный момент приложения. Если период обновления текущего приложения (T) больше сохраненного периода обновления синхронизации (T), T изменяется для значения, ближайшего к T из кратных T.
[51] Если же период обновления приложения, выбранного для регистрации, меньше или равен ранее сохраненному периоду обновления синхронизации, то планировщик 227 синхронизации изменяет период обновления синхронизации путем обращения к сконфигурированной основной единице синхронизации для задания периодов синхронизации планирования других приложений, с использованием формулы 4.
[52] Формула 4
<mrow><msub><mi>T</mi><mrow><mi>gcd</mi><mo>_</mo><mi>o</mi><mi>l</mi><msup><mi>d</mi><mo>′</mo></msup></mrow></msub><mo>=</mo><mi>б</mi><mi>л</mi><mi>и</mi><mi>ж</mi><mi>а</mi><mi>й</mi><mi>ш</mi><mi>е</mi><mi>е</mi><mtext> </mtext><mi>з</mi><mi>н</mi><mi>а</mi><mi>ч</mi><mi>е</mi><mi>н</mi><mi>и</mi><mi>е</mi><mtext> </mtext><mi>м</mi><mi>е</mi><mi>ж</mi><mi>д</mi><mi>у</mi><mtext> </mtext><mrow><mo>[</mo><mrow><mfrac><mrow><msub><mi>T</mi><mrow><mi>gcd</mi><mo>_</mo><mi>o</mi><mi>l</mi><mi>d</mi></mrow></msub></mrow><mrow><msub><mi>T</mi><mi>x</mi></msub></mrow></mfrac></mrow><mo>]</mo></mrow><mo>∗</mo><msub><mi>T</mi><mrow><mi>gcd</mi><mo>_</mo><mi>o</mi><mi>l</mi><mi>d</mi></mrow></msub><mtext> </mtext><mi>и</mi><mtext> </mtext><mrow><mo>[</mo><mrow><mfrac><mrow><msub><mi>T</mi><mrow><mi>gcd</mi><mo>_</mo><mi>o</mi><mi>l</mi><mi>d</mi></mrow></msub></mrow><mrow><msub><mi>T</mi><mi>x</mi></msub></mrow></mfrac></mrow><mo>]</mo></mrow><mo>∗</mo><msub><mi>T</mi><mi>x</mi></msub></mrow>
[53]
gcd_old
x
gcd_old
x
gcd_old
gcd_old
x
[54] В уравнении (4), T это период синхронизации, вновь вычисленный для других приложений. Если период обновления (T) текущего приложения меньше или равен сохраненному периоду синхронизации (T), и два значения являются относительно простыми, основная единица синхронизации устанавливается равной T, т.е. периоду обновления текущего приложения, в качестве минимального значения. Соответственно, периоды других синхронизированных приложений изменяются согласно вновь сконфигурированной основной единице синхронизации. T изменяется для значения, ближайшего к T из кратных T.
[55] Если период обновления приложения, выбранного для регистрации, и ранее сохраненный период обновления синхронизации не являются относительно простыми, то планировщик 227 синхронизации устанавливает вычисленный наибольший общий делитель в качестве основной единицы синхронизации. Сконфигурированная выше основная единица синхронизации сохраняется в блоке 230 хранения в качестве нового периода обновления синхронизации. При этом планировщик 227 синхронизации определяет, превышает ли период обновления приложения, выбранного для регистрации, ранее сохраненный период обновления синхронизации. Если период обновления приложения, выбранного для регистрации больше ранее сохраненного периода обновления синхронизации, то планировщик 227 синхронизации устанавливает кратное, ближайшее к периоду обновления, среди основной единицы синхронизации, т.е. наибольшего общего делителя, в качестве нового периода синхронизации планирования.
[56] Если же период обновления приложения, выбранного для регистрации, меньше или равен ранее сохраненному периоду обновления синхронизации, то планировщик 227 синхронизации выбирает основную единицу синхронизации, т.е. наибольший общий делитель, в качестве нового периода синхронизации планирования.
[57] Планировщик 227 синхронизации изменяет начальное время первоначального обновления приложения, подлежащего регистрации, соответствующее периодам синхронизации планирования других приложений. Таким образом, планировщик 227 синхронизации планирует так, что первоначальное начальное время периода обновления приложения равно обновлениям других приложений.
[58] Хотя на фиг. 2 калькулятор 225 оптимального периода синхронизации и планировщик 227 синхронизации показаны как отдельные устройства, настоящее изобретение не ограничивается этим. Например, калькулятор 225 оптимального периода синхронизации и планировщик 227 синхронизации могут входить в состав единого устройства.
[59] Блок 220 управления управляет так, что период синхронизации планирования и период обновления синхронизации в качестве основной единицы синхронизации, которые сконфигурированы для каждого приложения калькулятором 225 оптимального периода синхронизации и планировщиком 227 синхронизации, сохраняются в блоке 230 хранения.
[60] Если период обновления приложения извещается планировщиком 227 синхронизации, блок 220 управления обновляет соответствующее приложение. Таким образом, блок 220 управления проверяет, по меньшей мере, одно приложение, период синхронизации планирования которого обновляется согласно периоду синхронизации планирования, и обновляет, по меньшей мере, одно приложение.
[61] Блок 230 хранения сохраняет различные данные, обработанные на терминале, и программы для осуществления функций терминала. Дополнительно, блок 230 хранения сохраняет список 231 извещений под управлением блока 220 управления. Список 231 извещений включает в себя информацию о периоде синхронизации планирования для каждого приложения. Период синхронизации планирования конфигурируется при регистрации приложения и изменении периода обновления соответствующего приложения с использованием синхронизированного периода обновления всех приложений и периода обновления приложения, подлежащего регистрации. Блок 230 хранения сохраняет период обновления синхронизации в качестве основной единицы синхронизации под управлением блока 220 управления.
[62] Хотя это не показано на фиг. 2, терминал включает в себя другие компоненты в зависимости от функций терминала. Например, терминал включает в себя, по меньшей мере, один из блока отображения для отображения данных согласно операции терминала, блок ввода для генерации сигнала, соответствующего пользовательскому вводу в блок 220 управления, блок камеры для захвата изображения, модуль цифрового вещания для приема данных цифрового вещания, блок обработки аудиосигнала для обработки аудиоданных и т.д.
[63] Как описано выше, терминал в соответствии с вариантом осуществления настоящего изобретения способен устанавливать периоды обновления множественных приложений равными тому или иному значению. Следовательно, терминал может одновременно обновлять множество приложений одновременно согласно сконфигурированному периоду обновления, таким образом, снижая энергопотребление.
[64] На фиг. 3 показана схема, демонстрирующая конфигурацию OS блока управления для синхронизации между приложениями согласно варианту осуществления настоящего изобретения.
[65] Согласно фиг. 3, OS блока управления включает в себя уровень 310 приложений, каркас 320 приложений, системную библиотеку 330 и ядро 340.
[66] Уровень 310 приложений выполняет приложение 315. Уровень 320 каркаса приложений это набор классов и библиотек для реализации стандартной структуры прикладных программ для конкретной операционной системы. Таким образом, каркас 320 приложений управляет жизненным циклом приложения и отвечает за обработку событий и управление приложениями. В данном случае, каркас 320 приложений включает в себя менеджер 325 извещений для сообщения периода обновления синхронизация приложения.
[67] Системная библиотека 330 это набор массивов данных и файлов, где содержатся части операционной системы. В данном случае, системная библиотека 330 включает в себя планировщик 335 синхронизации для синхронизации периодов обновления приложений, выполняющихся на уровне 310 приложений.
[68] Ядро 340 отвечает за обработку прерываний, управление процессами, управление памятью, управление системой, программный интерфейс и основные функции операционной системы. Соответственно, ядро 340 загружается в память, нормальный доступ к которой запрещен. Таким образом, ядро 340 можно рассматривать как приложение для управления оборудованием.
[69] Сначала уровень 310 приложений запрашивает менеджер 325 извещений каркаса 320 приложений регистрацию периода синхронизации в приложении 315 на этапе 350. Менеджер 325 извещений запрашивает у планировщика 335 синхронизации добавить извещение в список извещений на этапе 355. Этот процесс повторяется, что обозначено ссылочной позицией 357, всякий раз при регистрации приложения.
[70] Планировщик 335 синхронизации вычисляет период синхронизации планирования соответствующего приложения с помощью калькулятора 360 оптимальной синхронизации и добавляет вычисленный период синхронизации планирования в список извещений 365 на этапе 363.
[71] На этапе 367 планировщик 335 синхронизации проверяет период синхронизации планирования, хранящийся в списке извещений, и затем период извещения для извещения уровня 310 приложений об обновлении посредством процессора 370 извещения. С наступлением периода извещения, планировщик 335 синхронизации сообщает уровню 310 приложений период синхронизации планирования приложения на этапе 375.
[72] На фиг. 4 показана схема, демонстрирующая список извещений для использования в способе управления приложениями согласно варианту осуществления настоящего изобретения.
[73] Согласно фиг. 4, список извещений, хранящийся в блоке 230 хранения, сортирует периоды синхронизации планирования по приложениям. Информация о каждом периоде синхронизации планирования включает в себя тип 415, начальное время (когда) 417, период 419 синхронизации планирования (интервал повторения) и т.д. В данном случае тип 415 включает в себя информацию о способе конфигурирования извещения для сообщения периода обновления, т.е. конфигурировать ли абсолютным временем (или координированным универсальным временем (UTC)) или относительным временем (например, 5 минут или 10 минут спустя). Тип 415 для использования на терминале представляется посредством ELAPSED_REALTIME_WAKEUP и RTC_WAKEUP, где ELAPSED_REALTIME_WAKEUP это информация для определения времени запуска извещения на основании системных часов терминала, так что время извещения определяется по текущему времени, и RTC_WAKEUP это информация для определения времени запуска извещения на основании времени, полученного из сети, так что время извещения определяется по абсолютному времени.
[74] Начальное время 417 обозначает время первоначального обновления, после регистрации приложения. Период синхронизации планирования 419 это информация об интервале обновления соответствующего приложения и сконфигурирован на основании основной единицы синхронизации, заданной для синхронизации с периодом обновления других приложений.
[75] На фиг. 5 показана схема, демонстрирующая первое местоположение планировщика на уровне OS блока управления терминала согласно варианту осуществления настоящего изобретения.
[76] Согласно фиг. 5, планировщик 535 синхронизации располагается на каркасе 530 приложений из ядра 510, системной библиотеки 520 и каркаса 530 приложений. Соответственно, периоды обновления приложения A 540a и приложения B 540b синхронизируются планировщиком 535 синхронизации, расположенным на каркасе 530 приложений. Планировщик 530 синхронизации выдает извещение для запуска обновлений приложения A 540a и приложения B 540b в соответствующие времена обновления согласно периоду синхронизации планирования.
[77] На фиг. 6 показана схема, демонстрирующая второе местоположение планировщика на уровне OS блока управления терминала согласно варианту осуществления настоящего изобретения.
[78] Согласно фиг. 6, планировщик 615 синхронизации может размещаться на ядре 610 из ядра 610 и системной библиотеки 620. Запрос синхронизации периода обновления для приложения A 640a и приложения B 640b поступает планировщику синхронизации на ядре 610 через системную библиотеку 620. Периоды обновления приложения A 640a и приложения B 640b синхронизируются планировщиком синхронизации, расположенным на ядре 610. Планировщик 615 синхронизации генерирует извещение, инициирующее обновления приложения A 640a и приложения B 640b через системную библиотеку 620 в соответствующее время обновления согласно периоду синхронизации планирования.
[79] На фиг. 7 показана блок-схема последовательности операций способа, демонстрирующая способ управления приложениями согласно варианту осуществления настоящего изобретения.
[80] Согласно фиг. 7, терминал находится в неактивном режиме на этапе 710 и отслеживает запрос режима конфигурации периода синхронизации приложений на этапе 715. В данном случае, режим конфигурации периода синхронизации приложений активируется при запрашивании регистрации приложения, требующего периодического обновления данных, или при выборе меню сброса периода обновления в настройках предпочтений установленного приложения.
[81] Если режим конфигурация синхронизации приложений выбран, терминал вычисляет период синхронизации планирования согласно приложениям на этапе 720. В основном, терминал сравнивает ранее сохраненный период обновления синхронизации согласно периоду обновления приложения с периодом обновления приложения, выбранным в режиме конфигурации периода синхронизации приложений для вычисления наибольшего общего делителя. Терминал синхронизирует период обновления выбранного приложения с периодом обновления других приложений, используя вычисленный наибольший общий делитель. Эта операция будет более подробно описана ниже со ссылкой на фиг. 8 и 9.
[82] На этапе 725 терминал изменяет начальное время обновления приложения на новое начальное время, определенное согласно вычисленному периоду синхронизации планирования. Таким образом, терминал управляет так, что начальное время обновления выбранного приложения синхронизируется с начальным временем обновления других приложений, периоды обновления которых уже синхронизированы. Затем терминал сохраняет период синхронизации планирования выбранного приложения на этапе 730.
[83] Если режим конфигурация синхронизации приложений не выбран на этапе 715, терминал определяет, выбран ли режим обновления приложений на этапе 735. Таким образом, терминал определяет, запланировано ли обновление на текущее время.
[84] Когда режим обновления приложений выбран, терминал проверяет, по меньшей мере, одно приложение, подлежащее обновлению, в текущее время на этапе 740. На этапе 745, терминал обновляет проверенные приложения. Таким образом, терминал запрашивает у подключенной сети данные для выполнения приложения и сохраняет данные, принятые из сети. Затем терминал отображает сохраненные данные или осуществляет соответствующую функцию при выполнении соответствующего приложения.
[85] Когда режим обновления приложений не выбран на этапе 735, терминал определяет, выбран ли режим выполнения приложения на этапе 750. Если режим выполнения приложения выбран, терминал выполняет соответствующее приложение на этапе 755. Если режим выполнения приложения не выбран, терминал остается в неактивном режиме на этапе 710.
[86] Как описано выше, терминал в соответствии с вариантом осуществления настоящего изобретения способен синхронизировать установленные на нем периоды обновления приложений. Поскольку приложения осуществляют обновления с синхронизированным периодом обновления, можно регулировать переходы между неактивным и активным режимом, таким образом, минимизируя энергопотребление.
[87] На фиг. 8 показана блок-схема последовательности операций способа, демонстрирующая процедуру вычисления периода синхронизации планирования способа управления приложениями согласно варианту осуществления настоящего изобретения.
[88] Согласно фиг. 8, терминал проверяет период обновления, выбранный пользователем на этапе 810. На этапе 820, терминал проверяет ранее сохраненный период обновления синхронизации согласно периодам обновления всех приложений, выполняющихся на терминале. На этапе 830 терминал вычисляет период синхронизации планирования согласно проверенному обновленному периоду и периоду обновления синхронизации. Далее этап вычисления периода синхронизации планирования будет описан более подробно со ссылкой на фиг. 9.
[89] На фиг. 9 показана блок-схема последовательности операций способа, демонстрирующая процедуру для конфигурации периода синхронизации приложений способа управления приложениями согласно варианту осуществления настоящего изобретения.
[90] Согласно фиг. 9, терминал вычисляет наибольший общий делитель периода обновления приложения, выбранного для регистрации и ранее сохраненного периода обновления синхронизации на этапе 910. Таким образом, всякий раз, когда регистрируется приложение, требующее периодического обновления, терминал вычисляет наибольший общий делитель обновленного периода соответствующего приложения и ранее сохраненного периода обновления синхронизации. Как описано выше, период обновления синхронизации является основной единицей синхронизации, вычисленной для синхронизации периодов обновления всех приложений, выполняющихся на терминале.
[91] На этапе 915 терминал определяет, являются ли период обновления и обновление синхронизации относительно простыми. Если период обновления и обновление синхронизации являются относительно простыми, терминал устанавливает минимальное значение между периодом обновления и периодом синхронизации в качестве основной единицы синхронизации на этапе 920.
[92] Если же период обновления и период обновления синхронизации не являются относительно простыми на этапе 915, терминал устанавливает вычисленный наибольший общий делитель в качестве основной синхронизации на этапе 925.
[93] После задания основной единицы синхронизации, терминал определяет, превышает ли период обновления период обновления синхронизации на этапе 930. Если период обновления больше периода обновления синхронизации, на этапе 935 терминал выбирает кратное, ближайшее к периоду обновления, из кратных основной единицы синхронизации, в качестве периода синхронизации планирования. Ранее сохраненный период обновления синхронизации изменяется на основную единицу синхронизации.
[94] Если же период обновления меньше или равен периоду обновления синхронизации на этапе 930, терминал выбирает основную единицу синхронизации в качестве периода синхронизации планирования на этапе 940. Таким образом, терминал изменяет период синхронизации планирования зарегистрированных приложений для сконфигурированной основной единицы синхронизации. Период обновления приложений, зарегистрированных с помощью терминала, изменяется на кратное, ближайшее к периоду обновления синхронизации из кратных основной единицы синхронизации, и ранее сохраненный период обновления синхронизации изменяется на основную единицу синхронизации.
[95] Фиг. 10 - схема, демонстрирующая принцип обновлений на основании планирования конфигурации периода синхронизации для каждого приложения согласно варианту осуществления настоящего изобретения.
[96] Согласно фиг. 10, период обновления приложения A 1010 равен 10 мин, период обновления приложения B 1020 равен 20 мин, и период обновления приложения C 1030 равен 5 мин. Однако начальные времена приложения A 1010, приложения 1020 B, и приложения 1030 C регулируются так, чтобы эти приложения одновременно начинали свои обновления. Приложение A 101, приложение B 1020 и приложение C 1030 осуществляют обновление с запланированным периодом обновления планирования.
[97] Опять же, приложение A 1010 осуществляет обновления с интервалами 10 минут, приложение B 1020 - с интервалами 20 минут, и приложение C 1030 - с интервалами 5 минут. Поскольку приложение A 1010, приложение B 1020 и приложение C 1030 синхронизируются в основной единице синхронизации 5 минут, все приложения A 1010, приложение B 1020 и приложение C 1030 осуществляют обновления в первоначальное начальное время. Приложение C 1030, которое имеет самый короткий период синхронизации, снова начинает обновление по истечении 5 минут, в свое время следующего интервала. Пять минут спустя, т.е. через 10 минут после первоначального начального времени, приложения A и C 1010 и 1030 одновременно осуществляют обновления. Затем приложение C 1030 осуществляет еще одно обновление 5 минут спустя.
[98] Затем приложения A, B и C 1010, 1020 и 1030, одновременно осуществляют обновления пять минут спустя, т.е. через 20 минут после первоначального начального времени.
[99] Как показано на фиг. 10, терминал в соответствии с вариантом осуществления настоящего изобретения способен регулировать хронирование перехода из неактивного режима в активный режим или наоборот.
[100] На фиг. 11A-11C показаны схемы, демонстрирующие процедуру синхронизации приложений согласно варианту осуществления настоящего изобретения. В частности, на фиг. 11A-11C, блок управления регистрирует запланированное время выполнения с системой в форме извещения или аналогичной форме для осуществления операции синхронизации каждого приложения в фоне. Кроме того, времена выражаются как времена относительно текущего времени (0 минут) на фиг. 11A.
[101] Согласно фиг. 11A, приложение A сконфигурировано для осуществления операции синхронизации с 30-минутными интервалами. Блок управления устанавливает интервал извещения для приложения A на 30 минут позже, на основании текущего времени (0 минут), и регистрирует извещение. После этого, в отсутствие изменения, извещение для приложения A для осуществления синхронизации будет активироваться в 30 минут, 60 минут, 90 минут и т.д. Однако регистрация другого приложения может влиять на периоды синхронизации приложения A.
[102] Согласно фиг. 11B, приложение B сконфигурировано для осуществления операции синхронизации с интервалами 15 минут. Соответственно, когда приложение B регистрируется в 5 минут, блок управления устанавливает интервал извещения для приложения A равным 15 минут по отношению к текущему времени (0 минут) приложения A, а не 5 минут, и регистрирует извещение. Если приложение A не рассматривается, операция синхронизации приложения B будет осуществляться в 5 минут, 30 минут, 35 минут, и т.д. от текущего времени (0 минут) на фиг. 11A.
[103] Однако, в соответствии с вариантом осуществления настоящего изобретения, 15 минут является наибольшим общим делителем периода синхронизации приложения A (30 минут) и периода синхронизации приложения B (15 минут) и становится единичным периодом синхронизации. Этот период можно выразить как общий период синхронизации, который применяется совместно. Аналогично, хронирование синхронизации, при котором приложение синхронизируется согласно единичному периоду синхронизации можно выразить как общее хронирование синхронизации.
[104] Согласно традиционному способу, извещение приложения B будет выдаваться после истекшего времени 20 минут после 15 минут от истекшего времени 5 минут. Однако, согласно этому варианту осуществления, первое извещение хронирование изменяется от истекшего времени 20 минут до истекшего времени 15 минут, что обозначено ссылочной позицией 1130.
[105] Хотя на фиг. 11B показано, что первоначальное хронирование синхронизации приложения отрегулировано до 15 минут от 20 минут, поскольку разность в 5 минут короче, чем разность в 10 минут между 30 минутами, т.е. следующим доступным хронированием синхронизации, и 20 минутами, можно также задавать первоначальное хронирование синхронизации для приложения B равным 30 мин.
[106] Альтернативно, изменение хронирования синхронизации для вновь добавленного приложения можно осуществлять по прошествии первоначального периода синхронизации. Например, первоначальная синхронизация приложения B выполняется в 20 минут, но затем второе хронирование синхронизации изменяется от 35 минут, т.е. спустя 15 минут, до истекшего времени 30 минут для синхронизации с приложением A. Согласно этому альтернативному варианту осуществления, первоначальное хронирование синхронизации поддерживается в отсутствие фактического выигрыша от изменения хронирования синхронизации, но изменяется при наличии выигрыша от изменения хронирования синхронизации.
[107] Согласно фиг. 11C, приложение C сконфигурировано для осуществления операции синхронизации с интервалами 8 минут. Блок управления устанавливает интервал извещения для приложения C равным 8 минут в текущее время (истекшее время 11 минут) и регистрирует извещение, что обозначено ссылочной позицией 1140.
[108] Согласно традиционному способу, хронирование генерации первого извещения приложения C будет в истекшее время 19 минут. Истекшее время 15 минут в качестве предыдущей единичной синхронизации 15 до момента времени, который обозначен ссылочной позицией 1140, и истекшее время 8 минут в качестве периода синхронизации приложения C являются относительно простыми. В соответствии с вариантом осуществления настоящего изобретения, если первоначальный единичный период синхронизации и период синхронизации вновь добавленного приложения являются относительно простыми, поддерживаются единичный период синхронизации и период синхронизации вновь добавленного приложения. Однако первое хронирование синхронизации приложения C изменяется путем обращения к хронированию синхронизации согласно традиционному единичному периоду синхронизации.
[109] Согласно традиционному способу, приложение C будет осуществлять первоначальную синхронизацию в истекшее время 19 минут. Однако, согласно этому варианту осуществления, первое хронирование синхронизации приложения C изменяется за истекшее время 15 минут. Однако, поскольку единичный период синхронизации и период синхронизации приложения C не изменяются, две синхронизации одновременно не осуществляются снова, пока не истекут 135 минут. Однако, поскольку изменение периода синхронизации может быть почти постоянно противоположным признаку приложения, период синхронизации не изменяется в этом варианте осуществления. Вследствие изменения первого хронирования синхронизации приложения C, другие приложения могут осуществлять синхронизацию каждые 120 минут с тем же хронированием.
[110] На фиг. 12 показана блок-схема последовательности операций способа, демонстрирующая процедуру конфигурации синхронизации способа управления приложениями согласно варианту осуществления настоящего изобретения.
[111] Согласно фиг. 12, целевое приложение синхронизации добавляется на этапе 1210. Например, если пользователь конфигурирует синхронизацию конкретного приложения или устанавливается новое приложение, требующее синхронизации, добавляется целевое приложение синхронизации. На этапе 1220, терминал записывает первоначальное хронирование синхронизации (начальное время), запрашиваемое приложением. Терминал регулирует первоначальное хронирование синхронизации, как описано выше со ссылкой на фиг. 2-11C.
[112] На этапе 1240 терминал определяет, запрашивается ли конфигурация синхронизации с одним и тем же идентификатором (или одним и тем же приложением). Если конфигурация синхронизации не запрашивается с одним и тем же идентификатором, терминал заканчивает процедуру синхронизации и осуществляет синхронизацию с периодом, определенным согласно приложению и измененным хронированием синхронизации.
[113] Если же конфигурация синхронизации запрашивается с одним и тем же идентификатором на этапе 1240, терминал определяет, идентичен ли начальное время новой конфигурации синхронизации начальному времени предыдущей конфигурации синхронизации, на этапе 1250.
[114] Если два начальных времени идентичны друг другу, терминалы поддерживают начальное время начального времени синхронизации, запрашиваемого приложением, без изменения на этапе 1260.
[115] Например, если соответствующее приложение запрашивает извещение, установленное на истекшее время 20 минут от начального времени, и терминал регулирует начальное время синхронизации регулируется до истекшего времени 15 минут, соответствующее приложение принимает извещение в истекшее время 15 минут. Однако, поскольку соответствующее приложение желает принимать извещение в истекшее время 20 минут, оно снова переустанавливает начальное время синхронизации на истекшее время 20 минут и запрашивает начало синхронизации. В этом случае, поскольку начальное время новой конфигурации синхронизации становится идентичным начальному времени предыдущей конфигурации синхронизации, которое записывается на этапе 1220, терминалы поддерживают начальное время начального времени синхронизации, запрашиваемого приложением, без изменения.
[116] Если начальное время новой конфигурации синхронизации не идентично начальному времени предыдущей конфигурации синхронизации, которое записано на этапе 1220, терминал изменяет и регистрирует начальное время синхронизации, например, как описано выше со ссылкой на фиг. 2-11C и затем осуществляет синхронизацию, на этапе 1270.
[117] Терминал способен сохранять идентификаторы извещения синхронизации (или соответствующие идентификаторы приложения) в форме списка для осуществления синхронизации, не изменяя, таким образом, начальное время синхронизации. Впоследствии, при обнаружении запроса извещения синхронизации для соответствующего идентификатора, терминал поддерживает извещение начальное время без изменения.
[118] На фиг. 13 показана блок-схема последовательности операций способа, демонстрирующая процедуру конфигурации синхронизации способа управления приложениями согласно варианту осуществления настоящего изобретения.
[119] Согласно фиг. 13, целевое приложение синхронизации добавляется на этапе 1310. Например, если пользователь конфигурирует синхронизацию конкретного приложения или устанавливается новое приложение, требующее синхронизации, добавляется целевое приложение синхронизации.
[120] На этапе 1320 терминал определяет, является ли соответствующее приложение приложением, допускающим изменение хронирования синхронизации. Допускают ли приложения изменение хронирования синхронизации, можно определять по-разному.
[121] Например, блок 230 хранения может сохранять список приложений, допускающих изменение хронирования синхронизации, т.е. белый список. В этом случае, блок 220 управления способен осуществлять регулировку хронирования синхронизации согласно процедуре, описанной со ссылкой на фиг. 2-11C, когда приложение, добавленное в качестве цели синхронизации, включено в белый список.
[122] Блок 230 хранения также способен сохранять список приложений, не допускающих изменение хронирования синхронизации, т.е. черный список. В этом случае, блок 220 управления способен осуществлять регулировку хронирования синхронизации согласно процедуре, описанной со ссылкой на фиг. 2-11C, когда приложение, добавленное в качестве цели синхронизации, не включено в черный список.
[123] Черный список и/или белый список может быть сконфигурирован пользователем. Пользователь может управлять приложениями, включенными в черный список и/или белый список, с использованием нормальных состояний выражения или вводя идентификаторы и имена приложений, подлежащих включению в черный список и/или белый список, и другую информацию. Пользователь может включать приложения, требующие периодического трафика и синхронизации, в белый список для эффективной регулировки хронирований синхронизации. Аналогично, пользователь может включать приложения, которые не требуют периодического трафика и синхронизации, в черный список для эффективной регулировки хронирования синхронизации.
[124] Согласно другому варианту осуществления настоящего изобретения, блок 220 управления включает приложение, зарегистрированное менеджером учетных записей или менеджером синхронизации OS терминала в белый список. Приложения, зарегистрированные менеджером учетных записей или менеджером синхронизации, регистрируют извещения, не сообщая блоку 220 управления информацию периода. Однако большинство приложений, зарегистрированных с помощью менеджер учетных записей или менеджера синхронизации, периодически осуществляют процедуры синхронизации. В этом случае, фактический период может представлять собой время от времени регистрации извещения до начального времени извещения. Таким образом, блок 220 управления оценивает период и регулирует извещение хронирование, как описано со ссылкой на фиг. 2-11C.
[125] Согласно другому варианту осуществления настоящего изобретения, блок 220 управления обеспечивает список установленных приложений или список выполняющихся в данный момент приложений на блоке отображения. Пользователь выбирает приложения, подлежащие включению в черный список или белый список с использованием устройства ввода. Для помощи в выборе пользователя, блок 220 управления способен отображать приложения, периодически генерирующие трафик, и приложения, генерирующие трафик сверх заранее определенной пороговой величины в фоне, чтобы отличать эти приложения от других приложений.
[126] Согласно другому варианту осуществления настоящего изобретения, терминал принимает черный список и/или белый список от внешнего объекта через блок связи. Например, черный список и/или белый список, хранящийся на внешнем объекте, может регулироваться оператором.
[127] Согласно вышеописанным вариантам осуществления, если производится определение на изменение хронирования синхронизации и/или периода приложения, блок 220 управления обеспечивает интерфейс, через который пользователь определяет, изменять ли хронирование и/или период синхронизации. Например, если производится определение на изменение хронирования синхронизации и/или периода приложения, блок 220 управления отображает извещающее сообщение "энергопотребление системы можно снизить, изменяя период синхронизации приложения от истекшего времени a минут до истекшего времени b минут. Хотите произвести изменение? (да/нет)" и изменяет хронирование и/или период синхронизации приложения или нет согласно пользовательскому вводу.
[128] Согласно другому варианту осуществления настоящего изобретения, блок 220 управления сортирует приложения по группам согласно периодам синхронизации приложений. Например, приложения, имеющие периоды синхронизации, кратные 7 (т.е. 7, 14, 21, 28,...), зачисляются в группу 7. Приложения, имеющие периоды синхронизации, кратные 5 (т.е., 5, 10, 15, 20,...), зачисляются в группу 5. Каждая группа представляется посредством самого короткого периода синхронизации в группе. Самый короткий период синхронизации является простым числом. Например, могут существовать группы 2, 3, 5, 7, 11, 13, 17, и т.д. Если период синхронизации равен 6, его можно логически отнести, как к группе 2, так и к группе 3.
[129] Согласно варианту осуществления настоящего изобретения, однако определенный период можно относить только к одной группе согласно к заранее определенному правилу. Например, период 6 минут зачисляется в группу 3, и период 35 минут зачисляется в группу 7. Заранее определенное правило указывает первичную группу, к которой относится определенный период.
[130] Согласно другому варианту осуществления настоящего изобретения, заранее определенное правило может состоять в предварительном определении приоритетов групп, благодаря чему, приложение, имеющее определенный период, зачисляется в группу, которой назначен наивысший приоритет. Например, если приоритет группы 7 выше приоритета группы 5, приложение, имеющее приоритет 35 минут, зачисляется в группу 7. Периоды приложений, отнесенные к одной и той же группе, регулируются для согласования друг с другом согласно процедурам, описанным со ссылкой на фиг. 2-10. Для приложений, отнесенной к другой группе, периоды синхронизации можно регулировать для согласования друг с другом при первом хронировании согласно варианту осуществления на фиг. 11C.
[131] Как описано выше, способ управления приложениями настоящего изобретения регулирует начальные времена и периоды синхронизации приложений, имеющих разные периоды синхронизации для согласования друг с другом, таким образом, минимизируя количество переходов между неактивным режимом и активным режимом, и снижая энергопотребление.
[132] Хотя настоящее изобретение конкретно показано и описано со ссылкой на его определенные варианты осуществления, специалисты в данной области техники могут предложить различные изменения в форме и деталях, не выходящие за рамки сущности и объема настоящего изобретения, заданных нижеследующей формулой изобретения и ее эквивалентами.