Способы и системы для обеспечения раздельного конфигурирования и доступа множества виртуальных машин к физическому ресурсу

Изобретение относится к области виртуальных машин. Техническим результатом является повышение эффективности конфигурирования физического устройства. Раскрыты способы и системы для обеспечения для многочисленных виртуальных машин (VM) раздельного конфигурирования и получения доступа к физическому ресурсу, по существу, вне монитора виртуальных машин (VMM), управляющего VM. Каждая из множества виртуальных машин (VM) может получать доступ и конфигурировать физическое устройство через соответствующие экземпляры драйвера устройства, обеспечивающего управляемые функции физического устройства в пределах VM. Параметры конфигурации конкретной VM и информация о соединении могут поддерживаться для каждой из VM, за пределами VMM, чтобы переконфигурировать или виртуализировать физическое устройство для каждой из VM в соответствии с параметрами конфигурации конкретной VM и информацией о соединении. Свойства улучшенной виртуализации физического устройства могут реализовываться в комбинации контроллера физического устройства и драйвера хост-устройства, который исполняется вне VM. 3 н. и 20 з.п. ф-лы, 11 ил.

 

Уровень техники

Компьютерная система может содержать монитор виртуальных машин (VMM) для управления одной или более гостевыми операционными системами.

VMM может произвольно получать доступ к ресурсам компьютерной системы среди гостевых операционных систем. VMM может предоставлять виртуальный интерфейс или производить выделение ресурсов гостевым операционным системам. Гостевая операционная система и соответствующие виртуализированные ресурсы и интерфейсы упоминаются здесь как виртуальная машина (VM).

VMM может предоставлять для VM изолированную и безопасную среду.

VMM может быть реализован в программном обеспечении или в комбинации аппаратного обеспечения и программного обеспечения.

Физический ресурс может содержать одну или более конфигурируемых функций. Например, контроллер (NIC) интерфейса беспроводной сети может иметь возможность изменения конфигурации в отношении инициализации устройства, сканирования сети, выбора точек доступа к сети, выбора канала, установления соединения, управления передачей управления, безопасности и управления электропитанием.

Разработаны способы виртуализации проводных NIC, содержащие поддержку мониторов VMM на основе программного обеспечения и виртуализации аппаратурного обеспечения NIC на основе спецификации единой корневой виртуализации ввода-вывода (SR-IOV) (vl.O), распространенной группой Peripheral Component Interconnect Special Interest Group (PCI-SIG) (специальная группа по взаимодействию периферийных компонент).

Подход VMM, основанный на программном обеспечении, может делать незаметными признаки конфигурируемого устройства со стороны машин VM.

Подход SR-IOV может улучшить характеристики NIC, но добавляет сложности аппаратурного обеспечения и увеличивает затраты.

Краткое описание чертежей

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

Фиг.2 - концептуальная блок-схема системы увеличения виртуализации (VA).

Фиг.3 - блок-схема компьютерной платформы, в которой физическое устройство содержит контроллер (NIC) интерфейса беспроводной сети с увеличенной виртуализацией.

Фиг.4 - блок-схема компьютерной платформы, представленной на фиг.3, в которой система VA выполнена с возможностью связи идентификаторов VM с сообщениями и управлением, проходящим между VMM и физическим устройством.

Фиг.5 - блок-схема последовательности выполнения операций способа взаимодействия между физическим устройством и множеством VM.

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

Фиг.7 - блок-схема последовательности выполнения операций способа управления беспроводным NIC для работы с многочисленными VM, в том числе дифференциации среди VM в отношении управления конфигурацией и трафика данных к машинам VM и от них.

Фиг.8 - блок-схема последовательности выполнения операций способа дифференциации машин VM в отношении управления конфигурацией и принятых пакетов.

Фиг.9 - блок-схема последовательности выполнения операций способа связи идентификаторов конкретных VM с пакетами, принимаемыми от одной или более точек доступа, и с передаваемыми пакетами, принятыми от VMM.

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

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

На чертежах крайняя левая цифра(-ы) ссылочной позиции идентифицирует чертеж, в котором ссылочная позиция появилась впервые.

Подробное описание

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

На фиг.1 представлена блок-схема компьютерной платформы 100, содержащей компьютерную систему 102, конфигурируемый физический ресурс или устройство 104 и систему 118 увеличения виртуализации, чтобы позволить каждой из множества виртуальных машин компьютерной системы 102 конфигурировать и получать доступ к физическому устройству 104.

Физическое устройство 104 может содержать контроллер 106 устройства для конфигурирования одной или более функций или свойств физического устройства 104.

Физическое устройство 104 может содержать один или более из множества типов физических устройств или ресурсов. Например, физическое устройство 104 может содержать беспроводной приемопередатчик, и контроллер 106 устройства может содержать контроллер (NIC) интерфейса беспроводной сети. Физическое устройство 104 и контроллер 106 устройства, однако, не ограничиваются беспроводным NIC.

Компьютерная система 102 может содержать один или более процессоров 108, чтобы обеспечивать среду исполнения процессора, упомянутую здесь как хост-среда 110. Хост-среда 110 может содержать монитор виртуальной машины (VMM) 112, чтобы управлять одной или более виртуальными машинами (VM) 114-1-114-n.

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

Хост-среда 110 может содержать драйвер 116 хост-устройства для взаимодействия между компьютерной системой 102 и физическим устройством 104. Драйвер 116 хост-устройства может выполняться на процессоре 108 за пределами VMM 112.

