Автоматизированное управление драйверами устройств

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

 

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

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

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

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

Раскрытие изобретения

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

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

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

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

На фиг. 2 приведена блок-схема последовательности действий, на которой показано добавление драйвера устройства к каталогу драйверов согласно некоторым вариантам осуществления.

На фиг. 3 приведена блок-схема, на которой изображены метаданные, связанные с пакетом драйвера устройства из каталога драйверов, согласно некоторым вариантам осуществления.

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

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

Осуществление изобретения

Представлены различные способы импортирования, управления и размещения драйверов, таких как драйверы устройств. В некоторых вариантах осуществления системный администратор импортирует драйверы устройств в каталог устройств, который содержит драйверы устройств, которые следует иметь в виду при размещении образа на целевой компьютерной системе (называемой в настоящем документе также "машиной"). Сервер, такой как управляющий сервер, может предоставить пользовательский интерфейс (ПИ), обращение к которому может осуществляться, например, с консоли системного оператора и который можно использовать для импортирования и манипулирования пакетами драйверов устройств, представленных производителями, такими как пакеты драйверов устройств WINDOWS, в каталог драйверов. Например, при приобретении машин, требующих нового драйвера устройства, или при выпуске новой версии драйвера устройства администратор может воспользоваться ПИ для импортирования драйверов устройств в каталог драйверов, и импортированные драйверы устройств будут учитываться при выполнении в будущем задач по размещению образа, таких как задачи по размещению операционной системы (ОС), которая использует каталог драйверов. В некоторых вариантах осуществления каталог драйверов может предоставить интерфейс, такой как интерфейс прикладных программ (ИПП), который позволяет импорт драйверов устройств в каталог драйверов при помощи сторонних инструментальных средств (например, сторонних поставщиков драйверов устройств).

В некоторых вариантах осуществления управляющий сервер может предоставить инструментальное средство, такое как мастер импортирования драйверов WINDOWS, которое дает указания пользователю, такому как администратор, во время процесса добавления драйвера к каталогу драйверов. Например, инструментальное средство может предложить администратору указать, где находится пакет драйвера производителя, например диск с пакетом драйвера, папка, компакт-диск (CD) и т. д. Инструментальное средство анализирует команды установки, представленные вместе с пакетом драйвера производителя, для определения метаданных, связанных с пакетом драйвера. В случае пакетов драйверов устройств WINDOWS инструментальное средство может анализировать соответствующий информационный (.inf) файл для определения метаданных, связанных с данным пакетом драйвера устройства WINDOWS. Инструментальное средство может позволить администратору обеспечить дополнительные метаданные, которые должны быть связаны с пакетом драйвера. Инструментальное средство сохраняет метаданные, связанные с пакетом драйвера, в каталоге драйверов. Инструментальное средство формирует файлы драйверов, связанные с пакетом драйвера производителя, в пакет драйвера каталога драйверов и помещает пакет драйвера каталога драйверов на одном или нескольких серверах содержимого.

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

В некоторых вариантах осуществления целевая машина, выполняющая минимальную ОС, пользуется для добавления драйверов устройств на целевой машине услугами управляющего сервера. Например, минимальная ОС может выполняться во время выполнения задачи размещения ОС на целевой машине, и выполнение минимальной ОС вызывает создание на целевой машине предустановочной среды или состояния. Предустановочная среда существует, когда к целевой машине был применен образ (например, образ минимальной ОС), но до того как целевая машина была перезагружена с загрузкой полнофункциональной ОС. В некоторых вариантах осуществления при нахождении машины в предустановочной среде программное средство (далее - "средство") на целевой машине просматривает аппаратные устройства, имеющиеся на машине, и создает список аппаратных идентификаторов для просмотренных аппаратных устройств. Затем средство получает список идентификаторов пакетов драйверов, совместимых с аппаратными идентификаторами в списке аппаратных идентификаторов. Например, средство может сформировать и направить управляющему серверу запрос на пакеты драйверов, совместимые с аппаратными идентификаторами в списке аппаратных идентификаторов, и принять от управляющего сервера список идентификаторов совместимых пакетов драйверов. В некоторых вариантах осуществления средство может сконфигурировать автономную ОС на целевой машине таким образом, чтобы учитывать использование драйверов в пакетах драйверов. Например, автономная ОС может быть сконфигурирована таким образом, чтобы учитывать эти драйверы во время выполнения операции "подключи и работай". В некоторых вариантах осуществления функциональные возможности каталога драйверов (услуги управляющего сервера по добавлению драйверов устройств в целевой машине) можно использовать для обеспечения доступности драйверов при новой установке ОС (например, посредством конфигурирования сценарной установки операционной системы таким образом, чтобы использовать данный набор драйверов устройств).

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

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

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

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

