СПОСОБ И УСТРОЙСТВО УПРАВЛЕНИЯ ПРОЦЕССАМИ Российский патент 2024 года по МПК G06F9/50 

Описание патента на изобретение RU2829067C1

[0001] Настоящая заявка испрашивает приоритет заявки на патент Китая №. 202010993180.3, поданной в Национальное управление интеллектуальной собственности Китая 21 сентября 2020 г. и озаглавленной «СПОСОБ И УСТРОЙСТВО УПРАВЛЕНИЯ ПРОЦЕССАМИ» ("PROCESS CONTROL METHOD AND APPARATUS"), которая полностью включена в настоящий документ посредством ссылки.

ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРТЕНИЕ

[0002] Настоящая заявка относится к области терминалов и, более конкретно, к способу и устройству управления процессами.

УРОВЕНЬ ТЕХНИКИ

[0003] Как только в системе Android задействуется встроенный устранитель нехватки памяти (low memory killer (LMK)), важное для пользователя приложение может соответственно быть принудительно завершено. Таким образом, управление приложениями производителя оригинального оборудования (original equipment manufacturer (OEM)) активно принудительно завершает приложение, когда у устройства нехватка памяти, тем самым снижая частоту задействования LMK.

[0004] По мере обновления системы происходит "разбухание" памяти в системе и приложениях. Следовательно, при нехватке памяти на устройстве необходимо принудительно завершить больше приложений. В предшествующем уровне техники, поскольку все приложение принудительно завершается, приложение запускается пользователем в следующий раз посредством холодного запуска, что влияет на возможности использования. Например, во время игры в игру пользователь переключается на приложение WeChat, чтобы ответить на сообщение. Даже если времени очень мало, игровое приложение принудительно завершается системой. В результате пользователю приходится повторного запускать игру, что сильно ухудшает возможности использования.

[0005] Поэтому особенно важным становится то, как сбалансировать память и продолжить выполнение приложений.

СУЩНОСТЬ ИЗОБРЕТЕНИЯ

[0006] Настоящая заявка предоставляет способ и устройство управления процессами для реализации интеллектуального управления каждым процессом в терминальном устройстве и предотвращения принудительного завершения процесса, важного для пользователя, при высвобождении памяти, чтобы улучшить возможности использования.

[0007] В соответствии с первым аспектом предоставляется способ управления процессами, включающий в себя: получение информации, названия пакета и названия процесса касаемо первого процесса первого приложения, выполняющегося на терминальном устройстве; на основе информации о первом процессе определение принудительно завершить первый процесс; отмечание название пакета и название процесса, которые относятся к первому процессу; и на основе результатов отмечания названия пакета и названия процесса, которые относятся ко второму процессу, управление вторым процессом.

[0008] Существующий способ управления может реализовывать управление только на уровне приложения. Однако способ управления процессами в вариантах осуществления настоящей заявки может реализовывать управление на уровне процесса. Важен ли процесс для пользователя, определяется на основе результатов множества определений одной или более характеристик процесса, чтобы принять решение о продолжении выполнения или принудительном завершении процесса. Таким образом, для множества процессов в приложении некоторые процессы могут быть продолжены выполняться, а некоторые процессы могут быть принудительно завершены, вместо того, чтобы продолжать выполнение всего приложения и занимать лишнюю память, или вместо того, чтобы ради памяти принудительно завершать все приложение, важное для пользователя, что влияет на возможности использования. Когда процесс принудительно завершен, способ управления процессами в вариантах осуществления настоящей заявки дополнительно включает в себя отмечание названия пакета и названия процесса данного процесса, чтобы впоследствии управлять процессом на основе результатов отмечания.

[0009] В некоторых возможных вариантах реализации первого аспекта информация о первом процессе включает в себя: основной процесс, процесс переднего плана или фоновый процесс, процесс звукового взаимодействия, процесс навигации, процесс выгрузки или загрузки, процесс подсчета шагов, информацию adj и информацию adjType.

[0010] В соответствии со способом управления процессами в вариантах осуществления настоящей заявки дерево решений, полученное посредством обучения, используется для определения того, должен ли процесс быть принудительно завершен или продолжен выполняться, на основе информации о процессе, включающей в себя вышеизложенное. Важен ли процесс для пользователя, определяется на основе вышеизложенной информации о процессе, чтобы определить, следует ли принудительно завершить процесс.

[0011] В некоторых возможных вариантах реализации первого аспекта продолжительность управления является первым временем.

[0012] В соответствии со способом управления процессами в вариантах осуществления настоящей заявки процесс управляется в течение непрерывного периода времени, например, управление выполняется до тех пор, пока приложение процесса не будет удалено терминальным устройством.

[0013] В некоторых возможных вариантах реализации первого аспекта отмечание названия пакета и названия процесса первого процесса дополнительно включает в себя: отмечание первого момента, в который принудительно завершен первый процесс.

[0014] В некоторых возможных вариантах реализации первого аспекта, на основе результатов отмечания названия пакета и названия процесса, которые относятся ко второму процессу, управление вторым процессом включает в себя: запуск второго процесса; на основе результатов отмечания названия пакета и названия процесса, которые относятся ко второму процессу, определение того, что второй процесс является принудительно завершенным процессом; и запрет запуска второго процесса.

[0015] В некоторых возможных вариантах реализации первого аспекта управление вторым процессом на основе результата отмечания названия процесса второго процесса включает в себя: запуск второго процесса; на основе результатов отмечания названия пакета и названия процесса, которые относятся ко второму процессу, определение того, что второй процесс является принудительно завершенным процессом; и определение, является ли второй процесс воспринимаемым пользователем процессом, при этом воспринимаемый пользователем процесс включает в себя процесс переднего плана и/или процесс, видимый на интерфейсе, и/или процесс оповещения; если второй процесс является воспринимаемым пользователем процессом, разрешение запуска второго процесса; или, если второй процесс не является воспринимаемым пользователем процессом, запрет запуска второго процесса.

[0016] После принудительного завершения многие процессы неизбежно повторного запускаются автоматически. Если процессы не управляются, предыдущая работа по принудительному завершению будет неэффективной. Следовательно, способ управления процессами в вариантах осуществления настоящей заявки дополнительно включает в себя управление процессом, который автоматически повторного запускается после принудительного завершения. Согласно способу управления процессами в вариантах осуществления настоящей заявки, является ли процесс процессом, который повторного запускается после принудительного завершения, определяется на основе результатов отмечания названия пакета и названия процесса, которые относятся к этому процессу. Если процесс является процессом, который повторного запускается после принудительного завершения, то запуск этого процесса запрещен. В качестве альтернативы, способ управления процессами в вариантах осуществления настоящей заявки также может принимать решение о запрете или выполнении повторного запуска процесса посредством определения того, является ли повторно запущенный процесс воспринимаемым пользователем процессом. Если процесс является воспринимаемым пользователем процессом, то считается, что необходим повторный запуск процесса. Если процесс является процессом, который не может быть воспринят пользователем, то считается, что повторный запуск процесса не нужен.

[0017] В некоторых возможных вариантах реализации первого аспекта разрешение повторного запуска первого процесса дополнительно включает в себя: получение второго момента, в который повторного запускается первый процесс; и если интервал между вторым моментом и первым моментом меньше первой пороговой величины, увеличение количества допустимых случаев повторного запуска первого процесса на 1.

[0018] В некоторых возможных вариантах реализации первого аспекта перед принудительным завершением первого процесса способ дополнительно включает в себя: получение количества допустимых случаев повторного запуска первого процесса; и если количество допустимых случаев повторного запуска больше второй пороговой величины, продолжение выполнения первого процесса.

[0019] Поскольку характеристика процесса, определяемая механизмом интеллектуального принятия решений, ограничена, чтобы предотвратить ошибочное принудительное завершение процесса, важного для пользователя, способ управления процессами в вариантах осуществления настоящей заявки дополнительно включает в себя отказоустойчивый механизм интеллектуального принятия решений. То есть, когда результатом принятия решения по управлению является принудительное завершение, получается количество допустимых случаев повторного запуска процесса, и на основе количества допустимых случаев повторного запуска определяется, действительно ли процесс должен быть принудительно завершен.

[0020] Согласно второму аспекту предоставляется устройство управления процессами, включающее в себя: модуль получения, выполненный с возможностью получения информации, названия пакета и названия процесса касаемо первого процесса первого приложения, выполняющегося на терминальном устройстве; модуль определения, выполненный с возможностью определения на основе информации о первом процессе необходимости принудительного завершения первого процесса; и исполнительный модуль, выполненный с возможностью отмечания названия пакета и названия процесса, которые относятся к первому процессу. Исполнительный модуль дополнительно выполнен с возможностью управления вторым процессом на основе результатов отмечания названия пакета и названия процесса, которые относятся ко второму процессу.

[0021] В некоторых возможных вариантах реализации второго аспекта информация о первом процессе включает в себя: основной процесс, процесс переднего плана или фоновый процесс, процесс звукового взаимодействия, процесс навигации, процесс выгрузки или загрузки, процесс подсчета шагов, информацию adj и информацию adjType.