Система 118 VA может быть выполнена с возможностью разрешения каждой из машин VM 114-1-114-n отдельно конфигурировать и получать доступ к физическому устройству 104.

Каждая из VM 114 может содержать экземпляр драйвера 120 устройства, чтобы представлять управляемые функции физического устройства в пределах каждой из VM 114-1-114-n.

Драйвер 120 устройства может быть разработан специально для физического устройства 104 и/или контроллера устройства 106 и может предоставляться производителем физического устройства 104 и/или контроллера 106 устройства.

Драйвер 120 устройства может здесь упоминаться как собственный драйвер устройства.

Система VA 118 или ее участки могут быть реализованы в пределах контроллера 106 устройства и/или в пределах компьютерной системы 102. В пределах компьютерной системы 102 один или более участков системы 118 VA могут быть реализованы в пределах VMM 112 и/или за пределами VMM 112, например в пределах драйвера 116 хост-устройства.

Когда участок системы VA 118 реализуется в пределах контроллера 106 устройства, контроллер 106 устройства может здесь упоминаться как контроллер устройства с увеличенной виртуализацией.

Когда участок системы 112 интерфейса ввода-вывода реализуется в пределах драйвера 116 хост-устройства, драйвер 116 хост-устройства может здесь упоминаться как драйвер хост-устройства с увеличенной виртуализацией.

На фиг.2 представлена концептуальная блок-схема системы 118 увеличения виртуализации, содержащая единый механизм 202 управления для управления командами и/или данными, посланными от VM 114-1-114-n к физическому устройству 104 (фиг.1). Единый механизм 202 управления может обеспечить единый интерфейс управления для физического устройства 104. Например, объединенный механизм 202 управления может быть выполнен с возможностью синтеза команд управления и/или конфигурации от VM 114-1-114-n, чтобы, например, выбрать и/или отвергать команды управления и/или конфигурации от других машин из числа VM 114-1-114-n, которые могут быть основаны на приоритете, природе команд, потенциальных конфликтах и/или других факторах.

Единый механизм 202 управления может быть выполнен с возможностью поддержания параметров 204 конкретной VM для каждой из VM 114-1-114-n и выборочного применения параметров 204 конкретной VM к физическому устройству 104. Выборочное применение параметров 204 конкретной VM функционально показано на фиг.2 с использованием мультиплексора 206.

Параметры 204 могут содержать один или более параметров конфигурации устройства и/или информацию о соединении. Типы параметров конфигурации устройства и информации о соединении могут изменяться устройством физического типа.

Когда физическое устройство 104 содержит, например, беспроводной NIC, параметры конфигурации могут относиться к одному или более из следующего:

инициализация устройства;

сканирование сети;

выбор точки доступа к сети;

выбор канала;

установление соединения;

управление передачей управления;

сетевая синхронизация;

выбор скорости передачи данных;

безопасность/шифрование; и

управление электропитанием.

Альтернативно или дополнительно, беспроводной NIC может конфигурироваться в отношении одного или более из следующего:

аутентификация;

управление шириной полосы;

управление доступом/ приоритетом;

роуминг подсети;

буферизация;

запрос на передачу и готовность к передаче (RTS/CTS); и

качество обслуживания (QoS) (например, управление шириной полосы пропускания, основываясь на профилях пользователя, таких как приоритеты доступа).

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

Что касается информации о соединении, то когда физическое устройство 104 содержит беспроводной NIC, информация о соединении может содержать, например, адрес MAC конкретной VM, скорости передачи данных, поддерживаемые точкой доступа, канал, по которому действует точка доступа, и/или ключи защиты для конкретного соединения или сеанса.

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

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

Управляющий модуль 202 может быть выполнен с возможностью координации сообщений передачи и приема между машинами VM 114 и физическим устройством 104 и разрешения каждой из машин VM 114-1-114-n отдельно получать доступ к физическому устройству 104, основываясь на соответствующих параметрах 204 конкретной VM. Управляющий модуль 202 может быть выполнен с возможностью разрешения машинам VM 114-1-114-n раздельно получать доступ к физическому устройству 104 посредством мультиплексирования во времени.

Управляющий модуль 202 или его участки могут быть реализованы в пределах драйвера 116 хост-устройства (фиг.1) и/или в пределах контроллера 106 устройства (фиг.1), например, с помощью встроенных команд микропрограммного обеспечения или логики для выполнения на микроконтроллере.

На фиг.3 представлена блок-схема компьютерной системы 102 и физического устройства 102, в которой физическое устройство 104 содержит беспроводной NIC 304 с увеличенной виртуализацией, компьютерная система 102 содержит хост-драйвер 312 беспроводного NIC с увеличенной виртуализацией, и система 118 VA показана как реализованная посредством NIC 304, хост-драйвера 312 беспроводного NIC и VMM 112.

Беспроводной NIC 304 может содержать контроллер 306 среды доступа (MAC) и участок физического уровня или устройство (PHY) 308 для взаимодействия между MAC 306 и беспроводным приемопередатчиком. MAC 306 может переконфигурироваться, чтобы представлять виртуальный вариант MAC 306 каждой из машин VM 114-1-114-n, показанный здесь как виртуальные MAC 307-1-307-n, каждый из которых может быть определен соответствующими параметрами устройства 204 для конкретной VM (фиг.2).

VM 114-1-114-n могут содержать соответствующие собственные драйверы 320-1-320-n беспроводных NIC.