На фиг. 1 приведена блок-схема высокого уровня, изображающая примерную среду, в которой может функционировать система управления драйверами, которая реализует способы импортирования, управления и размещения драйверов. Эта операционная среда является лишь одним примером подходящей операционной среды и не предполагает наложения каких-либо ограничений на объем использования или функциональные возможности системы управления драйверами. Как показано на чертеже, среда содержит целевую машину 102, управляющий сервер 104 и множество серверов содержимого 106a-n, каждый из которых соединен с сетью 108. Управляющий сервер также соединен с каталогом 110 драйверов. На фиг. 1 для простоты приведена только одна целевая машина, и специалисту в данной области техники должно быть ясно, что может быть более одной целевой машины. В настоящем документе термины "соединенный", "связанный" или любые их варианты означают некое соединение или связь, прямую или косвенную, между двумя или несколькими элементами; связь или соединение между элементами может быть физической, логической или их сочетанием.

Когда приобретается новый драйвер устройства, например когда компания покупает машину или периферийное устройство, которое требует нового драйвера устройства, администратор вызывает инструментальное средство, такое как мастер импортирования драйверов, предоставленное управляющим сервером, для добавления драйвера устройства к каталогу драйверов. В качестве части процесса администратор может предоставить дополнительные метаданные, которые должны быть связаны с добавленными драйверами устройства. Затем управляющий сервер создает пакет драйвера устройства из представленного драйвера устройства и метаданных, связанных с драйвером устройства, в том числе дополнительных метаданных, которые были предоставлены администратором, и добавляет пакет драйвера устройства к каталогу драйверов. Управляющий сервер распределяет вновь добавленный пакет драйвера устройства по одному или нескольким серверам содержимого. В контексте СУС серверы содержимого представляют собой серверы содержимого, которые могут эффективно служить в качестве географически распределенных общих файлов, из которых отдельные машины могут получать пакеты драйверов устройств. Пакеты драйверов устройств в каталоге драйверов затем учитываются при выполнении будущих задач по размещению ОС на целевой машине. Например, когда на целевой машине повторно создается образ (например, на целевой машине повторно создается образ (называемый также переустановкой)), средство, выполняемое на целевой машине, когда целевая машина находится в предустановочном состоянии, просматривает аппаратные устройства на целевой машине и получает список аппаратных идентификаторов и совместимых аппаратных идентификаторов для каждого аппаратного устройства. Затем средство формирует запрос каталога драйверов и направляет запрос управляющему серверу. После получения запроса от целевой машины управляющий сервер обращается к каталогу драйверов для определения совокупности идентификаторов пакетов совместимых аппаратных драйверов, которые доступны в каталоге драйверов. Затем управляющий сервер направляет целевой машине в качестве ответа совокупность идентификаторов пакетов совместимых аппаратных драйверов. В некоторых вариантах осуществления управляющий сервер может ранжировать совокупность идентификаторов пакетов совместимых аппаратных драйверов, которые направляются целевой машине. Например, идентификаторы пакетов совместимых драйверов могут быть ранжированы при помощи стандартного алгоритма MICROSOFT для поиска соответствия при выполнении операции "подключи и работай", который, как правило, известен специалистам в данной области техники. Средство принимает совокупность идентификаторов совместимых аппаратных драйверов и получает пакеты драйверов устройств, соответствующие идентификаторам аппаратных драйверов, от соответствующих серверов содержимого. Если полученный пакет драйвера устройства предназначен для запоминающего устройства большой емкости, средство устанавливает драйвер на целевую машину. В ином случае средство копирует полученный пакет драйвера устройства, например, в место для хранения драйверов устройств на целевой машине и конфигурирует автономную ОС на целевой машине таким образом, чтобы она учитывала драйвер устройства, соответствующий пакету драйвера устройства. Средство может записать предупреждение (например, предупреждающее сообщение) относительно любых идентификаторов аппаратных драйверов, для которых не был получен соответствующий пакет драйвера устройства.