[0022] В некоторых возможных вариантах реализации второго аспекта продолжительность управления является первым периодом времени.

[0023] В некоторых возможных вариантах реализации второго аспекта то, что исполнительный модуль отмечает название пакета и название процесса первого процесса, дополнительно включает в себя: отмечание первого момента, в который принудительно завершен первый процесс.

[0024] В некоторых возможных вариантах реализации второго аспекта то, что исполнительный модуль на основе результатов отмечания названия пакета и названия процесса, которые относятся ко второму процессу, управляет вторым процессом, включает в себя: запуск второго процесса; на основе результатов отмечания названия пакета и названия процесса, которые относятся ко второму процессу, определение того, что второй процесс является принудительно завершенным процессом; и запрет запуска второго процесса.

[0025] В некоторых возможных вариантах реализации второго аспекта то, что исполнительный модуль на основе результатов отмечания названия пакета и названия процесса, которые относятся ко второму процессу, управляет вторым процессом, включает в себя: запуск второго процесса; на основе результатов отмечания названия пакета и названия процесса, которые относятся ко второму процессу, определение того, что второй процесс является принудительно завершенным процессом; и определение, является ли второй процесс воспринимаемым пользователем процессом, при этом воспринимаемый пользователем процесс содержит процесс переднего плана и/или процесс, видимый на интерфейсе, и/или процесс оповещения; если второй процесс является воспринимаемым пользователем процессом, разрешение запуска второго процесса; или, если второй процесс не является воспринимаемым пользователем процессом, запрет запуска второго процесса.

[0026] В некоторых возможных вариантах реализации второго аспекта то, что исполнительный модуль разрешает повторно запустить первый процесс, дополнительно включает в себя: получение второго момента, в который повторного запускается первый процесс; и если интервал между вторым моментом и первым моментом меньше первой пороговой величины, увеличение количества допустимых случаев повторного запуска первого процесса на 1.

[0027] В некоторых возможных вариантах реализации второго аспекта перед тем, как исполнительный модуль принудительно завершит первый процесс, способ дополнительно включает в себя: получение количества допустимых случаев повторного запуска первого процесса; и если количество допустимых случаев повторного запуска больше второй пороговой величины, продолжение выполнения первого процесса.

[0028] Согласно третьему аспекту электронное устройство включает в себя: память, приспособленную для хранения программы; и процессор, выполненный с возможностью исполнения программы, хранящейся в памяти, при этом, когда программа, хранящаяся в памяти, исполняется, процессор выполнен с возможностью осуществления способа в первом аспекте и возможных вариантах реализации первого аспекта и способа во втором аспекте и возможных вариантах реализации второго аспекта.

[0029] В соответствии с четвертым аспектом предоставляется машиночитаемый носитель данных, при этом машиночитаемый носитель данных хранит программный код. Программный код включает в себя инструкции для выполнения некоторых или всех этапов способа в первом аспекте и возможных вариантах реализации первого аспекта и способа во втором аспекте и возможных вариантах реализации второго аспекта.

[0030] Согласно пятому аспекту это техническое решение обеспечивает компьютерный программный продукт. Когда компьютерный программный продукт выполняется на электронном устройстве, обеспечивается выполнение электронным устройством способа управления процессами в первом аспекте и возможных вариантах реализации первого аспекта и способа во втором аспекте и возможных вариантах реализации второго аспекта.

[0031] Согласно шестому аспекту настоящее техническое решение обеспечивает микросхемную систему, при этом микросхемная система включает в себя по меньшей мере один процессор. Когда программные инструкции исполняются по меньшей мере в одном процессоре, функции возможного способа в первом аспекте и возможных вариантах реализации первого аспекта и возможного способа во втором аспекте и возможных вариантах реализации второго аспекта реализуются на электронном устройстве.

КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ

[0032] Фиг. 1 представляет собой схематическое представление структуры электронного устройства в соответствии с одним вариантом осуществления настоящей заявки;

[0033] фиг. 2 представляет собой схематическую блок-схему пользовательского интерфейса в соответствии с одним вариантом осуществления настоящей заявки;

[0034] фиг. 3 представляет собой схематическое представление архитектуры системы, к которой применяется способ управления процессами в соответствии с одним вариантом осуществления настоящей заявки;

[0035] фиг. 4 представляет собой блок-схему последовательности операций способа управления процессами в соответствии с одним вариантом осуществления настоящей заявки;

[0036] фиг. 5 представляет собой схематическую блок-схему механизма интеллектуального принятия решений в соответствии с одним вариантом осуществления настоящей заявки;

[0037] фиг. 6 представляет собой схематическую блок-схему управления процессом повторного запуска и корректировки механизма интеллектуального принятия решений в соответствии с одним вариантом осуществления настоящей заявки;

[0038] фиг. 7 представляет собой схематическую блок-схему устройства управления процессами в соответствии с одним вариантом осуществления настоящей заявки; и

[0039] фиг. 8 представляет собой схематическое представление структуры устройства управления процессами в соответствии с одним вариантом осуществления настоящей заявки.

ОПИСАНИЕ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯ

[0040] Нижеследующее ясно и полностью описывает технические решения согласно вариантам осуществления настоящей заявки со ссылкой на прилагаемые чертежи согласно вариантам осуществления настоящей заявки. Понятно, что описанные варианты осуществления являются некоторыми, но не всеми вариантами осуществления настоящей заявки. Все другие варианты осуществления, полученные специалистом в данной области техники на основе вариантов осуществления настоящей заявки без творческих усилий, подпадают под объем защиты настоящей заявки.

[0041] Термины, используемые в следующих вариантах осуществления, предназначены только для целей описания конкретных вариантов осуществления, но не предназначены для ограничения настоящей заявки. При использовании в описании настоящей заявки и прилагаемой формуле изобретения выражения сформулированные в единственном числе, а также с помощью следующих терминов: «вышеизложенное», «такой-то» и «этот» предназначены также для включения таких выражений, как «один или более», если иное прямо не указано в контексте. Далее следует понимать, что в следующих вариантах осуществления настоящей заявки «по меньшей мере один» или «один или более» означает один, два или более. И/или описывает отношение ассоциации между ассоциированными объектами и указывает, что могут существовать три отношения. Например, A и/или B могут указывать на следующие случаи: существует только A, существуют и A, и B, и существует только B, при этом A и B могут быть в единственном или множественном числе. Символ «/» обычно указывает взаимосвязь «или» между ассоциированными объектами.

[0042] Ссылка на «вариант осуществления» или «некоторые варианты осуществления» или тому подобное, описанные в этом документе настоящей заявки, означает, что конкретный признак, структура или характеристика, описанные со ссылкой на вариант осуществления, включены в один или более вариантов осуществления. Следовательно, такие утверждения, как «в одном варианте осуществления», «в некоторых вариантах осуществления», «в некоторых других вариантах осуществления» и «в других вариантах осуществления», встречающиеся в разных местах данного описания, не обязательно означают, что они относятся к одному и тому же варианту осуществления. Вместо этого утверждения означают «один или более, но не все варианты осуществления», если иное специально не подчеркнуто другим образом. Все термины «включают в себя», «имеют» и их варианты означают «включают в себя, но не ограничиваются этим», если иное специально не подчеркнуто другим образом.

[0043] Способ управления процессами, представленный в вариантах осуществления настоящей заявки, может быть применен к электронному устройству. Электронное устройство может быть терминальным устройством, и терминальное устройство также может упоминаться как пользовательское оборудование (User Equipment (UE)), мобильная станция (Mobile Station (MS)), мобильный терминал (Mobile Terminal) и т.п. В необязательном порядке терминальное устройство (называемое терминалом) может иметь возможность осуществления связи с одной или более базовыми сетями с использованием сети радиодоступа (Radio Access Network (RAN)). Например, терминал может быть мобильным телефоном (или упоминаться «сотовым» телефоном), телевизионной приставкой, носимым устройством, устройством Интернета вещей (Internet of Things (IOT)), компьютером по мобильному принципу или чем-то подобным. Например, терминал альтернативно может быть портативным, карманным, носимым в руках, встроенным в компьютер или находящимся в транспортном средстве мобильным устройством. Следует понимать, что в дополнение к терминальному устройству способ управления процессами, предусмотренный в вариантах осуществления настоящей заявки, также может быть применен к компьютерной системе другого типа.

[0044] Фиг. 1 представляет собой схематическое представление структуры электронного устройства в соответствии с одним вариантом осуществления настоящей заявки. Как показано на фиг. 1, электронное устройство 100 включает в себя память 180, процессор 150 и устройство 140 отображения. В памяти 180 хранится компьютерная программа (или называемая программным кодом), и компьютерная программа включает в себя программу 182 операционной системы, приложение 181 и т.п. Процессор 150 выполнен с возможностью считывания компьютерной программы из памяти 180 и последующего выполнения способа, задаваемого компьютерной программой. Например, процессор 150 считывает программу 182 операционной системы для выполнения операционной системы на электронном устройстве 100 и реализации различных функций операционной системы, или считывает одно или более приложений 181 для выполнения приложения на электронном устройстве или обработки сообщения широковещательной передачи приложения и т.п.