Хост-драйвер 312 беспроводного NIC может обеспечивать интерфейс между MAC 306 и VMM 112, показанный здесь как радиосредства 314. Хост-драйвер 312 беспроводного NIC может быть выполнен с возможностью предоставления виртуального варианта радиосредств 314 для каждой из VM 114-1-114-n, показанных здесь как виртуальные радиосредства 316-1-316-n, которые могут быть определены соответствующей конфигурацией для конкретной VM и параметрами контекста.

Хост-драйвер 312 беспроводной NIC может содержать управляющий модуль 320, который может действовать на процессоре 108 вне VMM 112. Управляющий модуль 320 может быть выполнен с возможностью объединения управления конфигурацией устройства со стороны VM 114-1-114-n, чтобы предоставить единый интерфейс управления беспроводному NIC 304.

Монитор VMM 112 может содержать модель устройства, соответствующую беспроводному NIC 304, и может быть выполнен с возможностью представления виртуальных экземпляров модели устройства драйверам 320-1-320-n беспроводного NIC, показанным здесь как модели 318-1-318-n устройства. Модель устройства может содержать эмулированные функции взаимных соединений периферийных компонент (PCI).

Драйверы 320 устройства беспроводного NIC, модели 318 устройства и хост-драйвер 312 беспроводного NIC могут быть выполнены с возможностью разрешения машинам VM 114 получать доступ ко всем или к подмножеству конфигурируемых функций физического устройства 104.

На фиг.4 представлена блок-схема компьютерной системы 102 и физическое устройство 104, представленное на фиг.3, где система 118 VA выполнена с возможностью связи идентификаторов конкретных VM с сообщениями и управлением, передаваемыми среди VMM 112, хост-драйвера 312 беспроводного NIC и беспроводного NIC 304. Здесь они упоминаются как снабженные тегами сообщения с идентификаторами конкретных VM.

На фиг.4 беспроводной NIC 304 содержит идентификатор виртуального радиосредства или модуль 402 тегов ID VR и хост-драйвер 312 беспроводного NIC содержит модуль 404 тегов ID VR. Каждый из модулей 402 и 404 тегов ID VR выполнены с возможностью отметки сообщений и управления 305, посланных между беспроводным NIC 304 и хост-драйвером 312 беспроводного NIC, соответствующими тегами ID VR конкретных VM.

MAC 306 дополнительно выполнен с возможностью обработки сообщений, принятых от хост-драйвера 312 беспроводного NIC выбранным одним из виртуальных MAC 307-1-307-n, основываясь на присоединенных тегах VR ID.

Аналогично, хост-драйвер 312 беспроводного NIC дополнительно выполнен с возможностью обработки сообщений, принятых от беспроводного NIC 304 с выбранным одним из виртуальных радиосредств 316-1-316-n, основываясь на присоединенных тегах VRID.

Хост-драйвер 312 беспроводного NIC дополнительно содержит модуль 406 тегов VM ID и VMM 112 содержит модуль 408 тегов VM ID. Каждый из модулей 406 и 408 тегов VM ID выполнен с возможностью отметки сообщений и управления, посланных между хост-драйвером 312 беспроводного NIC и VMM 112, соответствующими тегами VMID.

Хост-драйвер 312 беспроводного NIC дополнительно выполнен с возможностью передачи сообщений, принятых от VMM 112, через выбранное одно из виртуальных радиосредств 316-1-316-n, основываясь на присоединенных тегах VM ID.

Аналогично, VMM 112 выполнен с возможностью передачи сообщений, принятых от хост-драйвера 312 беспроводного NIC, одной из выбранных машин VM 114-1-114-n, основываясь на присоединенных тегах VM ID.

На фиг.5 представлена блок-схема последовательности выполнения операций способа 500 взаимодействия между физическим устройством и множеством VM.

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

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

В этапе 506 физическое устройство переконфигурируется для каждой из VM с соответствующими параметрами конфигурации конкретной VM и информацией о соединении, как описано здесь в одном или более примерах.

Прием управления конфигурацией на этапе 502, поддержание параметров конфигурации для конкретной VM и информации о соединении для конкретной VM на этапе 504 и переконфигурирование физического устройства на этапе 506 могут выполняться, по существу, за пределами монитора VMM, который управляет машинами VM, как это описано здесь в одном или более примерах.

Поддержание параметров конфигурации конкретной VM и информации о соединении конкретной VM на этапе 504 и переконфигурирование физического устройства на этапе 506 могут выполняться, по существу, в пределах физического устройства.

Физическое устройство может содержать беспроводной NIC, и переконфигурирование на этапе 506 может содержать переконфигурирование беспроводного NIC для каждой из множества VM для одного или более параметров, описанных выше.

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

Способы и системы для дифференциации среди виртуальных машин VM в отношении управления конфигурацией, передаваемого к машинам VM и от машин VM, и в отношении графика данных описываются ниже со ссылкой на фиг.6-9. Способы и системы описываются со ссылкой на беспроводной NIC. Способы и системы, однако, не ограничиваются беспроводным NIC.

На фиг.6 представлена блок-схема беспроводного NIC 604, который может переконфигурироваться для многочисленных VM и выполнен с возможностью дифференциации среди машин VM в отношении управления конфигурацией и трафика данных. Беспроводной NIC 604 может соответствовать физическому устройству 104, показанному на фиг.1, и описывается ниже со ссылкой на фиг.1. Беспроводной NIC 604, однако, не ограничивается примером, показанным на фиг.1.