В некоторых вариантах осуществления средство может также запросить локальное место хранения драйверов устройств на целевой машине и определить ранжированный порядок совместимых устройств на целевой машине. Затем средство может объединить ответ, полученный от управляющего сервера, и локальное место хранения драйверов устройств на целевой машине и выбрать наиболее соответствующий (то есть наиболее подходящий) драйвер устройства. Например, средство может пронумеровать все драйверы устройств в хранилище драйверов на локальной машине и вычислить оценку драйвера (например, число между 0x0000 и 0xFFFF) для каждого драйвера устройства. Затем средство может сравнить драйвер устройства с наивысшей оценкой в локальном хранилище драйверов с драйвером устройства с наивысшей оценкой в каталоге драйверов и выбрать наименьшую из двух. В случае равенства средство может выбрать драйвер устройств с наибольшим номером версии.

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

Вычислительное устройство, на котором реализована система управления драйверами, в том числе целевая машина, управляющий сервер и серверы содержимого, может включать в себя центральное процессорное устройство, память, устройства ввода (например, клавиатуру и указательные устройства), устройства вывода (например, устройства отображения) и запоминающие устройства (например, дисковые накопители). Памяти и устройство хранения данных представляют собой машиночитаемые носители, которые могут содержать команды, реализующие систему управления драйверами. Кроме того, структуры данных и структуры сообщений могут храниться или передаваться через среду передачи данных, такую как сигнал в линии связи. Могут использоваться различные линии связи, такие как Интернет, локальная сеть, глобальная сеть, двухточечное коммутируемое соединение, сеть сотовой связи и т. д.

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

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