[0045] Процессор 150 может включать в себя один или более процессоров. Например, процессор 150 может включать в себя один или более центральных блоков обработки или может включать в себя один или более центральных блоков обработки и один или более процессоров приложений. Когда процессор 150 включает в себя множество процессоров, это множество процессоров может быть интегрировано в одну и ту же микросхему, или каждый из множества процессоров может быть независимой микросхемой. Один процессор может включать в себя одно или более процессорных ядер (или называемых вычислительными ядрами). Следующие варианты осуществления описаны на примере многоядерного процессора. Однако способ управления процессами, предусмотренный в вариантах осуществления настоящей заявки, также может быть применен к одноядерному процессору. Принцип работы одноядерного процессора с разделением времени используется для параллельного выполнения множества приложений.

[0046] Кроме того, память 180 дополнительно хранит другие данные 183 в дополнение к компьютерной программе. Другие данные 183 могут включать в себя данные, сгенерированные после запуска операционной системы 182 или приложения 181 и т.п. Данные включают в себя системные данные (например, параметр конфигурации операционной системы) и пользовательские данные, например, информация об использовании ресурсов для каждого приложения является типичными пользовательскими данными.

[0047] Память 180 обычно включает в себя внутреннюю память и внешнюю память. Внутренняя память может быть оперативной памятью, постоянной памятью, кэш-памятью и т.п. Внешняя память может быть жестким диском, оптическим диском, диском универсальной последовательной шины (Universal Serial Bus (USB)), гибким диском, ленточным накопителем и т.п. Компьютерная программа обычно хранится во внешней памяти, и процессор загружает компьютерную программу из внешней памяти во внутреннюю память перед обработкой компьютерной программы.

[0048] Программа 182 операционной системы включает в себя компьютерную программу, которая может реализовывать способ управления ресурсами, предусмотренный в вариантах осуществления настоящей заявки. Следовательно, после того как процессор 150 считывает программу 182 операционной системы и запускает операционную систему, операционная система может быть снабжена способом управления процессами, предусмотренным в вариантах осуществления настоящей заявки.

[0049] Электронное устройство 100 может дополнительно включать в себя устройство 130 ввода для приема входной цифровой информации, символьной информации или контактного касания/бесконтактного жеста, а также для генерирования входного сигнала, относящегося к пользовательским настройкам и управлению функциями электронного устройства 100. В частности, в вариантах осуществления настоящей заявки устройство 130 ввода может включать в себя сенсорную панель 131. Сенсорная панель 131, также называемая сенсорным экраном, может собирать сенсорную операцию, выполненную пользователем на сенсорной панели 131 или рядом с ней (например, операцию, выполненную пользователем на сенсорной панели 131 или на сенсорной панели 131 с помощью любого подходящего предмета или приспособления, такого как палец или стилус), и управлять соответствующим соединенным устройством на основе предварительно установленной программы. В необязательном порядке сенсорная панель 131 может включать в себя две части: устройство обнаружения прикосновения и сенсорный контроллер. Устройство обнаружения прикосновения определяет направление касания пользователя, обнаруживает сигнал, вызванный операцией касания, и передает сигнал сенсорному контроллеру. Сенсорный контроллер принимает информацию касания от устройства обнаружения касания, преобразует информацию касания в координаты точки касания и отправляет координаты точки касания в процессор 150 и способен принимать и выполнять команду, отправленную процессором 150. Например, пользователь дважды касается пиктограммы приложения на сенсорной панели 131 с помощью пальца. Устройство обнаружения касания обнаруживает сигнал, вызванный двойным касанием, и затем передает сигнал сенсорному контроллеру. Затем сенсорный контроллер преобразует сигнал в координаты и отправляет координаты в процессор 150. Процессор 150 выполняет такую операцию, как запуск приложения на основе координат и типа (например, двойное касание) сигнала. Наконец, рабочий интерфейс приложения отображается на панели 141 отображения, чтобы «открыть» приложение.

[0050] Сенсорная панель 131 может быть реализована множеством типов, таких как резистивный тип, емкостной тип, инфракрасный тип и тип с поверхностными акустическими волнами. В дополнение к сенсорной панели 131 устройство 130 ввода может дополнительно включать в себя другое устройство 132 ввода. Другое устройство 132 ввода может включать в себя, помимо прочего, одну или более физических клавиатур, функциональную клавишу (такую как клавиша регулировки громкости или клавиша включения/выключения питания), шаровой манипулятор, мышь, джойстик и т.п.

[0051] Устройство 140 отображения, включенное в электронное устройство 100, включает в себя панель 141 отображения и выполнено с возможностью отображения информации, введенной пользователем, или информации, предоставленной пользователю, различных интерфейсов меню электронного устройства 100 и т.п., и в основном выполнено с возможностью отображения информации, такой как пользовательский операционный интерфейс приложения в вариантах осуществления настоящей заявки. В необязательном порядке панель 141 отображения может быть выполнена в виде жидкокристаллического дисплея (Liquid Crystal Display (LCD)), органического светоизлучающего диода (Organic Light-Emitting Diode (OLED)) и т.п. В некоторых других вариантах осуществления сенсорная панель 131 может закрывать панель 141 отображения, образуя экран сенсорного дисплея.

[0052] В дополнение к вышеизложенному, электронное устройство 100 может дополнительно включать в себя источник 190 питания для подачи питания в другой модуль и камеру 160 для фото- или видеосъемки. Электронное устройство 100 может дополнительно включать в себя один или более датчиков 120, например, датчик силы тяжести, датчик ускорения, датчик освещенности и т.п. Электронное устройство 100 может дополнительно включать в себя радиочастотную (англ: Radio Frequency (RF)) схема 110, выполненную с возможностью осуществления связи по сети с беспроводным сетевым устройством, и может дополнительно включать в себя модуль 170 Wi-Fi, выполненный с возможностью осуществления связи по сети Wi-Fi с другим устройством и т.п.

[0053] В последующих вариантах осуществления способ управления процессами, представленный в вариантах осуществления настоящей заявки, описан с использованием электронного устройства в качестве исполнительного органа. Способ управления процессами, предусмотренный в вариантах осуществления настоящей заявки, может быть реализован в программе 182 операционной системы, показанной на фиг. 1.

[0054] В процессе выполнения приложения электронного устройства выполнение приложения занимает относительно большое количество ресурсов, в результате чего возникает проблема чрезмерно низкой скорости выполнения или приостановки выполнения ("зависания") программы операционной системы, которая замедляется или приостанавливается. Разработка приложений использует многопроцессный механизм. После запуска приложения обычно активны несколько процессов, и каждый из них занимает часть памяти. Например, после запуска WeChat есть шесть активных процессов, которые в сумме занимают более 600 МБ памяти. Поскольку приложения являются сложными, такие проблемы, как взаимное пробуждение процессов в приложениях и сбой основного процесса, могут возникнуть после принудительного завершения приложения. Таким образом, текущее управление приложениями (например, принудительное завершение приложений и управление автоматическим запуском) в OEM - это управление, основанное на размере приложения. То есть процесс приложения соответствует требованию защиты, в этом случае защищено все приложение. Даже если LMK задействуется, приложение не принудительно завершается, и память приложения не может быть высвобождена. В результате, чтобы компенсировать нехватку памяти, необходимо закрыть больше приложений.

[0055] Например, когда пользователь выполняет сравнение цен, переключаясь между приложениями Taobao, JD.com и Pinduoduo, а память мобильного телефона относительно мала, приложения, выполняющиеся в мобильном телефоне, принудительно завершаются. Предполагая, что в браузере есть процесс загрузки в фоновом режиме, для обеспечения плавной загрузки обычная технология защищает весь процесс приложения браузера и может принудительно завершить использование памяти только приложения Taobao, Jingdong или Pinduoduo. В результате пользователь не может реализовать переключение между приложениями для сравнения цен, что ухудшает возможности использования.

[0056] Существующее управление приложениями основано на размере приложения, и часть памяти приложения не может быть обратно предоставлена для использования. Кроме того, не может быть решена проблема с автоматическим запуском приложения после его принудительного завершения. Следовательно, вариант осуществления настоящей заявки обеспечивает способ управления процессами и может реализовывать управление на основе размера процесса, так что управление становится более точным. Кроме того, можно решить проблему повторного запуска одного процесса после его принудительного завершения, чтобы улучшить возможности использования.