Хост-драйвер 601 устройства может быть выполнен с возможностью отправки передаваемых пакетов 606 и управления 608 конфигурацией от машин VM 114-1-114-n (фиг.1) беспроводному NIC 604. Беспроводной NIC 604 может быть выполнен с возможностью посылки принятых пакетов 610 и установления обратной связи 612 хост-драйверу 601 устройства для подачи к соответствующим машинам VM 114-1-114-n.

Передаваемые пакеты 606, управление конфигурацией, принятые пакеты 610 и обратная связь 612 по состоянию могут снабжаться тегами с соответствующими идентификаторами VM (VM ID), чтобы разрешить беспроводному NIC 604 и хост-драйверу 601 устройства транспортировать и/или обрабатывать пакеты, управление и обратную связь на основе конкретной VM. Идентификатор VM может связываться напрямую с машинами VM и/или с виртуальными радиосредствами, как описано выше со ссылкой на фиг.4.

Тегирование VM ID может быть реализовано с помощью одного или более из множества способов и их комбинаций.

Например, хост-среда 110 может содержать прикладной программный хост-интерфейс (API) для взаимодействия между беспроводным NIC 604 и VM 114-1-114-n. Хост-API может быть реализован в пределах драйвера 601 устройства. Хост-API может быть выполнен с возможностью распознавания поля идентификатора VM (VM ID) в заголовках хост-API. Поле заголовка VM ID может быть выполнено с возможностью заполнения посредством зарезервированных бит существующего или стандартного заголовка API. Количество бит, используемое для поля заголовка идентификатора VM, может определяться количеством машин VM, которые должны поддерживаться.

В отношении обратной связи 612 по состоянию, беспроводной NIC 604 может содержать инициируемый устройством модуль 614 вызова API для вызова хост-API с обратной связью 612 по состоянию. Беспроводной NIC 604 может дополнительно содержать модуль 616 вставки идентификатора VM ID, чтобы вставлять идентификаторы VM в поле заголовка VM ID хост-API обратной связи 612 по состоянию. Это может позволить хост-драйверу 601 устройства направлять обратную связь 612 по состоянию к соответствующим VM.

В отношении средств 608 управления конфигурацией, модели устройств в пределах VMM, такие как модели 318 устройств, показанные на фиг.3 и 4, могут быть выполнены с возможностью вставки идентификаторов VM ID в вызовы управления API (управления 608 конфигурацией), выданные соответствующими VM. Беспроводной NIC 604 может содержать дифференциатор 618 VM, чтобы принимать управление 608 конфигурацией и идентифицировать связанные VM 114 из полей заголовка для идентификатора VM ID API.

Дифференцирование VM, выполняемое для принятых пакетов 610 и передаваемых пакетов 606, дополнительно описывается ниже.

Беспроводной NIC 604 может быть выполнен с возможностью транспортирования и/или обработки управления 608 конфигурацией на основе каждой из VM, основываясь на связанных VM ID. Беспроводной NIC 604 может содержать, например, модуль 620 инициализации устройства VM, чтобы инициализировать MAC и/или PHY на основе VM, как дополнительно описано ниже. Беспроводной NIC 604 может также содержать таблицу 622 соединений VM для каждой VM, чтобы поддерживать параметры каждой VM, как дополнительно описано ниже.

Дифференцирование VM теперь описывается со ссылкой на принятые пакеты 610.

Беспроводной NIC 604 может принимать пакеты 610 от одной или более точек доступа или приемопередатчиков, которые могут быть связаны с одним или более идентификаторами набора служб (SSID). Каждый принятый пакет 610 может содержать адрес MAC места назначения, являющийся конкретным для одной из VM 114.

Беспроводной NIC 604 может содержать модуль 626 поиска VM ID на приемной стороне, чтобы осуществлять поиск VM ID в таблице 622 соединений для каждой VM, основываясь на адресах MAC принятых пакетов 610.

Беспроводной NIC 604 может дополнительно содержать модуль 628 вставки VM, чтобы вставлять идентификаторы ID в поля заголовков VM ID API принятых пакетов 610, как это описано выше со ссылкой на модуль 616 вставки VM ID.

Идентификаторы (ID) VM принятых пакетов 610 могут разрешать хост-драйверу 601 устройства передавать принятые пакеты 610 соответствующим VM 114, по существу, без обработки принятых пакетов 610.

Беспроводной NIC 604 может содержать модуль 630 безопасности, дополнительно описанный ниже.

Дифференцирование VM здесь описывается со ссылкой на передаваемые пакеты 606.

Хост-среда 110 (фиг.1) может быть выполнена с возможностью вставки идентификаторов VM ID в передаваемые пакеты 606, как описано выше в отношении управления 608 конфигурацией. В такой ситуации параметры конфигурации и информация о соединении для передаваемых пакетов 606 могут быть восстановлены из таблицы 622 соединений для каждой VM, основываясь на VM ID.

Альтернативно, передаваемые пакеты 606 могут быть приняты от хост-драйвера 601 устройства без VM ID. Например, хост-драйвер 501 устройства и/или хост-API могут не выполняться с возможностью вставки VM ID в заголовки API. Чтобы разрешить такую ситуацию, беспроводной NIC 604 может содержать модуль 632 просмотра VM ID на стороне передачи, чтобы осуществлять поиск VM ID в таблице 622 соединений для каждой VM, основываясь на адресах конкретных VM, содержащихся в передаваемых пакетах 606, как, например, описано выше в отношении модуля 626 поиска VM ID на стороне приема.

