СВЯЗАННАЯ КОМАНДНАЯ ОБОЛОЧКА
ASSOCIATED COMMAND SHELL

УРОВЕНЬ ТЕХНИКИ
Переносные электронные вычислительные устройства стали чрезвычайно популярными. На этих устройствах могут выполняться многочисленные функции. Однако для выполнения этих функций требуется мощность. Мощность, как правило, обеспечивается переносным средством, таким как батарея, энергия которой со временем истощается. В этом случае батарея нуждается в перезарядке или замене перед дальнейшим использованием устройства. Срок службы батареи зависит в основном от степени использования устройства и/или от функций, выполняемых на устройстве. Некоторые функции требуют большего количества мощности, чем другие функции. Следовательно, в зависимости от того, какие функции выполняются с данной периодичностью, может потребоваться очень частая перезарядка батареи.
Если требуется часто перезаряжать или заменять батарею, пользователь устройства может быть разочарован. Необходимо устройство или система, которая может продлить срок службы батареи так, чтобы не требовалась чересчур частая перезарядка батареи.
Кроме того, для пользователя часто отображается информация относительно функций устройства. Такая информация может отображаться в пользовательском интерфейсе на устройстве отображения. Однако отображение пользовательского интерфейса может быть нарушено при попытке продлить срок службы батареи. Следовательно, требуется способ или устройство, в котором мощность в переносном устройстве может сберегаться при сохранении вида и функций пользовательского интерфейса, связанного с активным приложением.
Раскрытие изобретения
Нижеприведенное описание представляет собой упрощенное изложение раскрытия изобретения для того, чтобы обеспечить общее представление у читателя. Это изложение не является подробным обзором раскрытия, и оно не определяет ключевые/критические элементы настоящего изобретения и не очерчивает объем настоящего изобретения. Единственным его назначением является представить некоторые раскрытые в настоящем документе идеи в упрощенной форме в качестве вводной части для более детального описания, которое представлено ниже.
В одном примере предоставляется устройство, включающее в себя множественные обрабатывающие устройства. Любое из обрабатывающих устройств в устройстве может функционировать во многих режимах, ассоциированных с уровнем потребления мощности. Устройство может дополнительно включать в себя переключатель и устройство отображения, соединенное с каким-либо из обрабатывающих устройств.
В другом примере пользовательский интерфейс может отображаться на устройстве отображения, а управление периферийными устройствами и/или устройством отображения может переключаться между различными обрабатывающими устройствами на основе уровня мощности или характеристики мощности запрашиваемой функции. Также может происходить соответствующее переключение во время отображения пользовательского интерфейса, причем это переключение в отображении пользовательского интерфейса практически незаметно для пользователя.
В другом примере предоставляется способ для отображения пользовательского интерфейса на устройстве отображения вычислительного устройства. Вычислительное устройство может включать в себя множественные обрабатывающие устройства, которые могут управлять периферийными устройствами. Выбор обрабатывающего устройства для управления периферийными устройствами может зависеть от характеристики мощности или от уровня мощности запрашиваемой функции. Отображение пользовательского интерфейса также может изменяться на основании выбранного обрабатывающего устройства, управляющего периферийными устройствами. Изменение отображения пользовательского интерфейса может быть выполнено так, что пользователь может не подозревать, что изменение имело место.
Многие сопутствующие признаки будут легче восприниматься, поскольку становятся более понятными, исходя из последующего подробного описания, рассматриваемого в совокупности с сопроводительными чертежами.
ОПИСАНИЕ ЧЕРТЕЖЕЙ
Настоящее описание будет более понятно благодаря прочтению подробного описания с учетом сопроводительных чертежей, на которых
Фиг. 1 демонстрирует пример вычислительной системной среды, в которой вычислительные подсистемы могут обеспечивать функциональные возможности обработки и пользовательские интерфейсы;
Фиг. 2 демонстрирует пример выбора обрабатывающего устройства для выполнения функции в гибридном вычислительном устройстве;
Фиг. 3 демонстрирует пример гибридного вычислительного устройства или устройства, содержащего множественные обрабатывающие устройства для управления устройством отображения;
Фиг. 4 демонстрирует пример реализации пользовательского интерфейса на дисплее;
Фиг. 5 демонстрирует пример отправки электронного почтового сообщения в гибридном вычислительном устройстве;
Фиг. 6 демонстрирует другой пользовательский интерфейс, отображаемый на устройстве отображения после выбора команды на передачу электронного почтового сообщения;
Фиг. 7 демонстрирует отображение пользовательского интерфейса для составления электронного почтового сообщения в гибридном вычислительном устройстве;
Фиг. 8 является блок-схемой, демонстрирующей пример гибридного вычислительного устройства;
Фиг. 9 является блок-схемой, демонстрирующей другой пример гибридного вычислительного устройства и управление периферийным устройством (например, устройством отображения), по меньшей мере, одним обрабатывающим устройством из множества обрабатывающих устройств вычислительного устройства;
Фиг. 10 является блок-схемой, демонстрирующей другой пример гибридного вычислительного устройства;
Фиг. 11 является блок-схемой последовательности операций, демонстрирующей пример предоставления пользовательского интерфейса на дисплее;
Фиг. 12 является блок-схемой последовательности операций, демонстрирующей другой пример предоставления пользовательского интерфейса на дисплее.
Подобные ссылочные значения используются для обозначения подобных частей на сопроводительных чертежах.
ПОДРОБНОЕ ОПИСАНИЕ ИЗОБРЕТЕНИЯ
Предоставленное ниже подробное описание в совокупности с прилагаемыми чертежами предполагается в качестве описания имеющихся образцов, а не предназначено для представления только форм, в которых данный образец может создаваться или использоваться. Описание излагает функции образца и последовательность этапов для создания и работы образца. Впрочем, одинаковые или эквивалентные функции и последовательности могут выполняться различными образцами. Системы, описываемые в настоящем документе, предоставляются в качестве примеров, а не ограничений. Как будет понятно специалистам в данной области техники, настоящие примеры пригодны для применения в разнообразии различных типов вычислительных систем.
Фиг. 1 демонстрирует пример подходящей вычислительной системной среды 100 или архитектуры, в которой вычислительные подсистемы могут обеспечивать функциональные возможности обработки. Вычислительная системная среда 100 является только одним примером подходящей вычислительной среды и не подразумевает предположения какого-либо ограничения относительно объема использования или функциональных возможностей настоящего изобретения. Также вычислительная среда 100 не должна интерпретироваться как имеющая какую-либо зависимость или потребность, касающуюся любого одного компонента или комбинации компонентов, продемонстрированных в примерной операционной среде 100.
Настоящее изобретение может работать с многочисленными другими универсальными или специализированными средами или конфигурациями вычислительных систем. Примеры известных вычислительных систем, сред и/или конфигураций, которые могут быть пригодными для использования с настоящим изобретением, включают в себя, но не ограничиваются ими: персональные компьютеры, служебные компьютеры, карманные или компактные устройства, многопроцессорные системы, микропроцессорные системы, телевизионные приставки, программируемая бытовая электроника, сетевые ПК, мини-компьютеры, универсальные компьютеры, распределенные вычислительные среды, которые включают в себя любые из вышеупомянутых систем или устройств, и тому подобное.
Настоящее изобретение может быть описано в общем контексте исполняемых компьютером инструкций, таких как программные модули, исполняемые компьютером. Как правило, программные модули включают в себя процедуры, программы, объекты, компоненты, структуры данных и т.д., которые выполняют конкретные задачи или реализуют конкретные абстрактные типы данных. Настоящее изобретение также может практиковаться в распределенных вычислительных средах, в которых задачи выполняются удаленными устройствами обработки, которые связываются по сетям связи. В распределенной вычислительной среде программные модули могут размещаться и в локальных и в удаленных компьютерных запоминающих средах, включающих в себя запоминающие устройства хранения.
Обратимся к Фиг. 1 - иллюстративная система для реализации настоящего изобретения включает в себя универсальное вычислительное устройство в форме компьютера 102. Компоненты компьютера 102 могут включать в себя, но не ограничиваются ими, обрабатывающий блок 104, системную память 106 и системную шину 108, которая соединяет различные системные компоненты, в том числе системную память с обрабатывающим блоком 104. Системная шина 108 может быть любого из нескольких типов шинных структур, включающих в себя шину памяти или устройство управления памятью, шину периферийных устройств и локальную шину, использующих любую из множества шинных архитектур. В качестве примера, но не ограничения, такие архитектуры включают в себя шину Архитектуры Промышленного Стандарта (ISA - Industry Standard Architecture), шину Микроканальной Архитектуры (MCA - Micro Channel Architecture), Расширенную шину ISA (EISA - Enhanced ISA), локальную шину Ассоциации по Стандартам в области Видеоэлектроники (VESA - Video Electronics Standards Association) и шину Взаимодействия Периферийных Компонентов (PCI - Peripheral Component Interconnect), также известную как шина Расширения.
Компьютер 102 обычно включает в себя разнообразие компьютерочитаемых носителей. Компьютерочитаемые носители могут быть любыми имеющимися в наличии носителями, которые могут быть доступны посредством компьютера 102, и включают в себя как энергозависимые, так и энергонезависимые носители, как съемные, так и стационарные носители. В качестве примера, но не ограничения, компьютерочитаемые носители могут содержать компьютерные накопители. Компьютерные накопители включают в себя как энергозависимые, так и энергонезависимые, как съемные, так и стационарные носители, реализованные согласно любому способу или технологии для хранения информации, такой как компьютерочитаемые инструкции, структуры данных, программные модули или другие данные. Компьютерные накопители включают в себя, но не ограничиваются ими, ОЗУ, ПЗУ, ЭСППЗУ, флеш-память или другие запоминающие технологии, компакт-диск, универсальный цифровой диск (DVD - digital versatile disks) или другое запоминающее устройство на оптическом диске, магнитные кассеты, магнитную ленту, запоминающее устройство на магнитном диске или другие магнитные запоминающие устройства, или любые другие носители, которые могут использоваться для хранения желаемой информации и которые могут быть доступны посредством компьютера 102. Комбинации из всего вышеупомянутого также должны входить в объем понятия компьютерочитаемых накопителей.
Системная память 106 включает в себя компьютерные накопители в форме энергозависимого и/или энергонезависимого запоминающего устройства, такого как постоянное запоминающее устройство (ПЗУ) 110 и оперативное запоминающее устройство (ОЗУ) 112. Базовая система 114 ввода/вывода (БСВВ), содержащая основные процедуры, которые способствуют передаче информации между элементами внутри компьютера 102, например, в процессе начальной загрузки, обычно хранится в ПЗУ 110. ОЗУ 112 обычно содержит данные и/или программные модули, которые непосредственно доступны и/или в данный момент обслуживаются обрабатывающим модулем 104. В качестве примера, но не ограничения, Фиг. 1 демонстрирует операционную систему 132, прикладные программы 134, другие программные модули 136 и программные данные 138.
Компьютер 102 также может включать в себя другие съемные/стационарные, энергозависимые/энергонезависимые компьютерные накопители. Только в качестве примера, Фиг. 1 демонстрирует привод 116 жесткого диска, который считывает, записывает на стационарные, энергонезависимые магнитные носители, привод 118 магнитных дисков, который считывает или записывает на съемный, энергонезависимый магнитный диск 120, и привод 122 оптических дисков, который считывает или записывает на съемный, энергонезависимый оптический диск 124, такой как компакт-диск или другой оптический носитель. Другие съемные/стационарные, энергозависимые/энергонезависимые компьютерные накопители, которые могут использоваться в иллюстративной операционной среде, включают в себя, но не ограничиваются ими, кассеты с магнитной лентой, карты флеш-памяти, универсальные цифровые диски, цифровую видеоленту, твердотельное ОЗУ, твердотельное ПЗУ и тому подобное. Привод 116 жесткого диска обычно подсоединяется к системной шине 108 через интерфейс стационарной памяти, такой как интерфейс 126, а привод 118 магнитных дисков и привод 122 оптических дисков обычно подсоединяются к системной шине 108 посредством интерфейса съемной памяти, такого как интерфейс 128 или 130.
Приводы и связанные с ними компьютерные накопители, обсуждавшиеся выше и продемонстрированные на Фиг. 1, обеспечивают хранение компьютерочитаемых инструкций, структур данных, программных модулей и других данных для компьютера 102. На Фиг. 1, например, привод 116 жесткого диска продемонстрирован как хранящий операционную систему 132, прикладные программы 134, другие программные модули 136 и программные данные 138. Заметим, что эти компоненты могут как совпадать, так и отличаться от дополнительных операционных систем, прикладных программ, других программных модулей и программных данных, например других копий любого из элементов. Пользователь может вводить команды и информацию в компьютер 146 через устройства ввода, такие как клавиатура 140 и указательное устройство 142, обычно называемое мышь, шаровой манипулятор или сенсорная панель. Другие устройства ввода (не показаны) могут включать в себя микрофон, координатную ручку, игровой манипулятор, антенну спутниковой связи, сканирующее устройство или тому подобное. Эти и другие устройства ввода часто соединены с обрабатывающим модулем 104 через пользовательский интерфейс 144 ввода, который связан с системной шиной, но могут соединяться посредством другого интерфейса и шинных структур, таких как параллельный порт, игровой порт или универсальная последовательная шина (USB - universal serial bus). Монитор 158 или устройство отображения другого типа также соединяется с системной шиной 108 через интерфейс, такой как видеоинтерфейс или интерфейс 156 графического отображения. В дополнение к монитору 158 компьютеры также могут включать в себя другие периферийные устройства вывода, такие как динамики (не показаны) и печатающее устройство (не показано), которые могут подсоединяться через интерфейс периферийных устройств вывода (не показан).
Компьютер 102 может функционировать в сетевой среде, используя логические соединения с одним или более удаленными компьютерами, такими как удаленный компьютер. Удаленный компьютер может быть персональным компьютером, служебным компьютером, устройством маршрутизации, сетевым ПК, равноправным устройством или другим сетевым узлом общего пользования и обычно включает в себя многие или все элементы, описанные выше по отношению к компьютеру 102. Логические соединения, продемонстрированные на Фиг. 1, включают в себя локальную вычислительную сеть (ЛВС) 148 и глобальную вычислительную сеть (ГВС) 150, но также могут включать в себя другие сети. Такие сетевые среды являются обычным явлением в учрежденческих, корпоративных компьютерных сетях, внутрикорпоративных сетях на базе технологии Интернет и сети Интернет.
При использовании в сетевой среде ЛВС компьютер 102 соединяется с ЛВС 148 через сетевой интерфейс или адаптер 152. При использовании в сетевой среде ГВС компьютер 102 обычно включает в себя модем 154 или другое средство установления связи через ГВС 150, такую как сеть Интернет. Модем 154, который может быть внутренним или внешним, может соединяться с системной шиной 108 через пользовательский интерфейс 144 ввода или другой подходящий механизм. В сетевой среде программные модули, изображенные относительно компьютера 102, или их части могут храниться на удаленном запоминающем устройстве хранения. В качестве примера, но не ограничения, удаленные прикладные программы могут находиться на запоминающем устройстве. Следует принять во внимание, что показанные сетевые соединения являются иллюстративными и может использоваться другое средство установления каналов связи между компьютерами.
В одном примере предоставляется гибридное вычислительное устройство или устройство, которое может содержать множественные обрабатывающие устройства. Любое из множественных обрабатывающих устройств может функционировать с различной производительностью или уровнем мощности и может обеспечивать функцию любого соответствующего типа. В одном примере первое обрабатывающее устройство в вычислительном устройстве может иметь ассоциированную первую характеристику мощности, в то время как второе обрабатывающее устройство в вычислительном устройстве может иметь ассоциированную вторую характеристику мощности. Характеристики мощности могут указывать любой признак мощности соответствующего обрабатывающего устройства. Например, характеристика мощности может указывать максимальный уровень мощности, которую может потреблять соответствующее обрабатывающее устройство. В данном примере маломощное обрабатывающее устройство может иметь характеристику мощности, которая указывает, что маломощное обрабатывающее устройство имеет максимальный уровень потребляемой мощности, равный некоторой предварительно заданной величине. В этом случае если выполняемая функция требует уровня мощности, который больше некоторой предварительно заданной величины (т.е. превышает характеристику мощности соответствующего обрабатывающего устройства), то соответствующее обрабатывающее устройство не может выполнять эту функцию. Следовательно, в данном примере характеристика мощности обрабатывающего устройства может сравниваться с соответствующей характеристикой мощности желаемой функции, которая должна выполняться. Выбор обрабатывающего устройства для управления периферийными устройствами и/или устройствами отображения, соединенными с вычислительным устройством, может основываться на соответствии характеристик мощности.
Например, первое обрабатывающее устройство в устройстве может быть маломощным обрабатывающим устройством для управления некоторым количеством периферийных устройств. Периферийное устройство(а) может выполнять некоторое количество малоемких функций под управлением маломощного обрабатывающего устройства. Малоемкие функции могут потреблять величину мощности, которая меньше предварительно заданной величины (например, характеристики малой мощности). Притом, некоторые высокоемкие или высокопроизводительные функции могут выходить за рамки возможностей маломощного обрабатывающего устройства. В этом случае такие высокоемкие функции не могут управляться маломощным обрабатывающим устройством.
В данном примере, когда запрашивается высокоемкая функция и маломощное обрабатывающее устройство управляет периферийным устройством(ами), устройство может переключить управление периферийными устройствами с маломощного обрабатывающего устройства на другое обрабатывающее устройство. Другое обрабатывающее устройство может быть высокоемким или высокопроизводительным обрабатывающим устройством, которое способно выполнить запрашиваемую высокоемкую функцию. В этом случае высокопроизводительное обрабатывающее устройство может управлять периферийными устройствами так, что запрашиваемая высокоемкая функция может быть выполнена. После того как запрашиваемая высокоемкая функция выполнена, может быть запрошена другая функция. Любой запрос может приниматься в устройстве разнообразными способами. Например, пользователь может через периферийное устройство ввести запрос на функцию, которая будет выполняться каким-либо периферийным устройством. Реагируя на запрос и тип запрашиваемой функции, соответствующее обрабатывающее устройство может приводиться в действие для управления периферийным устройством(ами), чтобы выполнить запрашиваемую функцию. Например, если запрашиваемая функция является высокоемкой по производительности функцией, может выбираться или приводиться в действие высокопроизводительное обрабатывающее устройство для управления соответствующими периферийными устройствами, чтобы выполнить запрашиваемую функцию. Если запрашиваемая функция является малоемкой или низкопроизводительной функцией, может выбираться и приводиться в действие маломощное обрабатывающее устройство для управления периферийными устройствами, чтобы выполнить запрашиваемую функцию. К тому же может потребляться меньше мощности, когда периферийными устройствами управляет маломощное обрабатывающее устройство, по сравнению с высокопроизводительным обрабатывающим устройством, управляющим периферийными устройствами.
Фиг. 2 демонстрирует пример выбора обрабатывающего устройства для выполнения функции в гибридном вычислительном устройстве. В данном примере гибридное вычислительное устройство 200 вмещает множественные обрабатывающие устройства. Фиг. 2 демонстрирует два обрабатывающих устройства: маломощное обрабатывающее устройство 201 и высокопроизводительное обрабатывающее устройство 202, хотя может быть включено любое количество обрабатывающих устройств. В данном примере маломощное обрабатывающее устройство 201 и высокопроизводительное обрабатывающее устройство 202 подсоединяются к переключателю 208. Исходя из состояния переключателя 208, или маломощное обрабатывающее устройство 201, или высокопроизводительное обрабатывающее устройство 202 могут управлять некоторым количеством периферийных устройств. В данном примере обрабатывающие устройства (201, 202) могут управлять каким-либо периферийным устройством (например, периферийным устройством A 204, периферийным устройством B 205, периферийным устройством C 206, периферийным устройством n 207) посредством программы 203 управления периферийными устройствами. Если запрашивается такая высокопроизводительная функция, что мощность, необходимая для выполнения функции, больше предварительно заданного порога, может быть выбрано высокопроизводительное обрабатывающее устройство 202 для управления периферийными устройствами (204-207), чтобы выполнить функцию. В этом случае переключатель 208 может позиционироваться так, что высокопроизводительное обрабатывающее устройство 202 управляет периферийными устройствами посредством программы 203 управления периферийными устройствами. С другой стороны, если запрашивается такая маломощная функция, что мощность, необходимая для выполнения функции, меньше предварительно заданного порога, может быть выбрано маломощное обрабатывающее устройство 201 для управления периферийными устройствами (204-207). В этом случае переключатель 208 переключается в альтернативную позицию, такую, что маломощное обрабатывающее устройство 201 управляет периферийными устройствами (204-207) посредством программы 203 управления периферийными устройствами для управления периферийными устройствами (204-207) при выполнении запрашиваемой функции. К тому же может потребляться меньше мощности, когда периферийными устройствами управляет маломощное обрабатывающее устройство 201. Это может сберечь мощность и может продлить срок службы батареи.
В одном примере периферийные устройства включают в себя устройство отображения. Также любое количество обрабатывающих устройств может использоваться с любым количеством соответствующих операционных систем для управления устройством отображения. Фиг. 3 демонстрирует пример гибридного вычислительного устройства или устройства, содержащего множественные обрабатывающие устройства для управления устройством отображения. В данном примере силовой элемент 308 приводит в действие некоторое количество обрабатывающих устройств. Как продемонстрировано на Фиг. 3, в гибридном вычислительном устройстве предусмотрено k обрабатывающих устройств (обрабатывающее устройство n 301, обрабатывающее устройство n+1 302, обрабатывающее устройство n+k 303). Каждое из обрабатывающих устройств имеет соответствующую операционную систему (ОС). Силовой элемент 308 может выбрать обрабатывающее устройство из множественных обрабатывающих устройств, исходя из желаемой или запрошенной функции. Например, каждое из обрабатывающих устройств (301-303) может функционировать на разном уровне мощности, так что обрабатывающее устройство 301 может быть маломощным обрабатывающим устройством, которое способно выполнять функции с номинальной мощностью, которая меньше первого предварительно заданного уровня, обрабатывающее устройство 302 может быть обрабатывающим устройством со средними функциональными возможностями, которое способно выполнять функции с номинальной мощностью, которая больше первого предварительно заданного уровня, но меньше второго предварительно заданного уровня, причем второй предварительно заданный уровень выше первого предварительно заданного уровня. Кроме того, обрабатывающее устройство 303 может быть высокоемким или высокопроизводительным обрабатывающим устройством, которое способно выполнять функции с номинальной мощностью, которая больше второго предварительно заданного уровня. Хотя описываются три обрабатывающих устройства, может использоваться любое количество обрабатывающих устройств с любой номинальной мощностью.
Силовой элемент 308 может выбирать обрабатывающее устройство (301, 302 или 303) исходя из номинальной мощности запрашиваемой функции. Например, запрашиваемая функция с большой номинальной мощностью (например, с номинальной мощностью больше второго предварительно заданного уровня) может привести к тому, что силовой элемент 308 приводит в действие обрабатывающее устройство 303 (т.е. высокопроизводительное обрабатывающее устройство), чтобы управлять периферийным устройством (т.е. устройством отображения, в данном примере). Если запрашиваемая функция имеет низкую номинальную мощность (например, меньшую или равную первому предварительно заданному уровню), силовым элементом 308 может выбираться и приводиться в действие маломощное обрабатывающее устройство (например, обрабатывающее устройство 301), чтобы управлять периферийным устройством (т.е. устройством отображения). В данном примере маломощное обрабатывающее устройство потребляет меньше мощности, чем высокопроизводительное или высокоемкое обрабатывающее устройство. Следовательно, использование маломощного обрабатывающего устройства (например, обрабатывающего устройства 301) может сберечь мощность по сравнению с использованием высокоемкого или высокопроизводительного обрабатывающего устройства (например, обрабатывающего устройства 303). Аналогично, использование обрабатывающего устройства средних функциональных возможностей (например, обрабатывающего устройства 302) может потреблять количество мощности, находящееся между мощностью, используемой при работе маломощного обрабатывающего устройства (например, обрабатывающего устройства 301), и мощностью, используемой при работе высокомощного обрабатывающего устройства или высокоемкого обрабатывающего устройства (например, обрабатывающего устройства 303). Таким образом, в данном примере для управления периферийным устройством (например, устройством отображения) обрабатывающее устройство может выбираться на основе номинальной мощности желаемой функции так, что маломощное обрабатывающее устройство выбирается, если маломощное обрабатывающее устройство способно управлять периферийным устройством(ами), чтобы выполнить функцию. В противном случае (т.е. если маломощное обрабатывающее устройство не способно выполнить желаемую функцию, например, из-за ограничений по мощности) обрабатывающее устройство большей мощности выбирается для управления периферийными устройствами, чтобы выполнить запрашиваемую функцию.
Также на Фиг. 3 продемонстрировано, что выбранное обрабатывающее устройство может управлять периферийным устройством. В данном случае периферийное устройство включает в себя устройство 307 отображения видеоданных. Выбранное обрабатывающее устройство управляет устройством 307 отображения видеоданных посредством программы 305 управления видеосистемой и набора 306 микросхем для обработки видеоданных. В одном примере пользовательский интерфейс может быть представлен на устройстве 307 отображения видеоданных так, что пользователь может принимать информацию от гибридного вычислительного устройства или может вводить информацию в гибридное вычислительное устройство. Кроме того, пользовательский интерфейс, отображаемый на устройстве 307 отображения видеоданных, может соответствовать выбранному обрабатывающему устройству, которое управляет устройством 307 отображения видеоданных. Например, если для управления устройством 307 отображения видеоданных выбрано маломощное обрабатывающее устройство (например, обрабатывающее устройство 301) для предоставления пользовательского интерфейса, соответствующего запрашиваемой маломощной функции, пользовательский интерфейс, соответствующий запрашиваемой маломощной функции, может быть представлен на устройстве 307 отображения видеоданных. В качестве альтернативы или дополнительно, если запрашивается высокоемкая функция, другое обрабатывающее устройство, такое как высокоемкое обрабатывающее устройство (например, обрабатывающее устройство 303), может выбираться для управления устройством 307 отображения видеоданных (посредством программы 305 управления видеосистемой и/или набора 306 микросхем для обработки видеоданных). В этом случае пользовательский интерфейс, соответствующий высокоемкому обрабатывающему устройству, может отображаться на устройстве 307 отображения видеоданных.
В другом примере пользовательский интерфейс отображается на устройстве 307 отображения видеоданных в первой реализации, когда одно обрабатывающее устройство управляет устройством отображения, и отображается на устройстве 307 отображения видеоданных во второй реализации, когда другое обрабатывающее устройство управляет устройством отображения. Таким образом, когда управление периферийными устройствами (такими как устройство 307 отображения видеоданных) переключается с первого обрабатывающего устройства на второе обрабатывающее устройство, отображаемый пользовательский интерфейс также переключается соответственно с первой реализации на вторую реализацию. В дополнение, изменение пользовательского интерфейса от первой реализации ко второй реализации может быть незаметным для пользователя, так что изменение от первой реализации ко второй реализации пользовательского интерфейса не воспринимается визуально на устройстве 307 отображения видеоданных.
Например, интерфейс может отображаться в первой реализации, когда маломощное обрабатывающее устройство управляет устройством отображения или приводит его в действие. Реагируя на принятие запроса на высокомощную или высокопроизводительную функцию, управление периферийными устройствами (например, устройством отображения) может переключаться с маломощного обрабатывающего устройства на высокоемкое или высокопроизводительное обрабатывающее устройство. Когда управление переключается на высокопроизводительное обрабатывающее устройство, пользовательский интерфейс может отображаться во второй реализации, соответствующей высокопроизводительному обрабатывающему устройству. Однако, тоже в данном примере, вторая реализация пользовательского интерфейса практически аналогична пользовательскому интерфейсу в первой реализации. В качестве альтернативы или дополнительно, вторая реализация пользовательского интерфейса может отличаться от первой реализации пользовательского интерфейса, но быть того же типа или того же класса, что и первая реализация.
Еще в одном примере пользовательский интерфейс плавно переходит от первой реализации ко второй реализации, когда управление переключается или передается от одного обрабатывающего устройства к другому. В данном примере переход является настолько плавным, что какие-либо эффекты дрожания при перемещении отсутствуют или практически незаметны. В одном примере смена или переключение с одной реализации пользовательского интерфейса на другую реализацию пользовательского интерфейса могут быть совершены в пределах единственного кадра или ограниченного количества кадров (например, 2 кадров, 3 кадров, 4 кадров, 5 кадров, 10 кадров, больше 10 кадров и т.д.).
Фиг. 4 демонстрирует пример реализации пользовательского интерфейса на дисплее. В данном примере отображается приложение электронной почты. Пользовательский интерфейс обеспечивает интерфейс электронного почтового сообщения, в котором пользователь может вводить текст в электронное почтовое сообщение. Электронное почтовое сообщение может быть составлено пользователем и может быть передано получателю сообщения. В данном примере пользователь вводит адрес электронной почты получателя сообщения в одном поле пользовательского интерфейса (401), а также вводит текст в части пользовательского интерфейса (402) для тела сообщения. Также в данном примере ввод текста для составления электронного почтового сообщения может использовать некоторое количество вычислительной мощности у вычислительного устройства. Количество мощности, используемой при составлении электронного почтового сообщения, меньше предварительно заданного количества мощности. Поэтому в данном примере может быть выбрано маломощное обрабатывающее устройство для управления или приведения в действие периферийных устройств (например, устройства отображения) в процессе составления сообщения.
Фиг. 5 демонстрирует пример отправки электронного почтового сообщения в гибридном вычислительном устройстве. В данном примере пользователь завершил составление электронного почтового сообщения, введя текст в соответствующую часть пользовательского интерфейса. В данном случае пользователь ввел текст для тела электронного почтового сообщения в соответствующую часть пользовательского интерфейса 502. Затем пользователь хочет отправить электронное почтовое сообщение намеченному получателю. Для выполнения этой задачи в данном примере пользователь выбирает вторую часть пользовательского интерфейса, соответствующую отправке электронного почтового сообщения. Как продемонстрировано на Фиг. 5, пользователь позиционирует курсор 501 над кнопкой 503 отправки ("SEND") и нажимает кнопку 503 отправки. Нажатие кнопки 503 отправки приводит к отправке электронного почтового сообщения намеченному получателю.
В данном примере запрос на отправку электронного почтового сообщения может потреблять уровень мощности, который больше предварительно заданной величины. Например, если определен предварительно заданный порог, при котором потребление мощности меньше предварительно заданного порога, это считается маломощной функцией, тогда как потребление мощности больше предварительно заданного порога рассматривается как высокомощная функция, тогда, если количество мощности, потребляемой при передаче электронного почтового сообщения, больше предварительно заданного порогового уровня, гибридное вычислительное устройство может переключить управление периферийными устройствами (например, устройством отображения) с маломощного обрабатывающего устройства на высокомощное обрабатывающее устройство. Высокомощное обрабатывающее устройство может быть выполнено с возможностью управления периферийными устройствами для передачи электронного почтового сообщения в данном примере, а также может использовать большее количество мощности при выполнении задачи по сравнению с маломощным обрабатывающим устройством. С другой стороны, маломощное обрабатывающее устройство может не иметь возможности передать электронное почтовое сообщение, если количество мощности, используемой при передаче электронного почтового сообщения, превышает возможности маломощного обрабатывающего устройства.
Итак, в данном примере когда пользователь нажимает кнопку 503 отправки, гибридное вычислительное устройство определяет, что уровень мощности запрашиваемой функции (т.е. передачи электронного почтового сообщения намеченному получателю) больше предварительно заданного порога, и, реагируя на это определение, может переключить управление периферийными устройствами на высокомощное обрабатывающее устройство. В данном примере в гибридном вычислительном устройстве может быть предусмотрен переключатель для переключения управления с одного обрабатывающего устройства на другое обрабатывающее устройство. Следовательно, гибридное устройство содержит, по меньшей мере, два обрабатывающих устройства, которые могут быть раздельными и отличными друг от друга. Кроме того, каждое из обрабатывающих устройств может иметь различные функциональные возможности и/или уровни потребления мощности.
Когда запрашивается маломощная функция, может выбираться маломощное обрабатывающее устройство для управления периферийными устройствами, такими как устройство отображения, чтобы отображать пользовательский интерфейс. Когда запрашивается высокомощная функция (например, отправка или передача электронного почтового сообщения), управление переключается с маломощного обрабатывающего устройства на высокомощное обрабатывающее устройство.
Фиг. 6 демонстрирует другой пользовательский интерфейс, отображаемый на устройстве отображения после выбора команды на передачу электронного почтового сообщения. В данном случае управление устройством отображения обеспечивается высокомощным обрабатывающим устройством (например, может быть переключено от маломощного обрабатывающего устройства), и пользовательский интерфейс отображается, как определяется или регулируется высокомощным обрабатывающим устройством. Как продемонстрировано на Фиг. 6, пользовательский интерфейс соответствует приложению электронной почты, так что отсутствует какая-либо особенная визуальная индикация, показывающая, что было произведено переключение управления. В данном примере пользователь может не подозревать, по отображению пользовательского интерфейса, что управление устройством отображения переключилось с маломощного обрабатывающего устройства на высокомощное обрабатывающее устройство.
В одном примере, после того как электронное почтовое сообщение было успешно передано, управление периферийными устройствами, такими как устройство отображения, может переключиться обратно на маломощное обрабатывающее устройство. Например, маломощным обрабатывающим устройством может потребляться меньше мощности, и переключение обратно на управление посредством маломощного обрабатывающего устройства может сберечь энергию в сравнении с управлением устройством отображения посредством высокомощного обрабатывающего устройства. Следовательно, если управление устройством отображения и отображение пользовательского интерфейса переключается обратно на маломощное обрабатывающее устройство, то Фиг. 6 может демонстрировать пользовательский интерфейс, который отображается посредством управления маломощным обрабатывающим устройством.
В качестве альтернативы может сохраняться управление с использованием высокомощного обрабатывающего устройства до тех пор, пока в системе не будет принят запрос на маломощную функцию. В этом случае пользовательский интерфейс, продемонстрированный на Фиг. 6, может предоставляться при посредстве высокомощного обрабатывающего устройства. Таким образом, реализация пользовательского интерфейса может быть различной, исходя из того, какое обрабатывающее устройство управляет периферийными устройствами. Принятие решения о том, какое обрабатывающее устройство управляет периферийными устройствами, может, в свою очередь, основываться на типе запрашиваемой функции (например, на уровне мощности запрашиваемой функции или на типе запрашиваемой функции).
В примере, в котором высокомощное обрабатывающее устройство управляет устройством отображения для отображения соответствующего пользовательского интерфейса, как продемонстрировано на Фиг. 6, пользователь может выбрать команду для составления нового электронного почтового сообщения (601). В этом случае пользователь может нажать кнопку 602 "New", чтобы начать составление нового электронного почтового сообщения избранному получателю электронного почтового сообщения.
Фиг. 7 демонстрирует отображение пользовательского интерфейса для составления электронного почтового сообщения в гибридном вычислительном устройстве. В данном примере гибридное вычислительное устройство, возможно, управлялось посредством высокомощного обрабатывающего устройства. Пользователь вводит команду на составление нового электронного почтового сообщения. В ответ на команду может отображаться новый пользовательский интерфейс (как продемонстрированный на Фиг. 7), и управление устройством отображения может переключиться с высокомощного обрабатывающего устройства на маломощное обрабатывающее устройство. В случае двух обрабатывающих устройств управление может переключаться с более мощного обрабатывающего устройства на менее мощное обрабатывающее устройство. В случае больше двух обрабатывающих устройств управление может переключаться с одного обрабатывающего устройства на какое-либо обрабатывающее устройство меньшей мощности. В одном примере управление переключается с первого (высокомощного) обрабатывающего устройства на следующее менее мощное обрабатывающее устройство. В другом примере управление переключается с одного обрабатывающего устройства на менее мощное обрабатывающее устройство, которое потребляет меньше мощности, чем первое обрабатывающее устройство, и такое, что нет менее мощного обрабатывающего устройства, способного привести в действие устройство отображения и обеспечить запрашиваемые функциональные возможности. Итак, в данном примере это самое маломощное обрабатывающее устройство способно управлять устройством отображения и обеспечить запрашиваемую функцию. Кроме того, пользовательский интерфейс, отображаемый до и после переключения управления обрабатывающим устройством, может быть практически одинаковым. В качестве альтернативы пользовательские интерфейсы могут быть одного типа или принадлежать одному и тому же приложению. Переход от одного пользовательского интерфейса к другому пользовательскому интерфейсу в процессе переключения управления обрабатывающим устройством является настолько плавным, что пользователь может визуально не воспринимать переключение с одного обрабатывающего устройства на другое.
В процессе отображения пользовательского интерфейса, изображенного на Фиг. 7, гибридное вычислительное устройство может определить, что ввод текста для электронного почтового сообщения не нуждается в больших количествах мощности. Поэтому управление устройством отображения может переключиться с высокомощного обрабатывающего устройства на маломощное обрабатывающее устройство. В другом примере управление переключается на маломощное обрабатывающее устройство, которое использует меньше энергии, чем высокомощное обрабатывающее устройство.
Фиг. 8 является блок-схемой, демонстрирующей другой пример гибридного вычислительного устройства. В данном примере гибридное вычислительное устройство может включать в себя, по меньшей мере, два обрабатывающих устройства. Также в данном примере вычислительное устройство включает в себя маломощное обрабатывающее устройство 801 и высокопроизводительное обрабатывающее устройство 802. Каждое из обрабатывающих устройств может управлять дисплеем 806 посредством переключателя 805. Также каждое из обрабатывающих устройств может быть ассоциировано с соответствующим модулем обработки графики (GPU - graphics processor unit). В данном примере маломощное обрабатывающее устройство получает соответствующий маломощный GPU 803, а высокопроизводительное обрабатывающее устройство 802 получает соответствующий высокомощный GPU 804. В зависимости от выполняемой функции, соответствующее обрабатывающее устройство может управлять устройством отображения и дополнительно может предоставлять пользовательский интерфейс на дисплее 806.
Например, если выполняется маломощная или малоемкая функция, может работать маломощное обрабатывающее устройство 801 посредством маломощного GPU 803, чтобы управлять дисплеем 806 и предоставлять соответствующий пользовательский интерфейс на дисплей 806. Если принимается новый запрос на другую функцию и запрашиваемая другая функция является высокомощной или высокоемкой функцией, переключатель 805 может переключиться из одного состояния в другое, чтобы управление дисплеем 806 обеспечивалось высокопроизводительным обрабатывающим устройством 802 посредством соответствующего высокомощного GPU 804. В этом случае высокопроизводительное обрабатывающее устройство 802 может использовать больше мощности, чем маломощное обрабатывающее устройство 801, при выполнении запрашиваемой задачи. С другой стороны, маломощное обрабатывающее устройство 801 может быть неспособно выполнить запрашиваемую высокомощную функцию по множеству причин, которые могут включать в себя ограничения по мощности маломощного обрабатывающего устройства 801. В этом случае переключатель 805 может переключиться из одного состояния в другое, чтобы разрешить высокопроизводительному обрабатывающему устройству 802 управлять периферийными устройствами, такими как дисплей 806, и чтобы предоставить соответствующий пользовательский интерфейс.
Еще в одном примере пользовательский интерфейс, предоставляемый на дисплее 806 посредством маломощного обрабатывающего устройства 801, может быть или практически аналогичным пользовательскому интерфейсу, предоставляемому на дисплее 806 посредством высокопроизводительного обрабатывающего устройства 802, или может быть практически того же типа, или предоставляться одним и тем же приложением. Когда управление периферийными устройствами (например, устройством 806 отображения) переключается с одного из обрабатывающих устройств на другое из обрабатывающих устройств, отображаемый пользовательский интерфейс может переключаться с одной реализации на другую. Однако переход между двумя реализациями пользовательского интерфейса может быть плавным и визуально не заметным для пользователя.
Фиг. 9 является блок-схемой, демонстрирующей другой пример гибридного вычислительного устройства и управления периферийным устройством (например, устройством отображения), по меньшей мере, одним обрабатывающим устройством из множества обрабатывающих устройств вычислительного устройства. В данном примере маломощное обрабатывающее устройство 902 может управлять или приводить в действие дисплей 904 посредством программы 903 управления отображением. Маломощное обрабатывающее устройство 902 может дополнительно предоставлять соответствующий пользовательский интерфейс, который будет отображаться на дисплее 904. Пользовательский интерфейс может быть ассоциирован с маломощной функцией, выполняемой гибридным вычислительным устройством.
Когда принимается запрос на высокомощную функцию, управление может переключаться с маломощного обрабатывающего устройства 901 на высокопроизводительное обрабатывающее устройство 902. Однако в данном примере высокопроизводительное обрабатывающее устройство 902 не взаимодействует непосредственно с периферийным устройством (например, дисплеем 904). Вместо этого высокопроизводительное обрабатывающее устройство 902 взаимодействует, и управляет им, с маломощным обрабатывающим устройством 901, которое может, в свою очередь, управлять или приводить в действие периферийное устройство(а) (например, дисплей 904). Маломощное обрабатывающее устройство 901, таким образом, может взаимодействовать, и управлять им, с дисплеем 904 по поручению высокопроизводительного обрабатывающего устройства 902. Следовательно, маломощное обрабатывающее устройство 901 и дисплей 904 могут образовывать подсистему 905 в пределах гибридного вычислительного устройства, а высокопроизводительное обрабатывающее устройство 902 может управлять этой подсистемой. Как продемонстрировано в примере на Фиг. 9, высокопроизводительное обрабатывающее устройство 902 управляет, или взаимодействует с ним, маломощным обрабатывающим устройством 901 подсистемы 905 для управления дисплеем 904 посредством программы 903 управления отображением.
В этом случае высокопроизводительное обрабатывающее устройство 902 может предоставлять пользовательский интерфейс для отображения на дисплее 904. Высокопроизводительное обрабатывающее устройство 902 отправляет маломощному обрабатывающему устройству 901 команду, которая может включать в себя параметры для генерирования пользовательского интерфейса, соответствующего приложению. Маломощное обрабатывающее устройство 901 может затем передать команду на дисплей 904 посредством программы 903 управления отображением, для отображения пользовательского интерфейса, соответствующего информации о пользовательском интерфейсе от высокопроизводительного обрабатывающего устройства 902. В качестве альтернативы или дополнительно, если запрашиваемая функция является маломощной функцией, маломощное обрабатывающее устройство 901 может управлять или приводить в действие дисплей 904 и предоставлять соответствующий пользовательский интерфейс. В этом случае высокопроизводительное обрабатывающее устройство 902 может выключиться или, в качестве альтернативы, войти в режим пониженного потребления мощности, такой как режим ожидания.
Фиг. 10 является блок-схемой, демонстрирующей другой пример гибридного вычислительного устройства. В данном примере гибридное вычислительное устройство 1000 имеет маломощное обрабатывающее устройство 1001 и высокопроизводительное обрабатывающее устройство 1002. Хотя на Фиг. 10 продемонстрированы два обрабатывающих устройства, в любую конфигурацию может включаться любое количество обрабатывающих устройств. Кроме того, любое из обрабатывающих устройств может работать на любом назначенном уровне мощности.
Маломощное обрабатывающее устройство 1001 может управлять любым количеством периферийных устройств (например, периферийным устройством A 1009, периферийным устройством B 1010, периферийным устройством C 1011, периферийным устройством n 1012) для выполнения желаемой функции. Периферийные устройства могут быть любого типа. Например, периферийные устройства могут включать в себя дисковод, модуль GPS, плату беспроводной связи третьего поколения, привод DVD, плату Wi-Fi, звуковую систему и т.д. Это просто примеры, поскольку в состав может включаться любое периферийное устройство. В дополнение, маломощное обрабатывающее устройство может соединяться с дисплеем посредством маломощного GPU 1007 и может дополнительно предоставлять пользовательский интерфейс, соответствующий выполняемой функции. Пользовательский интерфейс, предоставляемый маломощным обрабатывающим устройством 1001, может отображаться для пользователя на дисплее 1003. Например, запрашиваемая функция может включать в себя функцию, выполняемую на периферийном устройстве под управлением маломощного обрабатывающего устройства 1001. В данном примере запрашиваемая функция может быть маломощной функцией, которой способно управлять маломощное обрабатывающее устройство 1001. Маломощное обрабатывающее устройство 1001 может дополнительно предоставлять пользовательский интерфейс посредством маломощного GPU 1007 для отображения на дисплее 1003. Пользовательский интерфейс, предоставленный маломощным обрабатывающим устройством, может соответствовать функции, выполняемой на периферийном устройстве. Например, пользователь может вводить команды или данные посредством пользовательского интерфейса на дисплее 1003. На основании команд или данных, введенных пользователем, периферийное устройство(а) может выполнять запрашиваемую или желаемую функцию определенным образом.
Также в данном примере гибридное вычислительное устройство 1000 может дополнительно включать в себя высокопроизводительное обрабатывающее устройство 1002. Высокопроизводительное обрабатывающее устройство 1002 может быть отдельным от маломощного обрабатывающего устройства 1001 элементом и может управлять или приводить в действие периферийные устройства (1009-1012) посредством маломощного обрабатывающего устройства 1001. Как демонстрируется на Фиг. 10, высокопроизводительное обрабатывающее устройство взаимодействует с маломощным обрабатывающим устройством 1001. Также в данном примере высокопроизводительное обрабатывающее устройство не взаимодействует непосредственно с периферийными устройствами (1009 - 1012). Скорее, высокопроизводительное обрабатывающее устройство 1002 взаимодействует, и/или управляет им, с маломощным обрабатывающим устройством 1001, которое, в свою очередь, взаимодействует, и/или управляет ими, с периферийными устройствами (1009-1012). Таким образом, взаимодействия со стороны маломощного обрабатывающего устройства 1001 с периферийными устройствами (1009-1012) в данном примере выполняются по поручению высокопроизводительного обрабатывающего устройства 1002.
Кроме того, высокопроизводительное обрабатывающее устройство 1002 может управлять или приводить в действие дисплей 1003. Как продемонстрировано в примере на Фиг. 10, высокопроизводительное обрабатывающее устройство 1002 может запускать или управлять дисплеем 1003 посредством высокомощного модуля обработки графики (ВМ GPU 1006). Кроме того, переключатель 1005 может управлять тем, какое обрабатывающее устройство взаимодействует с дисплеем 1003. Например, когда маломощное обрабатывающее устройство 1001 управляет дисплеем 1003, переключатель 1005 может быть установлен на разрешение взаимодействия между маломощным обрабатывающим устройством 1001 и дисплеем 1003. В этом случае высокопроизводительное обрабатывающее устройство 1002 не взаимодействует с дисплеем 1003. И наоборот, когда высокопроизводительное обрабатывающее устройство 1002 управляет дисплеем 1003, переключатель 1005 может быть установлен на разрешение взаимодействия между высокопроизводительным обрабатывающим устройством 1002 и дисплеем 1003. В этом случае маломощное обрабатывающее устройство 1001 не взаимодействует с дисплеем 1003.
То, какое обрабатывающее устройство (маломощное обрабатывающее устройство 1001 или высокопроизводительное обрабатывающее устройство 1002) взаимодействует с дисплеем или периферийными устройствами (1009-1012), может изменяться в зависимости от выполняемой функции. Например, если пользователь запрашивает выполнение функции, которая требует определенного уровня мощности, который превышает предварительно заданную величину, то, например, маломощное обрабатывающее устройство может быть неспособно обеспечить запрашиваемую функцию, если маломощное обрабатывающее устройство 1001 выполнено с возможностью обеспечения функций, которые не превышают предварительно заданного количества мощности. В этом случае управление гибридным вычислительным устройством или периферийными устройствами (1009-1012) может переключиться на высокопроизводительное обрабатывающее устройство 1002 с маломощного обрабатывающего устройства 1001.
Кроме того, управление дисплеем 1003 может переключаться между маломощным обрабатывающим устройством 1001 и высокопроизводительным обрабатывающим устройством 1002. Например, если выполняется высокоемкая или высокомощная функция, высокопроизводительное обрабатывающее устройство может управлять маломощным обрабатывающим устройством 1001 для управления периферийными устройствами (1009-1012), как описано. В этом случае маломощное обрабатывающее устройство 1001 и периферийные устройства (1009-1012) образуют подсистему, которая управляется высокопроизводительным обрабатывающим устройством 1002. Также в данном примере дисплей 1003 может управляться высокопроизводительным обрабатывающим устройством 1002 при посредстве ВМ GPU 1006, отдельного от подсистемы (т.е. от маломощного обрабатывающего устройства 1001, программы 1008 управления периферийными устройствами и периферийных устройств 1009-1012). Следовательно, если выполняется высокомощная функция (например, посредством периферийных устройств), устройство отображения может управляться высокопроизводительным обрабатывающим устройством. Кроме того, высокопроизводительное обрабатывающее устройство 1002 может предоставлять соответствующий пользовательский интерфейс для отображения на дисплее 1003, когда пользовательский интерфейс соответствует выполняемой высокомощной функции.
Дополнительно в данном примере если запрашивается новая функция, которая является маломощной функцией, способной управляться маломощным обрабатывающим устройством, то управление периферийными устройствами 1009-1012 посредством программы 1008 управления периферийными устройствами может переключиться на маломощное обрабатывающее устройство. В этом случае высокопроизводительное обрабатывающее устройство 1002 может снизить потребление мощности. Например, высокопроизводительное обрабатывающее устройство 1002 может выключиться или может войти в режим ожидания. Кроме того, переключатель 1005 может изменять состояние, чтобы разрешить маломощному обрабатывающему устройству 1001 управлять дисплеем 1003 (посредством маломощного GPU 1007). Маломощное обрабатывающее устройство 1001 может предоставлять для отображения на дисплее 1003 пользовательский интерфейс, который соответствует выполняемой маломощной функции. Таким образом, в данном примере пользовательский интерфейс, отображаемый на дисплее 1003, может переключаться с реализации пользовательского интерфейса, предоставляемой высокопроизводительным обрабатывающим устройством 1002, на другую реализацию пользовательского интерфейса, предоставляемую маломощным обрабатывающим устройством 1001. Переход между различными реализациями пользовательского интерфейса может быть сделан без существенных визуальных признаков того, что было совершено изменение. Таким образом, пользователь может почувствовать плавный переход между пользовательскими интерфейсами, без эффектов дрожания.
В одном примере пользовательский интерфейс, предоставляемый с использованием высокопроизводительного обрабатывающего устройства 1002, практически аналогичен пользовательскому интерфейсу, предоставляемому с использованием маломощного обрабатывающего устройства 1001, так что пользователь может не сознавать, что произошло изменение при переходе управления от одного из обрабатывающих устройств к другому. В другом примере пользовательский интерфейс, предоставляемый с использованием одного из обрабатывающих устройств, соответствует тому же приложению, что и пользовательский интерфейс, предоставляемый с использованием другого обрабатывающего устройства. В данном примере пользовательский интерфейс, соответствующий одному и тому же приложению, отображается на дисплее 1003 до и после перехода от одного обрабатывающего устройства к другому обрабатывающему устройству. Следовательно, пользователь может не сознавать, что произошло изменение.
Фиг. 11 является блок-схемой последовательности операций, демонстрирующей пример предоставления пользовательского интерфейса на дисплее. В данном примере на гибридном вычислительном устройстве принимается команда или ввод данных от пользователя (ЭТАП 1101). Команда может указывать желаемую функцию, которая должна выполняться гибридным вычислительным устройством или периферийными устройствами, соединенными с гибридным вычислительным устройством. Например, пользователь может запросить операцию, которая использует уровень мощности меньше предварительно заданной величины. Гибридное вычислительное устройство в данном примере включает в себя множественные обрабатывающие устройства, которые могут работать на различных уровнях мощности. Кроме того, различные обрабатывающие устройства могут иметь определенные уровни функциональных возможностей, которые к тому же могут быть пропорциональны каждому соответствующему уровню мощности.
Исходя из запрашиваемой функции, может быть выбрано соответствующее обрабатывающее устройство для управления и/или приведения в действие периферийных устройств, соединенных с гибридным вычислительным устройством. Кроме того, выбранное обрабатывающее устройство может управлять устройством отображения и может предоставлять соответствующий пользовательский интерфейс на дисплее (ЭТАП 1102). Пользовательский интерфейс может включать в себя какое-либо количество полей, в которые пользователь может вводить данные. В одном примере запрашиваемая функция является маломощной функцией, которая использует уровень мощности меньше предварительно заданной величины. На основании типа функции и соответствующего уровня мощности для управления периферийными устройствами и/или устройством отображения может быть выбрано маломощное обрабатывающее устройство. Таким образом, маломощное обрабатывающее устройство управляет устройством отображения и предоставляет реализацию пользовательского интерфейса на дисплее, который соответствует запрашиваемой функции.
На ЭТАПЕ 1103 на гибридном вычислительном устройстве могут приниматься вторые входные данные. Вторые входные данные могут включать в себя команду для второй функции, которая может отличаться от первой функции. Вторая функция также может использовать другой уровень мощности по сравнению с первой функцией. Например, если первой функции требуется низкий уровень мощности (т.е. уровень мощности, который меньше предварительно заданного уровня) и если второй функции требуется высокий уровень мощности, например уровень мощности больше предварительно заданного уровня, то ранее выбранное обрабатывающее устройство (т.е. обрабатывающее устройство, выбранное для выполнения первой функции) может быть неспособно выполнить вторую функцию. Например, если выбранное обрабатывающее устройство (т.е. маломощное обрабатывающее устройство, в данном примере) было выбрано для управления периферийными устройствами и/или дисплеем, чтобы выполнить первую функцию, управление периферийными устройствами и/или дисплеем может быть переключено на другое обрабатывающее устройство, чтобы выполнить вторую функцию (т.е. высокомощную функцию) (ЭТАП 1104).
Переключение управления с одного обрабатывающего устройства на другое может зависеть от типа запрашиваемой функции. Например, если маломощное обрабатывающее устройство управляет периферийными устройствами и/или дисплеем, чтобы выполнить маломощную функцию, и принимается запрос на высокомощную функцию, то маломощное обрабатывающее устройство может определить, что высокомощная функция не может быть выполнена под управлением маломощного обрабатывающего устройства. Определение этого может вызвать переключение управления с маломощного обрабатывающего устройства на более мощное обрабатывающее устройство (ЭТАП 1104). В качестве альтернативы может быть предусмотрен ручной переключатель, чтобы пользователь мог при необходимости вручную переключаться с одного обрабатывающего устройства на другое.
При переключении управления периферийными устройствами с одного обрабатывающего устройства на другое управление устройством отображения также может переключаться, и на устройстве отображения может предоставляться другая реализация пользовательского интерфейса, обеспечиваемая другим обрабатывающим устройством. Например, если маломощное обрабатывающее устройство управляет периферийными устройствами и предоставляет соответствующую выполняемой функции реализацию пользовательского интерфейса на дисплее и если принимается запрос на высокомощную функцию, управление устройством отображения может переключаться с маломощного обрабатывающего устройства на высокомощное обрабатывающее устройство. В одном примере предусматривается такой переключатель, что, когда новая запрашиваемая функция приводит к переключению управления с одного обрабатывающего устройства на другое, переключатель изменяет состояние так, что управление устройством отображения переключается с одного обрабатывающего устройства на другое. В другом примере второе обрабатывающее устройство непосредственно взаимодействует с устройством отображения, чтобы предоставить другой экземпляр реализации пользовательского интерфейса. При этом второе обрабатывающее устройство не взаимодействует напрямую с другими периферийными устройствами. Скорее, первое обрабатывающее устройство управляет и взаимодействует с другими периферийными устройствами по поручению высокомощного обрабатывающего устройства, так что высокомощное обрабатывающее устройство управляет другими периферийными устройствами только посредством маломощного обрабатывающего устройства. В этом случае первое обрабатывающее устройство и другие периферийные устройства образуют подсистему, которая в совокупности управляется вторым обрабатывающим устройством, и второе обрабатывающее устройство не взаимодействует непосредственно с другими периферийными устройствами или не соединяется с ними напрямую.
Как продемонстрировано на Фиг. 11, изменение управления с одного обрабатывающего устройства на другое обрабатывающее устройство приводит к изменению в реализации пользовательского интерфейса на дисплее. В данном примере переход от одной реализации пользовательского интерфейса к другой реализации пользовательского интерфейса является настолько плавным, что пользователь может не сознавать, что произошло изменение. Например, один экземпляр реализации пользовательского интерфейса на одной подсистеме с обрабатывающим устройством может привести к переключению на пользовательский интерфейс, представляющий те же пользовательский интерфейс и модель взаимодействия пользователя с системой при поддержании вида и функций пользовательского интерфейса (ЭТАП 1105). Следовательно, в данном примере может отсутствовать какой-либо существенный визуальный признак того, что имело место переключение управления со стороны обрабатывающих устройств.
Фиг. 12 является блок-схемой последовательности операций, демонстрирующей другой пример предоставления пользовательского интерфейса на дисплее. На ЭТАПЕ 1201 принимается команда на выполнение функции, например, от пользователя. Делается определение относительно уровня мощности функции. Функция, которая использует уровень мощности меньше предварительно заданной величины, может определяться как маломощная функция, тогда как функция, которая использует уровень мощности больше предварительно заданной величины, может определяться как высокомощная функция (ЭТАП 1202). Если запрашиваемая функция определена как маломощная функция (ветвь "Да" ЭТАПА 1202), определяется обрабатывающее устройство, в настоящее время управляющее периферийными устройствами и/или дисплеем. Устройство может включать в себя множественные обрабатывающие устройства, так что любое обрабатывающее устройство или их комбинация может управлять периферийными устройствами и/или дисплеями. Различные обрабатывающие устройства могут работать на различных уровнях мощности, так что одно обрабатывающее устройство может использовать больше мощности, чем другое обрабатывающее устройство. Кроме того, обрабатывающее устройство, использующее меньше мощности, может иметь более ограниченный перечень функций, которые это обрабатывающее устройство способно выполнять, по сравнению с обрабатывающим устройством, использующим больше мощности.
Если обрабатывающее устройство может использовать максимальное количество мощности, которое меньше предварительно заданной величины, обрабатывающее устройство может быть определено как маломощное обрабатывающее устройство. Если обрабатывающее устройство может использовать максимальное количество мощности, которое больше предварительно заданной величины, обрабатывающее устройство может быть определено как высокомощное обрабатывающее устройство. Может иметь место любое количество обрабатывающих устройств с самым разным уровнем (например, с промежуточными уровнями) использования мощности. Различным уровням использования мощности при необходимости могут назначаться различные категории.
В данном примере если запрашиваемая функция является маломощной функцией (ветвь "Да" ЭТАПА 1202) и задействовано маломощное обрабатывающее устройство (ветвь "Да" ЭТАПА 1204), то маломощное обрабатывающее устройство может отобразить пользовательский интерфейс, соответствующий запрашиваемой функции (ЭТАП 1208). С другой стороны, если маломощное обрабатывающее устройство не задействовано (например, может быть задействовано высокомощное обрабатывающее устройство) (ветвь "Нет" ЭТАПА 1204), то управление периферийными устройствами и/или дисплеем может переключиться на маломощное обрабатывающее устройство (ЭТАП 1206). Маломощное обрабатывающее устройство может отобразить соответствующий пользовательский интерфейс на дисплее (ЭТАП 1208).
Если запрашиваемая функция является настолько высокомощной функцией, что использование мощности для выполнения этой высокомощной функции больше предварительно заданной величины (ветвь "Нет" ЭТАПА 1202), то производится определение того, какое обрабатывающее устройство задействовано в настоящее время (ЭТАП 1203). Если в настоящее время задействовано высокомощное обрабатывающее устройство, причем это высокомощное обрабатывающее устройство способно выполнить запрашиваемую высокомощную функцию (ветвь "Да" ЭТАПА 1203), то высокомощное обрабатывающее устройство может отобразить экземпляр реализации пользовательского интерфейса, соответствующего запрашиваемой функции (ЭТАП 1207). С другой стороны, если высокомощное обрабатывающее устройство не задействовано в настоящее время, а задействовано маломощное обрабатывающее устройство (ветвь "Нет" ЭТАПА 1203), то задействованное в настоящее время маломощное обрабатывающее устройство может быть неспособно выполнить запрашиваемую высокомощную функцию. В этом случае управление периферийными устройствами и/или управление может переключиться с маломощного обрабатывающего устройства на высокомощное обрабатывающее устройство (ЭТАП 1205), которое способно выполнить запрашиваемую высокомощную функцию. Высокомощное обрабатывающее устройство может отобразить реализацию соответствующего пользовательского интерфейса на дисплее (ЭТАП 1207).
Кроме того, если больше двух обрабатывающих устройств используются на различных уровнях мощности, то решение может быть принято, если может использоваться меньшее обрабатывающее устройство для сохранения мощности. Например, если используются три обрабатывающих устройства, причем первое обрабатывающее устройство работает на низком уровне мощности, который меньше первого предварительно заданного уровня, второе обрабатывающее устройство работает на среднем уровне мощности, который больше первого предварительно заданного уровня, но меньше второго предварительно заданного уровня, а третье обрабатывающее устройство работает на высоком уровне мощности, который больше второго предварительно заданного уровня. При этом третье (высокомощное) обрабатывающее устройство может быть задействовано в настоящее время, тогда как запрашивается маломощная функция. Маломощная функция может использовать количество мощности, которое меньше первого предварительно заданного уровня. В этом случае может быть сделано определение того, что и первое и второе обрабатывающие устройства могут выполнить запрашиваемую функцию. Однако дополнительно может определяться, что обрабатывающее устройство с самым низким уровнем мощности, способное выполнять эту функцию, является первым обрабатывающим устройством. Таким образом, в данном примере первое обрабатывающее устройство (а не второе обрабатывающее устройство) может быть выбрано для управления периферийными устройствами и/или дисплеем, чтобы выполнить функцию и предоставить соответствующий пользовательский интерфейс на дисплее.
Пользовательский интерфейс может отображаться, когда одно обрабатывающее устройство задействовано в настоящее время. Пользовательский интерфейс может также отображаться, когда второе обрабатывающее устройство задействовано (т.е. управляет периферийными устройствами для выполнения запрашиваемой функции). Когда происходит переключение между обрабатывающими устройствами, пользовательский интерфейс также может переключаться с первого обрабатывающего устройства на второе обрабатывающее устройство для управления периферийными устройствами, чтобы выполнить функцию. В данном примере пользователь может отображаться посредством первой подсистемы с обрабатывающим устройством при переключении с первой подсистемы с обрабатывающим устройством на вторую подсистему с обрабатывающим устройством. Пользовательский интерфейс, представленный на дисплее, таким образом, также может переключаться на вторую подсистему с обрабатывающим устройством, однако переключение в пользовательском интерфейсе делается с плавным переходом, так что пользователь может не сознавать или может не догадываться, что переключение имело место. Например, вторая подсистема с обрабатывающим устройством может предоставлять второй пользовательский интерфейс, который практически аналогичен пользовательскому интерфейсу практически с тем же расположением на дисплее по сравнению с пользовательским интерфейсом от первой подсистемы с обрабатывающим устройством. В качестве альтернативы или дополнительно, вторая подсистема с обрабатывающим устройством может предоставлять второй пользовательский интерфейс, соответствующий тому же приложению, что и приложение, ассоциированное с первым пользовательским интерфейсом.
В одном примере обеспечивается беспрепятственное зрительное восприятие с обеих сторон, так что рисунок и сам переход не дрожат. Например, переключение между экземплярами реализации пользовательского интерфейса может обеспечиваться в пределах единственного кадра или небольшого количества кадров (например, 2 кадров, 3 кадров, 4 кадров, 5 кадров и т.д.). Например, подсистема с обрабатывающим устройством с меньшими возможностями может передать управление выполнением подсистеме с обрабатывающим устройством с большими возможностями без того, чтобы пользователь осознал, что переключение имело место. Следовательно, в данном примере обеспечиваются ощущение отсутствия модальности и улучшенное пользовательское восприятие. В другом примере подсистема с обрабатывающим устройством с меньшими возможностями используется в интересах снижения потребления электрической мощности, но пользователь неявно запускает процесс, требующий наличия возможности, отсутствующей на этой подсистеме с обрабатывающим устройством с меньшими возможностями (но в пределах возможностей подсистемы с обрабатывающим устройством с большими возможностями). Может быть выполнено переключение между подсистемами с обрабатывающими устройствами при соответствующем переключении между реализациями пользовательского интерфейса, незаметно для пользователя.
Понятно, что особенности настоящего изобретения могут принимать множество форм и вариантов осуществления. Варианты осуществления, показанные в настоящем документе, предназначены для пояснения, а не для ограничения настоящего изобретения, нужно понимать, что могут быть сделаны изменения без отступления от сущности объема настоящего изобретения. Хотя показаны и описаны иллюстративные варианты осуществления настоящего изобретения, в предшествующем раскрытии подразумевается большое разнообразие модификаций, изменений и замен, а в некоторых случаях некоторые особенности настоящего изобретения могут использоваться без соответствующего использования других особенностей. В связи с этим уместно, что прилагаемая формула изобретения толкуется широко и в соответствии с объемом настоящего изобретения.