[0057] Фиг. 2 представляет собой схематическую блок-схему пользовательского интерфейса в соответствии с одним вариантом осуществления настоящей заявки. Электронное устройство на фиг. 2 может быть электронным устройством 100 на фиг.1, и пользовательский интерфейс, показанный на фиг. 2, отображается с использованием устройства 140 отображения. Как показано на фиг. 2, пользователь может просматривать состояние процессов в электронном устройстве с помощью дисплея процессов. Дисплей процессов может отображать одно или более приложений, выполняющихся в электронном устройстве. Например, «Здоровье», «Камера», «Альбом», «Настройки» и тому подобное. Состояние запущенного процесса приложения можно специально просмотреть, нажав на конкретное приложение. Например, нажав «Здоровье», можно увидеть, что выполняются три процесса приложения, каждый из которых занимает разные процессоры и память. В соответствии со способом управления процессами в вариантах осуществления настоящей заявки процесс приложения может управляться автоматически. После принудительного завершения процесса он не отображается на дисплее процессов.

[0058] Фиг. 3 представляет собой схематическое представление архитектуры системы, к которой применяется способ управления процессами в соответствии с одним вариантом осуществления настоящей заявки.

[0059] Модуль идентификации выполнен с возможностью идентификации информации состояния приложения и состояния процесса.

[0060] Исполнительный модуль выполнен с возможностью принудительного завершения одного процесса.

[0061] Модуль принятия решений выполнен с возможностью принятие решения, принудительно завершить ли отдельный процесс или перехватить запуск этого отдельного процесса.

[0062] Модуль перехвата выполнен с возможностью перехвата автоматического запуска принудительно завершенного процесса.

[0063] Конечный автомат памяти проверяет текущее состояние памяти терминального устройства с интервалами, при этом интервал может быть предварительно установленным вручную значением времени. Когда память терминального устройства достигает нехватки памяти, например, достигает предварительно установленного значения нехватки памяти, исполнительный модуль получает все процессы, выполняющиеся в данный момент на терминальном устройстве, и отдельно помещает эти процессы в модуль принятия решений для осуществления принятия решений. При принятии решения касаемо процесса модуль принятия решений запрашивает результат идентификации состояния приложения и результат идентификации состояния процесса у модуля идентификации, решает, следует ли принудительно завершить один процесс, на основе состояния системы и пользовательских настроек, и возвращает результат решения в исполнительный модуль. Исполнительный модуль определяет, следует ли выполнить принудительное завершение, на основе результата решения. Если необходимо принудительно завершить один процесс, исполнительный модуль принудительно завершает один процесс. Если нет необходимости в принудительном завершении одного процесса, исполнительный модуль определяет следующий процесс. Если после принудительного завершения одного процесса этот процесс автоматически запускается снова, запуск процесса Android зависит от четырех больших компонентов (активности, обслуживания, поставщика контента и получателя широковещательной рассылки). Таким образом, отмечается точка перехвата, при этом запускается каждый из четырех больших компонентов, и решение о том, выполнять ли перехват, принимается при запуске четырех больших компонентов. Если процесс необходимо перехватить, то происходит непосредственное в возвращение в то место, где запускается каждый из четырех больших компонентов. Решение состоит в том, чтобы решить, следует ли перехватывать автоматический запуск отдельного процесса, на основе того, является ли процесс воспринимаемым пользователем процессом. Если отдельный процесс является воспринимаемым пользователем процессом, то разрешается запуск этого отдельного процесса. Если отдельный процесс не является воспринимаемым пользователем процессом, модуль перехвата перехватывает этот процесс и запрещает его запуск.

[0064] Фиг. 4 представляет собой блок-схему последовательности операций способа управления процессами в соответствии с одним вариантом осуществления настоящей заявки. Как показано на фиг. 4, включены этапы с 401 по 403, и эти этапы подробно описаны ниже.

[0065] S401. Получение информации, названия пакета и названия процесса, которые относятся к первому процессу первого приложения, выполняющегося на терминальном устройстве.

[0066] В соответствии со способом управления процессами в вариантах осуществления настоящей заявки можно управлять всеми выполняющимися процессами в терминальном устройстве. Здесь в качестве примера для описания взят один процесс в приложении. Для процесса управления другим процессом обратитесь к процессу управления процессом. Название пакета - это уникальный идентификатор пакета приложения Android. Когда система Android управляет приложением, название пакета также используется для индексации. Название пакета определяется в начале создания проекта приложения Android. Когда приложение Android запущено, название процесса соответствующего процесса обычно является названием пакета.

[0067] S402. Определение на основе информации о первом процессе принудительно завершить первый процесс.

[0068] В частности, информация о характеристиках первого процесса включает в себя информацию о том, является ли первый процесс процессом переднего плана/фоновым процессом, является ли первый процесс основным процессом, adj и adjType, является ли первый процесс процессом звукового взаимодействия, является ли первый процесс процессом процесс подсчета шагов для здоровья, является ли первый процесс процессом, использующим GPS, состоянием использования трафика первого процесса и т.п. Следует понимать, что вышеизложенное является просто примером информации о характеристиках процесса в способе управления процессами в вариантах осуществления настоящей заявки и не представляет собой ограничение вариантов осуществления настоящей заявки. В дополнение к приведенному выше примеру информация о характеристиках в вариантах осуществления настоящей заявки может дополнительно включать в себя информацию о характеристиках другого возможного процесса.

[0069] Определение принудительно завершить первого процесса основано на информации о первом процессе. В частности, информация о первом процессе может быть введена в механизм интеллектуального принятия решений. Механизм интеллектуального принятия решений выводит результат решения по управлению первого процесса на основе информации о первом процессе, при этом результат решения по управлению включает в себя принудительное завершение и продолжение выполнения. Механизм интеллектуального принятия решений получается посредством предварительного обучения на основе пробных данных, и пробные данные включают в себя информацию о пробном процессе и результат решения по управлению пробным процессом. Например, механизм интеллектуального принятия решений может быть получен на основе алгоритма дерева решений. Информация о пробном процессе может быть информацией о процессе в предыдущем примере. Результат решения по управлению пробного процесса может быть определен вручную. Например, если пробный процесс является процессом переднего плана, результатом принятия решения по управлению является продолжение выполнения пробного процесса, а если пробный процесс является фоновым процессом, определяется другая информация о характеристиках пробного процесса. Механизм интеллектуального принятия решений выводит результат решения по управлению первого процесса на основе информации о первом процессе, которая может конкретно относиться к описанию дерева решений механизма интеллектуального принятия решений на фиг. 5. Для краткости здесь не описываются подробности вариантов осуществления настоящей заявки. В частности, механизм интеллектуального принятия решений может последовательно определять множество характеристик первого процесса и выводить результат решения по управлению после последовательного определения множества характеристик. Если результатом принятия решения по управлению является принудительное завершение, первый процесс принудительно завершается; или, если результатом решения по управлению является продолжение выполнения, то первый процесс продолжает выполняться. В частности, результатом принятия решения по управлению первого процесса здесь является принудительное завершение первого процесса, после чего выполняются следующие этапы.

[0070] S403. Отмечание названия пакета и названия процесса, которые относятся к первому процессу.

[0071] В частности, после принудительного завершения первого процесса название пакета и название процесса, относящиеся к первому процессу, отмечаются, и процесс отмечается как принудительно завершенный процесс.

[0072] S404. На основе результатов отмечания названия пакета и названия процесса, которые относятся ко второму процессу, управление вторым процессом.

[0073] Второй процесс может быть первым процессом, который повторного запускается после принудительного завершения, или может быть другим процессом, который не был принудительно завершен. Принудительно завершен ли второй процесс, можно определить, используя название пакета и название процесса, которые относятся ко второму процессу.

[0074] Существующий способ управления может реализовать только управление на уровне приложения. Однако способ управления процессами в вариантах осуществления настоящей заявки может осуществлять управление на уровне процесса. Важен ли процесс для пользователя, определяется на основе результатов множества определений одной или более характеристик процесса, чтобы принять решение о продолжении выполнения или принудительном завершении процесса. Таким образом, для множества процессов в приложении некоторые процессы могут быть продолжены выполняться, а некоторые процессы могут быть принудительно завершены, вместо того, чтобы продолжать выполнение всего приложения и занимать лишнюю память, или вместо того, чтобы ради памяти принудительно завершать все приложение, важное для пользователя, что влияет на возможности использования.

[0075] В необязательном порядке продолжительность управления вторым процессом является первым периодом времени. Например, первый период времени может быть от момента времени, когда название пакета и название процесса, относящиеся ко второму процессу, отмечены, до момента времени, когда второй процесс удален из электронного устройства.

[0076] В необязательном порядке, если результатом принятия решения по управлению для первого процесса является принудительное завершение, название пакета и название процесса, относящиеся к первому процессу, отмечаются после принятия решений о принудительном завершении первого процесса. Способ в вариантах осуществления настоящей заявки дополнительно включает в себя: отмечание момента, в который принудительно завершен первый процесс, при этом момент отмечается как первый момент, так что первый процесс определяется, когда первый процесс запускается снова впоследствии.