Беспроводной NIC 604 может содержать модуль 634 конфигурации для каждой VM, чтобы восстанавливать параметры конфигурации конкретной VM и информацию о соединении из таблицы 622 соединений для каждой VM, основываясь на VM ID, идентифицированных модулем 632 поиска VM IDI, и конфигурировать или переконфигурировать функции беспроводного NIC для передаваемых пакетов 606, основываясь на соответствующих VM ID.

Далее описывается инициализация устройства.

Управление 608 конфигурацией может содержать управление инициализацией устройств множеством VM. Управление инициализацией устройств может направляться к PHY и/или MAC. Беспроводной NIC 604 может содержать модуль 620 инициализации устройства VM, чтобы обрабатывать управление инициализацией устройства и избежать потенциально конфликтующих средств управления инициализацией устройств.

Чтобы выполнить инициализацию PHY, модуль 620 инициализации может быть выполнен с возможностью определения текущего состояния PHY и рабочего канала. Модуль 620 инициализации может быть дополнительно выполнен с возможностью инициализации PHY, только когда PHY в настоящий момент не инициализирован. Когда команда инициализации PHY определяет канал или режим, отличный от текущего рабочего канала или режима, модуль 620 инициализации, прежде чем продолжать, может оценить один или более факторов. К факторам может относиться, поддерживается ли новый канал или режим устройством, и любые ограничения, которые могут быть связаны с новым каналом или режимом.

Чтобы выполнить инициализацию MAC, модуль 620 инициализации может быть выполнен с возможностью инициирования экземпляра MAC для конкретной VM, когда VM сначала вызывает или инициирует соответствующий драйвер NIC. Процесс может содержать конфигурирование фильтров MAC для виртуального MAC с помощью адреса MAC для VM, чтобы принимать пакеты 610 для VM.

Далее описывается поддержание параметров для конкретной VM.

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

Таблица 622 соединений VM может быть выполнена с возможностью хранения информации о соединении для конкретной VM, когда доступ к беспроводному NIC 604 передается от одной VM к другой VM, и повторного применения информации о соединении и соответствующих параметров конфигурации, когда VM позднее получает доступ к беспроводному NIC 604.

Таблица 622 соединений VM и/или беспроводной NIC 604 могут содержать структуры данных с независимым вводом для каждого соединения, чтобы поддержать или сохранить информацию о каждой VM или о соединении связанными с соответствующими идентификаторами (ID) VM. Беспроводной NIC 604 может быть выполнен с возможностью поддержания (например, добавления, изменения или удаления) структуры данных со специфическими особенностями, связанными с каждой из VM. Структуры данных могут содержать сдвоенные кодовые структуры данных.

Теперь будут описаны свойства безопасности.

Таблица 622 для каждого соединения VM может быть выполнена с возможностью хранения информация о безопасности конкретной VM для каждой VM или соединения VM. Информация о безопасности может содержать способы шифрования/дешифрования для каждой VM, которые могут содержать, например, один или более протоколов целостности временного ключа (TKIP) и режим компьютера с протоколом кода аутентификации сообщений с цепочкой зашифрованных блоков (ССМР). Информация о безопасности может содержать ключи защиты и/или индексы к ключам защиты, с помощью которых можно декодировать принятые пакеты 610 и/или кодировать передаваемые пакеты 606.

На приемной стороне модуль 630 безопасности может быть выполнен с возможностью восстановления способов дешифрования безопасности для конкретной VM и ключей защиты из таблицы 622 соединений для каждой VM, основываясь на идентификаторах VM принятых пакетов 610 и декодировании принятых пакетов 610 с помощью соответствующих способов дешифрования и ключей. Альтернативно, декодирование может быть выполнено компьютерной системой 102, и модуль 630 безопасности может быть выполнен с возможностью восстановления и передачи индексов ключей защиты для конкретной VM с помощью соответствующих принятых пакетов 610.

На передающей стороне модуль 634 конфигурации для каждого VM может быть выполнен с возможностью восстановления способов безопасности посредством шифрования для конкретных VM и ключей защиты из таблицы 622 соединений, основываясь на идентификаторах VM ID передаваемых пакетов 606, и кодирования передаваемых пакетов 606 с помощью соответствующих способов шифрования и ключей.

На фиг.7 представлена блок-схема последовательности выполнения операций способа 700 управления беспроводным NIC для работы с многочисленными VM, в том числе, дифференциации среди VM в отношении управления конфигурацией и графика данных к машинам VM и от них.

На этапе 702 управление конфигурацией, направленное к беспроводному NIC, принимаются от множества виртуальных машин (VM), управляемых компьютерной системой, и для каждого управления конфигурацией одна из машин VM идентифицируется как источник управления конфигурацией.

На этапе 704 параметры конфигурации для конкретной VM и информация о соединении устройства поддерживаются с помощью NIC для каждой из машин VM.

На этапе 706 передаваемые пакеты принимаются от машин VM и для каждого из передаваемых пакетов одна из VM идентифицируется как источник передаваемых пакетов и беспроводной NIC конфигурируется с соответствующими параметрами конфигурации для конкретной VM и с соответствующей информацией о соединении устройства, конкретной для VM.

На этапе 708 пакеты принимаются от одной или более точек беспроводного доступа и для каждого принятого пакета одна из VM идентифицируется в качестве VM-получателя и принятый пакет передается компьютерной системе с соответствующим идентификатором VM.