На фиг. 2 приведена блок-схема последовательности действий, которая изображает добавление драйвера устройства к каталогу драйверов согласно некоторым вариантам осуществления. Например, организация может получить от производителя (например, от производителя аппаратного устройства и (или) разработчика драйвера устройства) пакет драйвера устройств для новой версии или выпуска драйвера устройства для аппаратного устройства. Чтобы новая версия драйвера устройства могла учитываться при будущих размещениях ОС на машинах организации, администратор организации может использовать управляющий сервер для добавления или импортирования пакета драйвера устройства в каталог драйверов. На этапе 202 управляющий сервер принимает пакет драйвера устройства производителя. На этапе 204 управляющий сервер анализирует команды по установке, которые предоставлены вместе с пакетом драйвера устройства, для определения метаданных, связанных с драйвером устройства. На этапе 206 управляющий сервер получает любые дополнительные метаданные, которые следует связать с драйвером устройства. Например, управляющий сервер может обеспечить ПИ, посредством которого администратор может предоставлять дополнительные метаданные и (или) редактировать метаданные, связанные с драйвером устройства. На этапе 208 управляющий сервер сохраняет метаданные (то есть метаданные, полученные посредством анализа из команд по установке (этап 204), и любые дополнительные метаданные, предоставленные администратором (этап 206), связанные с драйвером устройства в каталоге драйверов. На этапе 210 управляющий сервер формирует файлы с драйвером устройства в пакет драйвера устройства каталога драйверов. Файлы драйвера устройств представляют собой файлы, которые были приняты в качестве части пакета драйвера устройства производителя. Система управления может также хранить пакет драйвера устройства каталога драйверов в каталоге драйверов или на другом подходящем устройстве хранения данных. На этапе 212 управляющий сервер копирует пакет драйвера устройства каталога драйверов на сервер содержимого или на множество серверов содержимого для последующего размещения на целевых машинах.

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

На фиг. 3 приведена блок-схема, на которой изображены метаданные, связанные с пакетом драйвера устройства каталога драйверов, согласно некоторым вариантам осуществления. Метаданные 302 пакета драйвера устройства каталога драйверов формируются из сочетания метаданных 304 пакета драйвера устройства и дополнительных метаданных 306 драйвера устройства. Метаданные пакета драйвера устройства представляют собой метаданные, которые получены посредством анализа из команд по установке, предоставленных вместе с пакетом драйвера устройства, например, как описано выше в связи с этапом 204. Как показано на чертеже, метаданные могут включать в себя, например, производителя аппаратного устройства, к которому применяется драйвер устройства, поставщика драйвера устройства (например, разработчика драйвера устройства), класс драйвера устройства (например, драйвер устройства SCSI, драйвер видеоустройства и т. д.), описание драйвера устройства, операционные системы, поддерживаемые драйвером устройства, идентификаторы аппаратных устройств для аппаратных устройств, которые совместимы с драйвером устройства, и совместимые аппаратные идентификаторы совместимых аппаратных устройств, которые также совместимы с драйвером устройства. Дополнительные метаданные драйвера устройства представляют собой дополнительные метаданные, которые следует связать с пакетом драйвера устройств, например, так, как описано выше в связи с этапом 206. Как показано на чертеже, дополнительные метаданные могут включать в себя, например, список производителей машин и список моделей машин. Список производителей машин может включать в себя ноль, одного или несколько производителей машин, для которых применяется пакет драйвера устройства. Список моделей машин может включать в себя ноль, одну или несколько моделей машин, для которых применяется пакет драйвера устройства. Метаданные пакета драйвера устройства каталога драйверов могут затем использоваться для определения, подходит ли конкретный пакет драйвера устройства каталога драйверов для размещения (например, установки) на целевой машине. Например, администратор может указать, что драйвер устройства KLM для видеокарты ABC от компании XYZ подходит для размещения на машинах, произведенных ACME. В этом случае ACME включается в список производителей машин. В последующем, если машина ACME, сконфигурированная с видеокартой ABC, запрашивает список идентификаторов совместимых драйверов устройств, управляющий сервер включает драйвер устройства KLM в свой ответ. В то же время если машина, произведенная не ACME, но которая сконфигурирована с видеокартой ABC, запрашивает список идентификаторов совместимых драйверов устройств, управляющий сервер не включает драйвер устройства KLM в свой ответ, несмотря на то, что драйвер устройства KLM совместим с видеокартой ABC, поскольку запрашивающая машина произведена не ACME. Таким образом, дополнительные данные, при их наличии, могут служить способом "отвергать" метаданные, которые предоставлены пакетом драйвера устройства, принятым от производителя, когда определяется, следует ли размещать пакет драйвера устройства на целевой машине.

На фиг. 4 приведена блок-схема последовательности действий, которая изображает обработку компонента управляющего сервера, который принимает запрос на список идентификаторов пакетов драйверов согласно некоторым вариантам осуществления. Например, целевая машина может определить список аппаратных драйверов, для которых требуются совместимые драйверы устройств. Целевая машина может затем сформировать список идентификаторов аппаратных устройств для этих аппаратных устройств и направить управляющему серверу запрос на пакеты драйверов устройств, которые совместимы с аппаратными устройствами, выявленными в списке идентификаторов аппаратных устройств. На этапе 402 управляющий сервер принимает запрос на идентификаторы пакетов драйверов устройств, которые совместимы со списком идентификаторов аппаратных устройств для аппаратных устройств, имеющихся на целевой машине. В некоторых вариантах осуществления запрос может также включать в себя указание на тип целевой машины (например, на производителя целевой машины, модель целевой машины и т. д.), операционную систему, установленную на целевой машине, архитектуру процессора целевой машины и т. д. Затем для каждого идентификатора аппаратного устройства в списке идентификаторов аппаратных устройств (этап 404) управляющий сервер выполняет этапы с 406 по 410 до тех пор, пока не будут обработаны все идентификаторы аппаратных устройств в списке (этап 410). На этапе 406 управляющий сервер запрашивает каталог драйверов относительно пакетов драйверов устройств, которые поддерживают или совместимы с идентификатором аппаратного устройства. Например, управляющий сервер может определить, совместим ли некоторый драйвер устройств, по метаданным, связанным с пакетом драйвера устройства каталога драйверов для этого драйвера устройства. На этапе 408 управляющий сервер добавляет пакеты совместимых драйверов устройств к списку пакетов совместимых драйверов устройств. Например, управляющий сервер может добавить идентификаторы пакетов драйверов устройств, соответствующие пакетам совместимых драйверов устройств, к списку идентификаторов совместимых драйверов устройств. После обработки всех идентификаторов драйверов аппаратных устройств в списке управляющий сервер на этапе 412 возвращает список идентификаторов пакетов драйверов устройств в ответ на запрос, например, к целевой машине.

На фиг. 5 приведена блок-схема последовательности действий, на которой изображена обработка целевой машины в предустановочной среде для загрузки пакетов драйверов устройств согласно некоторым вариантам осуществления. Например, клиентский процесс, такой как средство, выполняемое на целевой машине, может выполнять последовательность задачи по размещению ОС после применения образа ОС к целевой машине, но перед перезагрузкой целевой машины в режим "минимальной установки". В этом состоянии целевая машина находится в предустановочной среде. Предустановочная среда содержит минимальную ОС или сокращенную версию ОС, такую как WinPETM от MICROSOFT, которая устанавливается на жесткий диск целевой машины и перезагружается для помещения целевой машины в предустановочную среду. Минимальная ОС может быть предоставлена посредством таких механизмов, как, например, CD ROM, диск RAM, PXE и т. д. Общеизвестно, что после выполнения минимальной установки ОС, соответствующая образу ОС, инициализируется и запускается и любые настройки машины, сохраненные ранее, восстанавливаются на целевой машине. Предустановочная среда обычно понятна специалисту в данной области техники.

На этапе 502 средство, выполняющееся на целевой машине, просматривает целевую машину для определения аппаратных компонентов, которые находятся на целевой машине. На этапе 504 средство создает список идентификаторов аппаратных устройств и идентификаторов совместимых аппаратных устройств для просмотренных аппаратных компонентов. На этапе 506 средство получает от управляющего сервера список идентификаторов пакетов драйверов устройств, которые совместимы со списком идентификаторов аппаратных устройств, и идентификаторы совместимых аппаратных устройств. Затем для каждого пакета драйвера устройства в списке идентификаторов пакетов драйверов устройств (этап 508) средство выполняет этап 510, пока не будут обработаны все идентификаторы пакетов драйверов устройств (этап 512). На этапе 510 средство обеспечивает доступность пакета драйвера устройства каталога драйверов для автономной ОС на машине. Например, средство может сконфигурировать автономную ОС на машине, чтобы она учитывала драйвер устройства, соответствующий пакету драйвера устройства каталога драйверов. В некоторых вариантах осуществления средство может проверить пакет драйвера устройства каталога драйверов с целью определить, является ли драйвер необходимым при загрузке. Если пакет драйвера устройства каталога драйверов является драйвером, необходимым при загрузке, средство устанавливает необходимый при загрузке драйвер на целевую машину.

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

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

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

2. Способ по п.1, в котором список совместимых пакетов драйверов устройств получают от удаленного сервера.

3. Способ по п.1, в котором пакеты драйверов устройств получают от контент-сервера.

4. Способ по п.1, в котором список идентификаторов аппаратных устройств включает в себя совместимые идентификаторы аппаратных устройств.

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

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

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

8. Способ по п.1, в котором, по меньшей мере, один из пакетов драйверов устройств является пакетом драйвера WINDOWS.

9. Способ по п.1, в котором минимальную операционную систему устанавливают через сеть.

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

11. Компьютерная система по п.10, в которой список совместимых драйверов устройств получен от удаленного сервера,

12. Компьютерная система по п.10, в которой драйверы устройств получены от контент-сервера.

13. Компьютерная система по п.10, в которой список идентификаторов аппаратных устройств включает в себя совместимые идентификаторы аппаратных устройств.

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

15. Компьютерная система по п.10, в которой список идентификаторов аппаратных устройств ранжирован.

16. Компьютерная система по п.10, в которой автономная операционная система выполнена с возможностью учитывать использование драйверов устройств при выполнении процесса "подключи и работай".

17. Компьютерная система по п.10, в которой минимальная операционная система установлена через сеть.

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

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



 

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

Изобретение относится к области аппаратов плазменной обработки. .

Изобретение относится к вычислительной технике. .

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

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

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

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

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

Изобретение относится к оптическим запоминающим устройствам. .

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

Изобретение относится к запросам данных в форме схемы, имеющей пространство имен, события в пространстве имен и параметры для этих событий. .

Изобретение относится к средствам синхронизации бизнес-приложений. .

Изобретение относится к системе создания управляемого данными действия, связанного с изменением экземпляра данных сетевой формы. .

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

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

Изобретение относится к области развертывания решений в ферме серверов. .

Изобретение относится к системам предоставления медиа-контента из множества источников, доступных через единый интерфейс клиентского устройства
Наверх