[0077] В необязательном порядке, управление вторым процессом на основе результатов отмечания названия пакета и названия процесса, которые относятся ко второму процессу, включает в себя: когда второй процесс запущен, определение, принудительно завершен ли второй процесс, на основе результатов отмечания названия пакета и названия процесса, которые относятся ко второму процессу. Если второй процесс является принудительно завершенным процессом, запуск второго процесса напрямую запрещается.

[0078] В необязательном порядке, способ в вариантах осуществления настоящей заявки дополнительно включает в себя: когда второй процесс запущен, определение, является ли второй процесс принудительно завершенным процессом, на основе результатов отмечания названия пакета и названия процесса, которые относятся ко второму процессу. Если второй процесс является принудительно завершенным процессом, дополнительно определяется, является ли второй процесс воспринимаемым пользователем процессом. Воспринимаемый пользователем процесс включает в себя, но не ограничивается этим, следующие случаи: процесс является процессом переднего плана, процесс имеет видимый интерфейс, процесс представляет собой тип процесса оповещения и т.п. Если запущенный второй процесс не является воспринимаемым пользователем процессом, повторный запуск второго процесса запрещается; или если второй процесс является воспринимаемым пользователем процессом, разрешается повторный запуск второго процесса, и момент повторного запуска второго процесса записывается и записывается как второй момент.

[0079] В необязательном порядке, когда разрешен запуск второго процесса, способ в вариантах осуществления настоящей заявки дополнительно включает в себя: сравнение второго момента с первым моментом, и если интервал между вторым моментом и первым моментом меньше первой пороговой величины, увеличение количества допустимых случаев повторного запуска первого процесса на 1. Первая пороговая величина может быть заданным вручную значением времени.

[0080] После принудительного завершения многие процессы неизбежно повторного запускаются автоматически. Если процессы не управляются, предыдущая работа по принудительному завершению будет неэффективной. Следовательно, способ управления процессами в вариантах осуществления настоящей заявки дополнительно включает в себя управление процессом, который автоматически повторного запускается после принудительного завершения. Принятие решения о запрете или выполнении повторного запуска процесса посредством определения того, является ли повторно запущенный процесс воспринимаемым пользователем процессом. Если процесс является воспринимаемым пользователем процессом, то считается, что необходим повторный запуск процесса. Если процесс является процессом, который не может быть воспринят пользователем, то считается, что повторный запуск процесса не нужен.

[0081] В необязательном порядке, на этапе S402, если определено, что результатом принятия решения по управлению первого процесса является принудительное завершение, перед принудительным завершением первого процесса способ в вариантах осуществления настоящей заявки дополнительно включает в себя: получение количества допустимых случаев повторного запуска первого процесса, и если количество допустимых случаев повторного запуска первого процесса больше второй пороговой величины, то в этом случае полагается, что первый процесс важен для пользователя, и первый процесс продолжает выполняться. Вторая пороговая величина может быть количеством случаев, которое задается вручную.

[0082] Поскольку характеристика процесса, определяемая механизмом интеллектуального принятия решений, ограничена, чтобы предотвратить ошибочное принудительное завершение процесса, важного для пользователя, способ управления процессами в вариантах осуществления настоящей заявки дополнительно включает в себя отказоустойчивый механизм интеллектуального принятия решений. То есть, когда результатом принятия решения по управлению является принудительное завершение, получается количество допустимых случаев повторного запуска процесса, и на основе количества допустимых случаев повторного запуска определяется, действительно ли процесс должен быть принудительно завершен.

[0083] Таким образом, способ управления процессами в соответствии с вариантами осуществления настоящей заявки включает в себя управление выполняющимся процессом, управление повторно запущенным процессом и корректировку управления процессом, так что может быть реализовано интеллектуальное управление каждым процессом в терминальном устройстве, и можно предотвратить принудительное завершение важного для пользователя процесса при высвобождении памяти, чтобы улучшить возможности использования.

[0084] Способ управления процессами в вариантах осуществления настоящей заявки включает в себя принудительное завершение процесса и перехват повторного запуска процесса. Далее подробно описывается способ управления процессами в вариантах осуществления настоящей заявки со ссылкой на фиг. 5 и фиг. 6.

[0085] В способе управления процессами в вариантах осуществления настоящей заявки, сначала используется механизм интеллектуального принятия решений, полученный посредством обучения на основе алгоритма дерева решений. Способ обучения механизма интеллектуального принятия решений включает в себя следующие этапы.

[0086] (1) Выбор характеристик дерева решений

[0087] Посредством анализа журналов бета-тестирования за недавний период и на основе полученной информации выбираются характеристики дерева решений, включающие в себя: состояние текущих процессов переднего плана и фоновых и основных процессов, adj, adjType, звуковое взаимодействие, подсчет шагов для здоровья, состояние использования трафика и т.п. Недавний период времени может быть любым заданным вручную периодом времени, например, тремя месяцами. Adj - это флаг, указывающий степень важности процесса системы Android, и меньшее значение adj указывает меньшую степень важности процесса. AdjType также используется для задания степени важности процесса и используется для различения разных сценариев при одном и том же состоянии adj. Например, если значение adj равно 0, то это означает, что процесс имеет большое значение. В этом случае, если adjType имеет высокую активность, то это указывает, что процесс является процессом переднего плана; и если adjType представляет собой исполнительную службу (exec-service), то это указывает, что процесс является процессом, который вызывается передним планом.

[0088] (2) Генерация дерева решений

[0089] В способе управления процессами в вариантах осуществления настоящей заявки скорость получения информации рассчитывается с использованием алгоритма C4.5, и скорость получения информации используется в качестве правила разделения узлов. Скорость получения информации рассчитывается следующим образом:

.

[0090] представляет обучающий набор данных, представляет функцию дерева решений, представляет количество характеристик, представляет количество характеристик в обучающем наборе данных, и представляет информационную энтропию.

[0091] (3) Отсечение

[0092] Полное дерево решений, сгенерированное на основе алгоритма C4.5, подходит для обучающей выборки. Поскольку полное дерево решений слишком точно описывает характеристики обучающей выборки, чтобы можно было провести разумный анализ новой выборки, дерево решений необходимо усечь. В способе управления процессами в вариантах осуществления настоящей заявки используется алгоритм пессимистического отсечения ошибок (pessimistic error pruning (PEP)) в способе пост-отсечения (post-pruning). Способ пост-отсечения сначала строит полное дерево решений, запускает дерево решений для подгонки обучающих данных, а затем заменяет поддеревья узлов с низкой достоверностью концевыми узлами. Трудно точно оценить, когда остановить рост дерева решений в способе отсечения, поэтому способ пост-отсечения более удобен. Алгоритм PEP определяет отсечение поддерева на основе частоты ошибок до и после отсечения. Этот алгоритм использует способ сверху вниз. Если неконцевой узел удовлетворяет следующему неравенству, то концевой узел отсекается:

.

[0093] представляет узел в дереве решений, представляет поддерево, включающее в себя узел , представляет... , и представляет стандартное отклонение.

[0094] Дерево механизма интеллектуального принятия решений, показанное на фиг. 5, может быть получено посредством предшествующего обучения. Необходимость принудительного завершения отдельного процесса в приложении может быть определена на основе дерева механизма интеллектуального принятия решений. Например, для отдельного процесса в указанном приложении сначала определяется на основе дерева механизма интеллектуального принятия решений, выполняется ли процесс на переднем плане или в фоновом режиме. Если процесс выполняется на переднем плане, то он продолжает выполняться (не принудительно завершается), а если процесс выполняется в фоновом режиме, определяется, является ли этот процесс основным процессом. Если процесс является основным процессом, процесс продолжает выполняться, а если процесс не является основным процессом, определяется значение adj процесса. Если значение adj процесса меньше 900, процесс продолжает выполняться, а если значение adj процесса больше 1000, процесс принудительно завершается. Если значение adj процесса находится в интервале [900,1000], определяется adjType процесса. Если adjType процесса представляет собой другой процесс, то этот процесс продолжает выполняться. Если adjType процесса равен cch-пусто (cch-empty), что указывает на пустой процесс, процесс принудительно завершается. Если adjType процесса представляет собой cch-привязанные службы (cch-bound-services), что указывает на службу, привязанную к переднему плану, или adjType процесса представляет собой cch-действие клиента (cch-client-act), что указывает на процесс, связанный с интерфейсом переднего плана, то определяется, предназначен ли процесс для звукового взаимодействия. Если процесс предназначен для звукового взаимодействия, например, для записи или воспроизведения голоса, то процесс продолжает выполняться. Если процесс не предназначен для звукового взаимодействия, дополнительно определяется, предназначен ли процесс для подсчета шагов для здоровья. Если процесс предназначен для подсчета шагов для здоровья, то процесс продолжает выполняться. Если процесс не предназначен для подсчета шагов для здоровья, то определяется состояние использования трафика процесса. Если состояние использования трафика указывает на высокую скорость потока, процесс продолжает выполняться, или если состояние использования трафика указывает на низкую скорость потока, процесс принудительно завершается.