На фиг.8 представлена блок-схема последовательности выполнения операций способа 800 для дифференциации машин VM в отношении управления конфигурацией и принятых пакетов. Способ 800 или его участки могут быть реализованы в комбинации со способом 700.

На этапе 802 обратная связь по состоянию и принятые пакеты посылаются компьютерной системе в качестве вызовов API и для каждого из вызовов API идентификатор VM вставляется в поле заголовка вызова API.

На этапе 804 управление конфигурацией принимается от компьютерной системы в качестве вызовов API и для каждого управления конфигурацией одна из машин VM идентифицируется в качестве источника управления конфигурацией из идентификатора VM в поле заголовка соответствующего вызова API.

На фиг.9 представлена блок-схема последовательности выполнения операций способа 900 соединения идентификаторов конкретных VM с пакетами, принятыми от одной или более точек доступа, и с передаваемыми пакетами, принятыми от компьютерной системы. Способ 900 или его участки могут быть реализованы в комбинации со способом 700 и/или способом 800.

На этапе 902 виртуальный MAC для конкретной VM инициируется для каждой из множества VM. Каждый виртуальный MAC конфигурируется с соответствующим адресом MAC для конкретной VM.

На этапе 904 поддерживается ссылка между каждым из адресов MAC конкретной VM и соответствующим идентификатором VM.

На этапе 906 осуществляется поиск идентификатора VM для каждого принятого пакета, основываясь на адресе MAC получателя принятого пакета.

На этапе 908 идентификатор VM ищется для каждого передаваемого пакета, основываясь на адресе MAC конкретной VM для передаваемого пакета.

На приемной стороне идентификатор VM может использоваться для поиска информации о безопасности, с помощью которой может быть декодирован принятый пакет. Принятый пакет может быть дешифрован беспроводным NIC или может быть послан компьютерной системе с индексом ключа защиты, как описано здесь в одном или более примерах.

Один или более признаков, раскрытых здесь, могут быть реализованы аппаратурным обеспечением, программным обеспечением, встроенным микропрограммным обеспечением и их комбинациями, в том числе дискретными и интегральными логическими схемами, логикой на специализированных интегральных схемах (ASIC) и микроконтроллерами, и могут быть реализованы как часть проблемно-ориентированной интегральной схемы в модульном исполнении и/или комбинация интегральных схем в модульном исполнении. Термины "программное обеспечение", "код" и "команды", как они используются здесь, относятся к компьютерному программному продукту, в том числе к считываемому компьютером носителю, имеющему хранящуюся на нем логическую компьютерную программу, вызывающую выполнение компьютерной системой в ответ на них, одну или более функций.

На фиг.10 представлена блок-схема компьютерной платформы 100, показанной на фиг.1, содержащей пример признаков компьютерной системы 102.

В примере, показанном на фиг.10, компьютерная система 102 содержит процессор 108 для исполнения логики компьютерного программного продукта (здесь далее "логика"). Процессор 108 может представлять собой множество процессоров.

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

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

Пример логики описывается ниже.

Память 1004 может содержать данные 1008, которые должны использоваться процессором 108 при исполнении логики 1006 и/или генерироваться процессором 108 в ответ на исполнение логики 1006.

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

Логика 1006 может содержать логику 1012 операционной системы для вызова выполнения процессором 108 обеспечения операционной среды для прикладной логики 1010.

Логика 1006 может содержать логику 1014 VMM для вызова выполнения процессором 108 логики 1012 операционной системы в пределах виртуальной машины.

Логика 1006 может содержать логику 1016 драйвера хост-устройства с увеличенной виртуализацией, для вызова выполнения процессором 108 взаимодействия между физическим устройством 104 и монитором виртуальной машины, как описано здесь в одном или более примерах.

Логика 1016 драйвера хост-устройства может содержать логику, вызывающую конфигурирование процессором 108 множества виртуальных радиосредств конкретных VM, и данные 1008 могут содержать соответствующие конфигурацию и контекстные параметры 1018 виртуальных радиосредств для конкретных VM.

Компьютерная система 102 может содержать инфраструктуру 1040 связи, чтобы осуществлять взаимодействие среди устройств внутри компьютерной системы 102 и осуществлять связь с физическим устройством 104.

На фиг.11 представлена блок-схема компьютерной платформы 100, показанной на фиг.1, в том числе примеры свойств физического устройства 104.

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

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

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

Логика 1106 может обеспечиваться во встроенном микропрограммном обеспечении и может копироваться в память во времени выполнения. Ниже раскрывается пример логики.

Память 1104 может содержать данные 1108, который должны использоваться контроллером 1102 при исполнении логики 1106 и/или генерироваться контроллером 1102 в ответ на исполнение логики 1106.

Логика 1106 может содержать логику 1110 физического устройства, чтобы заставить контроллер 1102 поддерживать параметры 204 для конкретной VM каждой из множества VM компьютерной системы 102 и переконфигурировать физическое устройство 104 с параметрами 204 для конкретной VM, как описано здесь в одном или более примерах. Логика 1110 физического устройства может содержать логику 1112 беспроводного NIC с увеличенной виртуализацией, для вызова выполнения контроллером беспроводной NIC с увеличенной виртуализацией, как описано выше в одном или более примерах.

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

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