[0095] Следовательно, следует ли принудительно завершать процесс приложения, можно определить на основе обученного дерева механизма интеллектуального принятия решений. По сравнению с традиционной технологией способ управления процессами в вариантах осуществления настоящей заявки может осуществлять управление одним процессом приложения.

[0096] После принудительного завершения процесса этот процесс может быть автоматически повторно запущен. Если процесс не перехвачен, он все равно занимает память. Следовательно, способ управления процессами в вариантах осуществления настоящей заявки дополнительно включает в себя перехват повторного запуска процесса.

[0097] Как показано на фиг. 6, когда принудительно завершенный процесс готов к повторному запуску, способ управления процессами в вариантах осуществления настоящей заявки определяет, является ли процесс воспринимаемым пользователем. Воспринимаемый пользователем процесс включает в себя, но не ограничивается этим, следующие случаи: процесс является процессом переднего плана, процесс имеет видимый интерфейс, процесс представляет собой тип процесса оповещения и т.п. Если процесс не является воспринимаемым пользователем процессом, повторный запуск процесса перехватывается. Если процесс является воспринимаемым пользователем процессом, повторный запуск процесса разрешен, и информация о повторном запуске процесса записывается.

[0098] Способ управления процессами в вариантах осуществления настоящей заявки дополнительно включает в себя механизм коррекции механизма интеллектуального принятия решений. Когда механизм интеллектуального принятия решений, показанный на фиг. 5, определяет, что процесс не продолжает использоваться, перед принудительным завершением процесса для процесса отмечается временная метка, указывающая момент, когда процесс принудительно завершается. Если процесс повторного запускается, процесс заканчивается. Если процесс автоматически повторного запускается и определено, что этот процесс является воспринимаемым пользователем процессом, как описано выше, повторный запуск процесса разрешается. Определяется временной интервал между временем повторного запуска процесса и отмеченной временной меткой. Если временной интервал меньше 10 секунд, количество случаев повторного запуска процесса увеличивается на 1; в противном случае процесс заканчивается. Если количество допустимых случаев повторного запуска процесса превышает 3, определяется, что процесс является процессом, который не должен быть принудительно завершен, и результат определения обновляется до обучающего результата, скорректированного механизмом; в противном случае процесс заканчивается. Когда следующий результат определения механизма интеллектуального принятия решений указывает на то, что указанный процесс не продолжает использоваться, перед принудительным завершением процесса механизм интеллектуального принятия решений определяет, является ли процесс процессом, который не должен быть принудительно завершен, и находится ли он в обучающем результате. Если процесс является процессом, который не следует принудительно завершать и который находится в обучающем результате, процесс продолжает использоваться. Если процесс не является процессом, который не должен быть принудительно завершен и который находится в обучающем результате, процесс все равно будет принудительно завершен. Во избежание логических изменений, вызванных обновлением приложения, продолжительность обучающего результата и отмечания происходит с момента, в который выполняется отмечание, до момента, в который приложение удаляется.

[0099] Механизм перехвата в способе управления процессами в вариантах осуществления настоящей заявки может решить проблему, заключающуюся в том, что процесс занимает память, поскольку процесс автоматически многократно повторно запускается после принудительного завершения. Механизм коррекции механизма интеллектуального принятия решений делает механизм интеллектуального принятия решений более интеллектуальным, чтобы предотвратить принудительное завершение процесса, важного для пользователя, из-за неправильного определения и, следовательно, ухудшения возможностей использования.

[00100] Согласно способу управления процессами в вариантах осуществления настоящей заявки, количество поддерживающих активность приложений терминального устройства на 6G увеличивается на 0,6 и увеличивается на 8,5%. Уровень поддержки активности приложения, использовавшегося в последний раз, увеличился с 95,85% до 98,50%. Приложение, использованное в последние два раза, увеличилось с 87,15% до 94,12%. Большие данные бета-тестирования показывают, что количество случаев, в которые задействуется первоначальное принудительное завершение, значительно сократилось. Количество принудительных завершений WeChat уменьшено примерно на 40%.

[00101] Фиг. 7 представляет собой схематическую блок-схему устройства управления процессами в соответствии с одним вариантом осуществления настоящей заявки. Как показано на фиг. 7, устройство управления процессами включает в себя модуль 701 получения, модуль 702 определения и исполнительный модуль 703.

[00102] Модуль 701 получения выполнен с возможностью получения информации, названия пакета и названия процесса, которые относятся к первому процессу первого приложения, выполняющегося на терминальном устройстве.

[00103] Модуль 702 определения выполнен с возможностью определения на основе информации о первом процессе необходимости принудительного завершения первого процесса.

[00104] Исполнительный модуль 703 выполнен с возможностью отмечать название пакета и название процесса, которые относятся к первому процессу.

[00105] Исполнительный модуль 703 дополнительно выполнен с возможностью управления вторым процессом на основе результатов отмечания названия пакета и названия процесса, которые относятся ко второму процессу.

[00106] В необязательном порядке информация о первом процессе включает в себя: основной процесс, процесс переднего плана или фоновый процесс, процесс звукового взаимодействия, процесс навигации, процесс выгрузки или загрузки, процесс подсчета шагов, информацию adj и информацию adjType.

[00107] В необязательном порядке продолжительность, в течение которой исполнительный модуль 703 управляет вторым процессом, является первым периодом времени. Например, первый период времени может быть периодом времени от момента времени, в который отмечены название пакета и название приложения, относящиеся ко второму процессу, до момента времени, в который второй процесс удален из электронного устройства.

[00108] В необязательном порядке, то, что исполнительный модуль 703 отмечает название пакета и название процесса, которые относятся к первому процессу, дополнительно включает в себя: отмечание первого момента, в который принудительно завершен первый процесс.

[00109] В необязательном порядке, то, что исполнительный модуль 703 управляет вторым процессом на основе результатов отмечания названия пакета и названия процесса, которые относятся ко второму процессу, включает в себя: запуск второго процесса; на основе результатов отмечания названия пакета и названия процесса, которые относятся ко второму процессу, определение, что второй процесс является принудительно завершенным процессом; и запрет запуска второго процесса.

[00110] В необязательном порядке, то, что исполнительный модуль 703 управляет вторым процессом на основе результатов отмечания названия пакета и названия процесса, которые относятся ко второму процессу, включает в себя: запуск второго процесса; на основе результатов отмечания названия пакета и названия процесса, которые относятся ко второму процессу, определение, что второй процесс является принудительно завершенным процессом; и определение, является ли второй процесс воспринимаемым пользователем процессом, при этом воспринимаемый пользователем процесс включает в себя процесс переднего плана и/или процесс, видимый на интерфейсе, и/или процесс оповещения; если второй процесс является воспринимаемым пользователем процессом, разрешение запуска второго процесса; или, если второй процесс не является воспринимаемым пользователем процессом, запрет запуска второго процесса.

[00111] В необязательном порядке разрешение запуска второго процесса дополнительно включает в себя: получение второго момента, в который запущен второй процесс; и если интервал между вторым моментом и первым моментом меньше первой пороговой величины, увеличение количества допустимых случаев повторного запуска первого процесса на 1.

[00112] В необязательном порядке предоставляется модуль 702 определения.

[00113] Перед тем, как модуль определения определит принудительно завершить первый процесс, способ дополнительно включает в себя: получение количества допустимых случаев повторного запуска первого процесса; и если количество допустимых случаев повторного запуска больше второй пороговой величины, продолжение выполнения первого процесса.

[00114] Фиг. 8 представляет собой схематическое представление структуры устройства управления процессами в соответствии с одним вариантом осуществления настоящей заявки. Устройство 800 управления процессами, показанное на фиг. 8, включает в себя память 801, процессор 802, интерфейс 803 связи и шину 804. Взаимные коммуникационные соединения памяти 801, процессора 802 и интерфейса 803 связи реализованы с использованием шины 804.

[00115] Интерфейс 803 связи эквивалентен модулю 701 получения в устройстве 700 управления процессами, а процессор 802 эквивалентен модулю 702 определения и исполнительному модулю 703 в устройстве 700 управления процессами. Модули и блоки в устройстве 800 управления процессами подробно описаны ниже.

[00116] Память 801 может быть постоянной памятью (read only memory (ROM)), статическим запоминающим устройством, динамическим запоминающим устройством или оперативной памятью (random access memory (RAM)). Память 801 может хранить программу. Когда программа, хранящаяся в памяти 801, исполняется процессором 802, процессор 802 и интерфейс 803 связи выполнены с возможностью осуществления этапов способа управления процессами в вариантах осуществления настоящей заявки. В частности, интерфейс 803 связи может получать из памяти или другого устройства информацию, название пакета и название процесса, которые относятся к процессу, и затем процессор 802 выполняет управление процессом в отношении процесса.