1. Система конфигурирования физического устройства, содержащая:
систему интерфейса, содержащую по меньшей мере один процессор для приема сигналов управления конфигурацией физического устройства от каждой из множества виртуальных машин (VM) компьютерной системы посредством, соответствующих каждой из VM, драйверов устройств, представляющих управляемые функции физического устройства в пределах VM; и
систему управления для поддержания зависящей от VM информации о соединении и зависящих от VM параметров конфигурации для каждой из VM и для переконфигурации физического устройства для каждой из VM посредством соответствующих, зависящих от VM параметров конфигурации и информации о соединении;
при этом система интерфейса и система управления реализованы за пределами VM, при этом по меньшей мере участок системы интерфейса и по меньшей мере участок системы управления выполняются за пределами монитора машин виртуализации (VMM), размещающего VM, между VMM и физическим устройством так, что маршрут связи от указанной системы интерфейса на указанное физическое устройство исключает взаимодействие с VMM.

2. Система по п. 1, в которой:
по меньшей мере участок системы интерфейса реализован в пределах драйвера хост-устройства для выполнения в компьютерной системе за пределами VMM, а драйвер хост-устройства выполнен с возможностью объединения сигналов управления устройствами от множества VM для обеспечения единого интерфейса управления физическим устройством; при этом
по меньшей мере участок системы управления реализован в пределах физического устройства.

3. Система по п. 1, в которой по меньшей мере участок системы интерфейса и по меньшей мере участок системы управления реализованы в пределах одного или более из:
физического устройства;
драйвера хост-устройства для выполнения в компьютерной системе за пределами VMM; и
области управления, выполняемой над VMM.

4. Система по п. 1, в которой физическое устройство содержит беспроводной контроллер сетевого интерфейса (NIC).

5. Система по п. 4, в которой беспроводной NIC содержит контроллер доступа к среде (MAC), а система управления выполнена с возможностью переконфигурирования MAC для каждой из VM в соответствии с зависимыми от VM параметрами конфигурации и информацией о соединении.

6. Система по п. 5, в которой по меньшей мере участок системы интерфейса реализован в пределах драйвера хост-устройства, подлежащего выполнению в компьютерной системе за пределами VMM, при этом драйвер хост-устройства содержит:
радиосредство для взаимодействия между беспроводным NIC и VMM, причем радиосредство выполнено с возможностью переконфигурирования для каждой из VM в соответствии с зависящей от VM конфигурацией и контекстными параметрами, а драйвер хост-устройства выполнен с возможностью объединения сигналов управления конфигурацией от виртуальных машин для обеспечения единого интерфейса управления с беспроводным NIC.

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

8. Система по п. 4, в которой система управления выполнена с возможностью переконфигурования беспроводного NIC для каждой из VM в связи с одним или более из:
инициализации устройства;
сканирования сети;
выбора точки доступа к сети;
выбора канала;
установки соединения;
управления передачей управления;
сетевой синхронизации;
выбора скорости передачи данных;
безопасности; и
управления электропитанием.

9. Способ конфигурирования физического устройства, содержащий этапы, на которых:
принимают сигналы управления конфигурацией, направленные физическому устройству от каждой из множества виртуальных машин (VM) компьютерной системы посредством, соответствующих каждой из VM, драйверов устройств, представляющих управляемые функции физического устройства в пределах виртуальных машин;
поддерживают зависящие от VM параметры конфигурации и зависящую от VM информацию о соединении для каждой из VM;
переконфигурируют физическое устройство для каждой из VM в соответствии с зависящими от VM параметрами конфигурации и информацией о соединении;
при этом этапы приема, поддержания и переконфигурации выполняют за пределами VM, при этом по меньшей мере участок этапов приема, поддержания и переконфигурирования выполняются за пределами монитора машин виртуализации (VMM), размещающего VM, между VMM и физическим устройством так, что маршрут связи от устройства выполненного с возможностью осуществления приема на указанное физическое устройство исключает взаимодействие с VMM.

10. Способ по п. 9, дополнительно содержащий этапы, на которых:
выполняют по меньшей мере участок этапа приема в пределах драйвера хост-устройства для выполнения в компьютерной системе за пределами VMM, в том числе объединяют сигналы управления конфигурацией от множества VM для обеспечения единого интерфейса управления физическим устройством; и
выполняют по меньшей мере участок указанных этапов поддержания и переконфигурирования в пределах физического устройства.

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

12. Способ по п. 9, в котором физическое устройство содержит беспроводной контроллер (NIC) сетевого интерфейса.

13. Способ по п. 12, в котором беспроводной NIC содержит контроллер доступа к среде (МАС), при этом этап переконфигурации содержит этап, на котором:
переконфигурируют MAC для каждой из VM в соответствии с зависящими от VM параметрами конфигурации и информацией о соединении.

14. Способ по п. 13, дополнительно содержащий этапы, на которых:
выполняют взаимодействие между беспроводным NIC и VMM посредством радиоинтерфейса драйвера хост-устройства; и
переконфигурируют радиосредство для каждой из VM в соответствии с зависящей от VM конфигурацией и параметрами контекста.

15. Способ по п. 14, дополнительно содержащий этапы, на которых:
передают пакеты и сигналы управления от MAC драйверу хост-устройства с зависящими от VM идентификаторами радиосредства; и
преобразуют зависящие от VM идентификаторы радиосредств в зависящие от VM идентификаторы VM для передачи пакетов и сигналов управления между VMM и MAC.

16. Способ по п. 12, в котором этап переконфигурирования содержит переконфигурирование беспроводного NIC для каждой из множества VM в связи с одним или более из:
инициализации устройства;
сканирования сети;
выбора точки доступа к сети;
выбора канала;
установки соединения;
управления передачей управления;
сетевой синхронизации;
выбора скорости передачи данных;
безопасности; и
управления электропитанием.