[00117] Процессор 802 может быть центральным блоком управления общего назначения (central processing unit (CPU)), микропроцессором, специализированной интегральной схемой (application-specific integrated circuit (ASIC)), графическим блоком обработки (graphics processing unit (GPU)), или одной или более интегральными схемами, и выполнен с возможностью исполнения соответствующей программы, чтобы реализовать функции, которые должны выполняться блоками в устройстве управления процессами в вариантах осуществления настоящей заявки (например, процессор 802 может реализовывать функции, которые должны выполняться модулем 702 определения и исполнительным модулем 703 в вышеупомянутом устройстве 700 управления процессами), или выполнять способ управления процессами в вариантах осуществления настоящей заявки.

[00118] Процессор может быть интегральной микросхемой и может обладать возможностью обработки сигналов. В процессе реализации этапы способа управления процессами в вариантах осуществления настоящей заявки могут быть реализованы с использованием аппаратной интегральной логической схемы в процессоре 802 или с использованием инструкций в форме программного обеспечения.

[00119] Вышеупомянутый процессор 802 может быть процессором общего назначения, цифровым сигнальным процессором (цифровой сигнальный процессор, DSP), специализированной интегральной схемой (ASIC), программируемой пользователем вентильной матрицей (field programmable gate array (FPGA)) или другим программируемым логическим устройством, транзисторным логическим устройством или логическим устройством с дискретным затвором или дискретным аппаратным компонентом. Вышеупомянутый процессор общего назначения может быть микропроцессором, или процессор также может быть любым традиционным процессором и т.п. Этапы способов, раскрытых со ссылкой на варианты осуществления настоящей заявки, могут выполняться непосредственно аппаратным процессором декодирования или могут выполняться и реализовываться комбинацией аппаратных и программных модулей в процессоре декодирования. Программный модуль может быть расположен на хорошо известном в данной области техники носителе данных, таком как оперативное запоминающее устройство, флеш-память, постоянное запоминающее устройство, программируемое постоянное запоминающее устройство, электрически стираемое программируемое запоминающее устройство. Носитель данных расположен в памяти 801. Процессор 802 считывает информацию из памяти 801 и совместно с аппаратными средствами процессора 802 выполняет функции, которые должны выполняться блоками, включенными в устройство управления процессами в вариантах осуществления настоящей заявки, или выполняет способ управления процессами в варианты осуществления настоящей заявки.

[00120] Приемопередающее устройство, такое как, но без ограничений, приемопередатчик, используется в интерфейсе 803 связи для осуществления связи между устройством 800 и другим устройством или сетью связи. Например, информация, название пакета и название процесса касаемо процесса могут быть получены интерфейсом 803 связи.

[00121] Шина 804 может включать в себя канал, который передает информацию между различными частями (например, памятью 801, процессором 802 и интерфейсом 803 связи) устройства 800.

[00122] Следует понимать, что хотя в вышеупомянутом устройстве 800 показаны только память, процессор и интерфейс связи. Однако в конкретном процессе реализации специалист в данной области техники должен понимать, что устройство 800 может дополнительно включать в себя другой компонент, необходимый для нормальной работы. Кроме того, согласно конкретному требованию специалист в данной области техники должен понимать, что устройство 800 может дополнительно включать в себя аппаратные компоненты для реализации других дополнительных функций. Кроме того, специалист в данной области техники должен понимать, что устройство 800 может включать в себя только компоненты, необходимые для реализации вариантов осуществления настоящей заявки, но не обязательно включать все компоненты, показанные на фиг. 8.

[00123] В одном варианте осуществления, когда модуль обработки является процессором, а модуль хранения - памятью, электронное устройство в этом варианте осуществления может быть устройством, имеющим структуру, показанную на фиг. 1.

[00124] Этот вариант осуществления дополнительно обеспечивает компьютерный носитель данных. Компьютерный носитель данных хранит компьютерные инструкции. Когда компьютерные инструкции исполняются на электронном устройстве, это электронное устройство получает возможность выполнять вышеизложенные соответственные этапы способа для реализации способа управления процессами в вышеприведенном варианте осуществления.

[00125] Этот вариант осуществления дополнительно обеспечивает компьютерный программный продукт. Когда компьютерный программный продукт выполняется на компьютере, то обеспечивается выполнение компьютером вышеизложенных соответственных этапов для реализации способа управления процессами в вышеприведенном варианте осуществления.

[00126] Кроме того, вариант осуществления настоящей заявки дополнительно предоставляет устройство. Устройство может быть, в частности, микросхемой, компонентом или модулем, и устройство может включать в себя процессор и память, которые соединены друг с другом. Память приспособлена для хранения исполняемых компьютером инструкций. Когда устройство работает, процессор может выполнять исполняемые компьютером инструкции, хранящиеся в памяти, так что микросхема выполняет способ управления процессами в вышеупомянутых вариантах осуществления способа.

[00127] Электронное устройство, компьютерный носитель данных, компьютерный программный продукт или микросхема, представленные в вариантах осуществления, выполнены с возможностью выполнения соответствующего способа, предусмотренного выше. Следовательно, за полезными эффектами, которые могут быть достигнуты с помощью электронного устройства, компьютерного носителя данных, компьютерного программного продукта или микросхемы, следует обратиться к полезным эффектам соответствующего способа, представленного выше. Подробности здесь повторно не приводятся.

[00128] Специалисту в данной области техники может быть известно, что блоки и этапы алгоритма в примерах, описанных со ссылкой на варианты осуществления, раскрытые в данном описании, могут быть реализованы с помощью электронного оборудования или комбинации компьютерного программного обеспечения и электронного оборудования. Выполнение функций аппаратным или программным обеспечением зависит от конкретных применений и проектных ограничений технических решений. Специалист в данной области может использовать различные способы для реализации описанных функций для каждого конкретного применения, но не следует считать, что такая реализация выходит за рамки объема настоящей заявки.

[00129] Специалист в данной области техники может четко понимать, что в целях удобного и краткого описания подробного рабочего процесса вышеупомянутой системы, устройства и блока может быть сделана ссылка на соответствующий процесс в вышеупомянутых вариантах осуществления способа, и подробности не описаны здесь снова.

[00130] В нескольких вариантах осуществления, обеспеченных в настоящей заявке, следует понимать, что раскрытые система, устройство и способ могут быть реализованы по-другому. Например, описанный вариант осуществления устройства является просто примером. Например, модульное разделение является просто логическим функциональным разделением и может быть другим разделением в фактической реализации. Например, множество блоков или компонентов могут быть объединены или интегрированы в другую систему, или некоторые функции могут быть проигнорированы или могут не выполняться. Кроме того, показанные или описанные взаимные связи или прямые связи или коммуникационные соединения могут быть реализованы с использованием некоторых интерфейсов. Опосредованные связи или коммуникационные соединения между устройствами или блоками могут быть реализованы электрически, механически или иметь другие формы.

[00131] Блоки, описанные как отдельные части, могут быть или могут не быть физически отдельными, и части, отображаемые как блоки, могут быть или могут не быть физическими блоками, могут быть расположены в одном месте или могут быть распределены по множеству сетевых блоков. Некоторые или все блоки могут быть выбраны на основе фактических требований для достижения целей решений в упомянутых вариантах осуществления.

[00132] Кроме того, функциональные блоки в вариантах осуществления настоящей заявки могут быть интегрированы в один процессорный блок, или каждый из блоков может физически существовать сам по себе, или два или более блоков могут быть объединены в один блок.

[00133] Когда функции реализуются в форме программного функционального блока и продаются или используются в виде независимого продукта, функции могут быть сохранены на машиночитаемом носителе данных. Основываясь на таком понимании, суть технических решений в этой заявке, или определенная часть, вносящая вклад в уровень техники, или некоторые технические решения могут быть реализованы в форме программного продукта. Программный продукт хранится на носителе данных и включает в себя несколько инструкций для указания компьютерному устройству (которым может быть персональный компьютер, сервер, сетевое устройство и т.п.) выполнять все или некоторые из этапов способов, описанных в вариантах осуществления настоящей заявки. Вышеупомянутый носитель данных включает в себя любой носитель, на котором может храниться программный код, такой как флэш-накопитель USB, съемный жесткий диск, постоянное запоминающее устройство (read-only memory (ROM)), оперативное запоминающее устройство (random access memory (RAM)), магнитный диск или оптический диск.

[00134] Вышеприведенное описание представляет собой лишь конкретные реализации настоящей заявки, но оно не предназначено для ограничения объема охраны настоящей заявки. Любое изменение или замена, легко обнаруживаемая специалистом в данной области техники в пределах технического объема, раскрытого в настоящей заявке, должны подпадать под объем охраны настоящей заявки. Следовательно, объем охраны настоящей заявки должен соответствовать объему охраны формулы изобретения.

Похожие патенты RU2829067C1

название год авторы номер документа
СПОСОБ ВЫВОДА АУДИО И ТЕРМИНАЛЬНОЕ УСТРОЙСТВО 2020
  • Чжан, Лижун
  • Лэ, Чао
  • Лин, Бо
  • Ли, Ли
  • Цзян, Чжунинь
RU2801100C1
СПОСОБ И УСТРОЙСТВО ПРИНУДИТЕЛЬНОЙ ДОСТАВКИ ИНФОРМАЦИИ 2015
  • Гао И
  • Ван Хунцян
  • Гэ Юньюань
RU2630580C1
ИНТЕЛЛЕКТУАЛЬНОЕ КОММУНИКАЦИОННОЕ УСТРОЙСТВО ИЛИ УСТРОЙСТВО ДЛЯ СБОРА И ОЦЕНКИ ИНФОРМАЦИИ ОБ ОБОРУДОВАНИИ, РАСПРЕДЕЛЕННОМ ПО БОЛЬШОЙ ТЕРРИТОРИИ, НАПРИМЕР ПО БОЛЬШОМУ ПРОМЫШЛЕННОМУ ПРЕДПРИЯТИЮ ИЛИ НЕФТЯНОМУ МЕСТОРОЖДЕНИЮ 2016
  • Лойчик Нил
  • Рейтано Джеймс
  • Джордж Навин
  • Декук Бредли С.
  • Салливан Джеффри
  • Кернан Дэниел
  • Хауэнштайн Кен
  • Рейл Дэвид
RU2698422C1
СПОСОБ, УСТРОЙСТВО И ЭЛЕКТРОННОЕ УСТРОЙСТВО ДЛЯ УПРАВЛЕНИЯ ИНТЕЛЛЕКТУАЛЬНЫМ ДОМАШНИМ УСТРОЙСТВОМ 2015
  • Хоу Эньсин
  • Дай Лун
  • Вэнь Чжэнвэй
RU2640644C2
СПОСОБ УПРАВЛЕНИЯ И ЭЛЕКТРОННОЕ УСТРОЙСТВО 2020
  • Ли, Юй
  • Сюй, Цзюнь
  • Чжи, Цюйчэн
RU2782960C1
ОКОНЕЧНОЕ УСТРОЙСТВО, СПОСОБ И СИСТЕМА РЕАЛИЗАЦИИ ЭКРАННОЙ ПРОЕКЦИИ ОДНИМ КАСАНИЕМ, ИСПОЛЬЗУЯ ДИСТАНЦИОННОЕ УПРАВЛЕНИЕ 2020
  • Чжан, Цзиньмин
  • Сяо, Юйжэнь
  • Ван, Липин
RU2795130C2
ОКОНЕЧНОЕ УСТРОЙСТВО, СПОСОБ И СИСТЕМА РЕАЛИЗАЦИИ ЭКРАННОЙ ПРОЕКЦИИ ОДНИМ КАСАНИЕМ, ИСПОЛЬЗУЯ ДИСТАНЦИОННОЕ УПРАВЛЕНИЕ 2020
  • Чжан, Цзиньмин
  • Сяо, Юйжэнь
  • Ван, Липин
RU2780224C1
СПОСОБ И УСТРОЙСТВО ДЛЯ ОБУЧЕНИЯ УПРАВЛЕНИЮ, А ТАКЖЕ ЭЛЕКТРОННОЕ УСТРОЙСТВО 2016
  • Чзан Пэнфэй
  • Ся Юнфэн
  • Лю Тецзюнь
RU2659498C2
СПОСОБ И УСТРОЙСТВО ДЛЯ ВЫСВОБОЖДЕНИЯ ПРОСТРАНСТВА ПАМЯТИ 2014
  • Жу И
  • Лю Хуадун
  • Ван Айцзюнь
  • Шэнь Сяньчао
  • Чжан Цзюнь
RU2615325C2
СПОСОБ ПЕРЕДАЧИ ИНФОРМАЦИИ И ЭЛЕКТРОННОЕ УСТРОЙСТВО 2020
  • Цзинь, Чжун
  • Лв, Синь
  • Чжан, Цзиньмин
RU2793700C1

Иллюстрации к изобретению RU 2 829 067 C1

Реферат патента 2024 года СПОСОБ И УСТРОЙСТВО УПРАВЛЕНИЯ ПРОЦЕССАМИ

Изобретение относится к области вычислительной техники. Технический результат заключается в предотвращении принудительного завершения процесса, важного для пользователя, при высвобождении памяти. Технический результат достигается за счет этапов, на которых: получают информацию о первом процессе и третьем процессе, которые относятся к первому приложению, исполняющемуся на терминальном устройстве; и принудительно завершают первый процесс и продолжают выполнение третьего процесса на основе информации о первом процессе и третьем процессе; управляют вторым процессом первого приложения, при этом второй процесс был однажды принудительно завершен. 3 н. и 8 з.п. ф-лы, 8 ил.

Формула изобретения RU 2 829 067 C1

1. Способ управления процессами, содержащий этапы, на которых:

получают информацию о первом процессе и третьем процессе, которые относятся к первому приложению, исполняющемуся на терминальном устройстве; и

принудительно завершают первый процесс и продолжают выполнение третьего процесса на основе информации о первом процессе и третьем процессе;

управляют вторым процессом первого приложения, при этом второй процесс был однажды принудительно завершен.

2. Способ по п.1, в котором информация о первом процессе содержит одно из следующего: основной процесс, процесс переднего плана или фоновый процесс, процесс звукового взаимодействия, процесс навигации, процесс выгрузки или загрузки, процесс подсчета шагов, информация adj или информация adjType.

3. Способ по п.1 или 2, при этом способ дополнительно содержит этап, на котором отмечают название пакета и название процесса, которые относятся ко второму процессу;

при этом, при упомянутом управлении вторым процессом первого приложения, вторым процессом управляют на основе результата упомянутого отмечания второго процесса.

4. Способ по любому одному из пп.1-3, в котором продолжительность упомянутого управления является первым периодом времени.

5. Способ по любому одному из пп.1-4, в котором упомянутое управление вторым процессом содержит этапы, на которых:

определяют, что второй процесс является процессом, который однажды был принудительно завершен; и

запрещают запуск второго процесса.

6. Способ по любому одному из пп.1-4, в котором упомянутое управление вторым процессом содержит этапы, на которых:

определяют, является ли второй процесс воспринимаемым пользователем процессом; и

если второй процесс является воспринимаемым пользователем процессом, то разрешают запуск второго процесса, или

если второй процесс не является воспринимаемым пользователем процессом, то запрещают запуск второго процесса.

7. Способ по п.6, в котором воспринимаемый пользователем процесс содержит одно из следующего: процесс переднего плана, процесс, видимый на интерфейсе, процесс оповещения, процесс выгрузки, процесс загрузки или процесс, связанный с интерфейсом переднего плана.

8. Способ по п.6 или 7, при этом способ дополнительно содержит этап, на котором отмечают первый момент, в который второй процесс был принудительно завершен;

при этом упомянутое разрешение запуска второго процесса содержит этапы, на которых:

получают второй момент, в который запущен второй процесс, и

если интервал между вторым моментом и первым моментом меньше первой пороговой величины, увеличивают количество допустимых случаев повторного запуска второго процесса на 1.

9. Способ по п.8, при этом способ дополнительно содержит этапы, на которых:

получают количество допустимых случаев повторного запуска второго процесса; и

если количество допустимых случаев повторного запуска больше второй пороговой величины, определяют продолжить выполнение второго процесса.

10. Электронное устройство, выполненное с возможностью управления процессами, при этом электронное устройство содержит:

память, приспособленную хранить программу; и

процессор, выполненный с возможностью исполнять программу, хранящуюся в памяти, при этом, когда программа, хранящаяся в памяти, исполняется, процессор конфигурируется осуществлять способ по любому одному из пп.1-9.

11. Машиночитаемый носитель данных, при этом машиночитаемый носитель данных хранит программный код, причем программный код содержит инструкции для выполнения некоторых или всех этапов способа по любому одному из пп.1-9.

Документы, цитированные в отчете о поиске Патент 2024 года RU2829067C1

CN 102968352 B, 22.07.2015
US 10289446 B1, 14.05.2019
CN 104375880 A, 25.02.2015
CN 110543365 A, 06.12.2019
US 10474507 B2, 12.11.2019
CN 109213539 A, 15.01.2019
СПОСОБ РАСПРЕДЕЛЕНИЯ ВРЕМЕНИ ЦЕНТРАЛЬНОГО ПРОЦЕССОРА МЕЖДУ ЗАДАЧАМИ В АВТОМАТИЗИРОВАННЫХ СИСТЕМАХ УПРАВЛЕНИЯ ТЕХНОЛОГИЧЕСКИМИ ПРОЦЕССАМИ 2001
  • Еремин Ю.А.
  • Кишкин В.Л.
RU2239228C2
СПОСОБ ПЕРЕДАЧИ УПРАВЛЕНИЯ МЕЖДУ ОБЛАСТЯМИ ПАМЯТИ 2014
  • Пинтийский Владислав Валерьевич
  • Кирсанов Дмитрий Александрович
  • Аникин Денис Вячеславович
RU2580016C1

RU 2 829 067 C1

Авторы

Чэнь, Мин

И, Пэнсян

Ху, Хойфэн

Даты

2024-10-23Публикация

2021-09-16Подача