17. Один или более считываемых компьютером носителей, хранящих логику компьютерной программы, при этом логика компьютерной программы содержит:
логику интерфейса, вызывающую выполнение одним процессором компьютерной системы и/или контроллером физических устройств приема сигналов управления конфигурацией физического устройства от каждой из множества виртуальных машин (VM) компьютерной системы посредством, соответствующих каждой из VM, драйверов устройств, представляющих управляемые функции физического устройства в пределах виртуальных машин; и
логику управления, вызывающую выполнение процессором и/или контроллером поддержки зависящей от VM информации о соединении и зависящих от VM параметров конфигурации для каждой VM и переконфигурации физического устройства для каждой из VM в соответствии с параметрами конфигурации конкретной VM и информацией о соединении;
при этом логика интерфейса и логика управления выполнены с возможностью выполнения за пределами VM, причем по меньшей мере участок логики интерфейса и по меньшей мере участок логики управления выполняются за пределами монитора машин виртуализации (VMM), размещающего VM, между VMM и физическим устройством так, что маршрут связи от процессора или контроллера на указанное физическое устройство исключает взаимодействие с VMM.

18. Один или более считываемых компьютером носителей по п. 17, в котором:
по меньшей мере участок логики интерфейса реализован в пределах драйвера хост-устройства для выполнения в процессоре компьютерной системы за пределами VMM, а драйвер хост-устройства содержит логику, вызывающую выполнение процессором объединения сигналов управления устройством от множества VM для обеспечения единого интерфейса управления физическим устройством; а
по меньшей мере участок логики управления реализован в пределах физического устройства для выполнения в контроллере физического устройства.

19. Один или более считываемых компьютером носителей по п. 18, в котором физическое устройство содержит беспроводной контроллер (NIC) сетевого интерфейса.

20. Один или более считываемых компьютером носителей по п. 19, в котором беспроводной NIC содержит контроллер доступа к среде (MAC), при этом логика управления содержит логику, вызывающую выполнение контроллером переконфигурирования MAC для каждой из VM в соответствии с зависящими от VM параметрами конфигурации и информацией о соединении.

21. Один или более считываемых компьютером носителей по п. 20, в котором драйвер хост-устройства содержит:
логику радиосредства, вызывающую выполнение процессором взаимодействия между беспроводным NIC и VMM и переконфигурирования радиосредства для каждой из VM в соответствии с зависящей от VM конфигурацией и контекстными параметрами, и
логику управления, вызывающую выполнение процессором объединения сигналов управления конфигурацией от виртуальных машин для обеспечения единого интерфейса управления беспроводным NIC за пределами VMM.

22. Один или более считываемых компьютером носителей по п. 17, в котором по меньшей мере участок логики интерфейса и по меньшей мере участок логики управления реализованы по существу в пределах одного или более из:
физического устройства для выполнения в контроллере физического устройства;
драйвер хост-устройства для выполнения в процессоре за пределами VMM; и
логика для выполнения в процессоре в области управления над VMM.

23. Один или более считываемых компьютером носителей по п. 19, в котором логика управления содержит логику, вызывающую выполнение контроллером переконфигурования беспроводного NIC для каждой из VM в связи с одним или более из :
инициализации устройства;
сканирования сети;
выбора точки доступа к сети;
выбора канала;
установки соединения;
управления передачей управления;
сетевой синхронизации;
выбора скорости передачи данных;
безопасности; и
управления электропитанием.



 

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

Изобретение относится к способам автоматизации процесса установки приложения с помощью применения правила установки для инсталлятора приложения. Технический результат заключается в обеспечении возможности автоматической установки приложения с помощью применения правила установки для инсталлятора приложения.

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

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

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

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

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

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

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

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

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

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

Изобретение относится к системе наполнения системы транспортного средства объемами данных. Система программного наполнения содержит программу пользовательской настройки, определяющую набор программного обеспечения (ПО), специфицированный для конкретного транспортного средства, ПО для установки на информационно-развлекательный компьютер, информационно-развлекательный компьютер. Программа настройки связывает унифицированный идентификатор ресурса (URI) с каждым ПО. Информационно-развлекательный компьютер выполнен с возможностью: получать из памяти программу пользовательской настройки, получать из программы пользовательской настройки URI для получения ПО, передавать URI в память, получать ПО из памяти на основании URI и осуществлять пользовательскую установку ПО на информационно-развлекательный компьютер после получения части ПО. Достигается быстрое создание различных изменений компьютерной системы без физического производства различных комбинаций модулей и ПО. 9 з.п. ф-лы, 6 ил.

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

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

Предложенные способы, машиночитаемые носители и системы относятся к созданию упаковки по требованию заказчика. Например, упаковка может автоматически создаваться по требованию с размерами и конфигурацией для использования с заказным набором предметов. В одном аспекте принимается запрос на множественные предметы, и механизм адаптации упаковки к требованиям заказчика обращается к хранилищу информации, которое включает в себя информацию о каждом из запрашиваемых предметов. Информация может включать в себя размерную информацию о трехмерных размерах предметов. Механизм адаптации упаковки к требованиям заказчика может использовать информацию о размерах для имитации модельной компоновки всех запрашиваемых предметов и затем вычислять размеры коробки или другой упаковки, которые могут обеспечивать точное соответствие для предметов, физически компонуемых согласно модельной компоновке. 3 н. и 9 з.п. ф-лы, 13 ил.

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

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

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

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

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