Patent US6349373B2 successfully refreshed from Google Patents.
Patent US6269481B1 successfully refreshed from Google Patents.
← Back to Patent Explorer
US6269481B1 Expired / Lapsed US ⏱️ 0.0 years remaining

Automatic selecting and downloading device drivers from a server system to a client system that includes one or more devices

Assignee: Microsoft Technology Licensing LLC
•
Filing: 2000-02-08
•
Granted: 2001-07-31
•
Expires: 2020-02-08
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method is provided of installing device drivers in a host processing system coupled to a number of peripheral devices. At system initialization, the host processing system requests the peripheral devices to which it is coupled to each provide a device code for identifying the type of the peripheral device. The host processing system receives the device codes from the peripheral devices and transmits the device codes to a remote server over a network, such as the Internet. The remote server selects an appropriate device driver for each peripheral device from a plurality of stored device drivers based on the device codes received from the host processing system and then transmits the device drivers to the host processing system over the network. This driver download process is carried out with no intervention from the user.

Inventors

  • 👤 Stephen G. Perlman
  • 👤 Tim Bucher

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-09 13:51
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/44; G06F9/4401; G06F9/4411; G06F9/4413; G06F9/4415; Y; Y10; Y10S; Y10S707/00; Y10S707/99941; Y10S707/99944

Claims Analysis

Total Claims: 42
Claim 1
Independent Claim 207 words
In a client system coupled to a peripheral device, a method of automatically retrieving a device driver from a remote server and installing the device driver on the client system, the method comprising the steps: storing on the remote server device drivers for peripheral devices compatible with the client system and a device code associated with each compatible peripheral device and its device driver; receiving, at the client system, the device code from the peripheral device; transmitting the device code from the client system to the remote server, the device code being received at the client system and transmitted to the remote server without a user of the client system providing input that further identifies the peripheral device; and receiving, at the client system, the device driver from the remote server, the device driver having been selected to be appropriate for the peripheral device in response to the device code transmitted to the remote server, wherein the steps of the client system receiving the device code, transmitting the device code to the remote server, and receiving the device driver are performed automatically upon detection that a new peripheral device has been connected to the client system and without further input from the user of the client system.
Claim 2
Dependent Claim 207 words
In a client system coupled to a peripheral device, a method of automatically retrieving a device driver from a remote server and installing the device driver on the client system, the method comprising the steps: storing on the remote server device drivers for peripheral devices compatible with the client system and a device code associated with each compatible peripheral device and its device driver; receiving, at the client system, the device code from the peripheral device; transmitting the device code from the client system to the remote server, the device code being received at the client system and transmitted to the remote server without a user of the client system providing input that further identifies the peripheral device; and receiving, at the client system, the device driver from the remote server, the device driver having been selected to be appropriate for the peripheral device in response to the device code transmitted to the remote server, wherein the steps of the client system receiving the device code, transmitting the device code to the remote server, and receiving the device driver are performed automatically upon detection that a new peripheral device has been connected to the client system and without further input from the user of the client system.
Claim 3
Dependent Claim 32 words
A method according to claim 1 , wherein the information transmitted to the remote server identifies to the remote server a device type of the one or more compatible peripheral device drivers.
Claim 4
Dependent Claim 35 words
A method according to claim 1 , wherein the step of the client system transmitting the information to the remote server comprises the step of transmitting the information to the remote server over a network.
Claim 5
Dependent Claim 13 words
A method according to claim 3 , wherein the network comprises the Internet.
Claim 6
Dependent Claim 126 words
A method according to claim 1 , wherein the client system is coupled to a plurality of peripheral devices that are connected to the client system and one to another in a daisy chain configuration, and wherein the step of the client system receiving the information from the peripheral device comprises the steps of: the client system receiving a first device code associated with a most senior peripheral device in the daisy chain, the first device code being received directly from the most senior peripheral device; and the client system receiving a second device code associated with a more junior peripheral device in the daisy chain, the second device code being received after passing from the more junior peripheral device through the most senior peripheral device.
Claim 7
Dependent Claim 20 words
A method according to claim 1 , wherein the peripheral device does not store a copy of the device driver.
Claim 8
Dependent Claim 51 words
A method according to claim 6 , further comprising the step of storing the device driver at the client system, such that the client system does not store any device driver other than the device driver received from the remote server and any other device driver received from the remote server.
Claim 9
Dependent Claim 33 words
A method according to claim 7 , wherein the step of storing the device driver at the client system is conducted without a user of the client system manually installing the device driver.
Claim 10
Dependent Claim 23 words
A method according to claim 1 , wherein the information device that identifies one or more peripheral device drivers comprises a device code.
Claim 11
Dependent Claim 20 words
A method according to claim 1 , wherein the one or more peripheral device drivers is a signal device driver.
Claim 12
Dependent Claim 22 words
A method according to claim 1 , wherein the one or more peripheral device drivers are compatible with only the peripheral device.
Claim 13
Dependent Claim 43 words
A method according to claim 1 , wherein the steps of the client system receiving the information, transmitting the information to the client system, and receiving the one or more compatible peripheral device drivers are performed automatically upon powering up the client system.
Claim 14
Dependent Claim 298 words
In a client system coupled to one or more peripheral devices, a method of automatically retrieving a device driver from a remote server for each of the one or more peripheral devices and installing the device drivers to the client system, the method comprising the steps: storing on the remote server device drivers for all peripheral devices compatible with the client system and a device code associated with each compatible peripheral device and its device driver; automatically requesting, by the client system, the device code associated with each of the one or more peripheral devices, each device code being requested from the associated peripheral device; receiving, at the client system, the device code associated with each of the one or more peripheral devices; transmitting each received device code to the remote server via a network, each received device code being received at the client system and transmitted to the remote server without a user of the client system providing input that further identifies the associated peripheral device; receiving, by the client system, one or more device drivers from the remote server, each of the one or more device drivers having been selected to be appropriate for one of the one or more peripheral devices in response to an associated device code having been transmitted to the server system; and storing the one or more device drivers at the client system, such that the client system does not store any device driver other than the one or more device drivers, wherein the steps of receiving the device code, transmitting the device code, receiving the device driver and storing the device driver are performed automatically upon detection that a new peripheral device has been connected to the client system and without further intervention by the user of the client system.
Claim 15
Dependent Claim 298 words
In a client system coupled to one or more peripheral devices, a method of automatically retrieving a device driver from a remote server for each of the one or more peripheral devices and installing the device drivers to the client system, the method comprising the steps: storing on the remote server device drivers for all peripheral devices compatible with the client system and a device code associated with each compatible peripheral device and its device driver; automatically requesting, by the client system, the device code associated with each of the one or more peripheral devices, each device code being requested from the associated peripheral device; receiving, at the client system, the device code associated with each of the one or more peripheral devices; transmitting each received device code to the remote server via a network, each received device code being received at the client system and transmitted to the remote server without a user of the client system providing input that further identifies the associated peripheral device; receiving, by the client system, one or more device drivers from the remote server, each of the one or more device drivers having been selected to be appropriate for one of the one or more peripheral devices in response to an associated device code having been transmitted to the server system; and storing the one or more device drivers at the client system, such that the client system does not store any device driver other than the one or more device drivers, wherein the steps of receiving the device code, transmitting the device code, receiving the device driver and storing the device driver are performed automatically upon detection that a new peripheral device has been connected to the client system and without further intervention by the user of the client system.
Claim 16
Dependent Claim 58 words
A method according to claim 13 , wherein: none of the one or more peripheral devices stores a copy of the appropriate device driver; and the step of storing the one or more device drivers at the client system is conducted without a user of the client system manually installing any of the one or more device drivers.
Claim 17
Dependent Claim 206 words
In a server system capable of communicating via a network with a remote client system, a method of selecting a device driver for a peripheral device coupled to the remote client system and transmitting the device driver to the remote client system, the method comprising the steps: storing on the remote server device drivers for all peripheral devices compatible with the client system and a device code associated with each compatible peripheral device and its device driver; receiving, by the server system, the device code associated with the peripheral device from the remote client system, the device code being received by the server system without a user of the remote client system providing input that further identifies the peripheral device; automatically selecting an appropriate device driver for the peripheral device based on the device code received by the server system; and transmitting the appropriate device driver from the server system to the remote client system, wherein the steps of receiving the device code, selecting the appropriate device driver and transmitting the appropriate device driver are performed automatically upon detection that a new peripheral device has been connected to the client system and without further input from or intervention by the user of the remote client system.
Claim 18
Dependent Claim 206 words
In a server system capable of communicating via a network with a remote client system, a method of selecting a device driver for a peripheral device coupled to the remote client system and transmitting the device driver to the remote client system, the method comprising the steps: storing on the remote server device drivers for all peripheral devices compatible with the client system and a device code associated with each compatible peripheral device and its device driver; receiving, by the server system, the device code associated with the peripheral device from the remote client system, the device code being received by the server system without a user of the remote client system providing input that further identifies the peripheral device; automatically selecting an appropriate device driver for the peripheral device based on the device code received by the server system; and transmitting the appropriate device driver from the server system to the remote client system, wherein the steps of receiving the device code, selecting the appropriate device driver and transmitting the appropriate device driver are performed automatically upon detection that a new peripheral device has been connected to the client system and without further input from or intervention by the user of the remote client system.
Claim 19
Dependent Claim 39 words
A method according to claim 15 , wherein the information received by the server system originates from, and is stored in, the peripheral device, wherein the information to the server system identifies a device type of the peripheral device.
Claim 20
Dependent Claim 23 words
A method according to claim 15 , wherein the step of receiving information comprises the step of receiving the information over a network.
Claim 21
Dependent Claim 13 words
A method according to claim 17 , wherein the network comprises the Internet.
Claim 22
Dependent Claim 68 words
A method according to claim 15 , wherein the step of automatically selecting an appropriate device driver comprises the steps of: comparing, by the server system, the information with data entries of a database that contains a compilation of device drivers that support particular peripheral devices; automatically identifying, from the data entries of the database, the appropriate device driver based on the information received by the server system.
Claim 23
Dependent Claim 34 words
A method according to claim 15 , wherein the step of causing the appropriate device driver to be transmitted comprises the step of causing the appropriate device driver to be transmitted over a network.
Claim 24
Dependent Claim 15 words
A method according to claim 20 , wherein the network comprises a wide area network.
Claim 25
Dependent Claim 13 words
A method according to claim 20 , wherein the network comprises the Internet.
Claim 26
Dependent Claim 257 words
In a server system capable of communicating via a network with a remote client system, a method of selecting one or more device drivers for one or more peripheral devices coupled to the remote client system and transmitting the one or more device drivers to the remote client system, the method comprising the steps: storing on the remote server device drivers for all peripheral devices compatible with the client system and a device code associated with each compatible peripheral device and its device driver; receiving, by the server system, one or more device codes associated with one or more peripheral devices, each received device code having been transmitted from the remote client system via a network without a user of the remote client system providing input that identifies the peripheral device; selecting, based on the received one or more device codes, one or more device drivers, each being appropriate for one of the one or more peripheral devices; retrieving each of the one or more device drivers from a storage device; and transmitting each of the one or more device drivers from the server system to the remote client system via the network, wherein the steps of receiving the one or more device codes, selecting the one or more device drivers, retrieving the one or more device drivers, and transmitting the one or more device drivers are performed automatically upon detection that a new peripheral device has been connected to the client system and without further input from or intervention by the user of the client system.
Claim 27
Dependent Claim 257 words
In a server system capable of communicating via a network with a remote client system, a method of selecting one or more device drivers for one or more peripheral devices coupled to the remote client system and transmitting the one or more device drivers to the remote client system, the method comprising the steps: storing on the remote server device drivers for all peripheral devices compatible with the client system and a device code associated with each compatible peripheral device and its device driver; receiving, by the server system, one or more device codes associated with one or more peripheral devices, each received device code having been transmitted from the remote client system via a network without a user of the remote client system providing input that identifies the peripheral device; selecting, based on the received one or more device codes, one or more device drivers, each being appropriate for one of the one or more peripheral devices; retrieving each of the one or more device drivers from a storage device; and transmitting each of the one or more device drivers from the server system to the remote client system via the network, wherein the steps of receiving the one or more device codes, selecting the one or more device drivers, retrieving the one or more device drivers, and transmitting the one or more device drivers are performed automatically upon detection that a new peripheral device has been connected to the client system and without further input from or intervention by the user of the client system.
Claim 28
Dependent Claim 52 words
A method according to claim 23 , wherein the step of automatically causing each of the one or more device drivers to be transmitted from the server system to the remote client system enables the remote client system to avoid storing any device driver other than the one or more device drivers.
Claim 29
Independent Claim 229 words
A system comprising: a remote server having stored thereon all peripheral devices compatible with the client processing system and a device code associated with each compatible peripheral device and its device driver; and a client processing system coupled to a peripheral device comprising a processor; and a computer-readable medium coupled to the processor, the computer-readable medium having computer-executable instructions stored therein which, when executed by the processor, cause the client processing system to perform the steps: receiving a device code from the peripheral device that identifies one or more peripheral device drivers compatible with the peripheral device; transmitting the device code to the remote server, the device code being received at the client system and transmitted to the remote server without a user of the client system providing input that further identifies the one or more peripheral device drivers; and receiving the one or more compatible peripheral device drivers from the remote server, the one or more compatible peripheral device drivers having been selected in response to the device code transmitted to the remote server, wherein the steps of receiving the device code, transmitting the device code to the remote server, and receiving the one or more compatible peripheral device drivers are performed automatically upon detection that a new peripheral device has been connected to the client system and without further input from the user of the client system.
Claim 30
Independent Claim 229 words
A system comprising: a remote server having stored thereon all peripheral devices compatible with the client processing system and a device code associated with each compatible peripheral device and its device driver; and a client processing system coupled to a peripheral device comprising a processor; and a computer-readable medium coupled to the processor, the computer-readable medium having computer-executable instructions stored therein which, when executed by the processor, cause the client processing system to perform the steps: receiving a device code from the peripheral device that identifies one or more peripheral device drivers compatible with the peripheral device; transmitting the device code to the remote server, the device code being received at the client system and transmitted to the remote server without a user of the client system providing input that further identifies the one or more peripheral device drivers; and receiving the one or more compatible peripheral device drivers from the remote server, the one or more compatible peripheral device drivers having been selected in response to the device code transmitted to the remote server, wherein the steps of receiving the device code, transmitting the device code to the remote server, and receiving the one or more compatible peripheral device drivers are performed automatically upon detection that a new peripheral device has been connected to the client system and without further input from the user of the client system.
Claim 31
Dependent Claim 34 words
A client processing system according to claim 25 , wherein the step of transmitting the information to the remote server, comprises the step of transmitting the information to the remote server over a network.
Claim 32
Dependent Claim 17 words
A client processing system according to claim 26 , wherein the network comprises a wide area network.
Claim 33
Dependent Claim 15 words
A client processing system according to claim 26 , wherein the network comprises the Internet.
Claim 34
Dependent Claim 36 words
A client processing system according to claim 26 , wherein the step of receiving the device driver from the remote server, comprises the step of receiving the device driver from the remote server over the network.
Claim 35
Dependent Claim 17 words
A client processing system according to claim 29 , wherein the network comprises a wide area network.
Claim 36
Dependent Claim 15 words
A client processing system according to claim 29 , wherein the network comprises the Internet.
Claim 37
Dependent Claim 155 words
A server processing system in communication with a remote client system, the remote client system being coupled to a peripheral device, the server processing system comprising: means for storing device drivers for peripherals compatible with the remote client system; means for receiving from the client system, via a network, a device code identifying the peripheral device without a user of the client system providing input that identifies the peripheral device; means for selecting one of the plurality of selectable device drivers as an appropriate device driver for the peripheral device based on the device code; and means for transmitting the appropriate device driver to the remote client system via the network, wherein the receiving means, the selecting means, and the transmitting means perform their respective functions automatically upon detection that a new peripheral device has been connected to the client system and without further input from or intervention by the user of the client system.
Claim 38
Dependent Claim 155 words
A server processing system in communication with a remote client system, the remote client system being coupled to a peripheral device, the server processing system comprising: means for storing device drivers for peripherals compatible with the remote client system; means for receiving from the client system, via a network, a device code identifying the peripheral device without a user of the client system providing input that identifies the peripheral device; means for selecting one of the plurality of selectable device drivers as an appropriate device driver for the peripheral device based on the device code; and means for transmitting the appropriate device driver to the remote client system via the network, wherein the receiving means, the selecting means, and the transmitting means perform their respective functions automatically upon detection that a new peripheral device has been connected to the client system and without further input from or intervention by the user of the client system.
Claim 39
Dependent Claim 20 words
A server processing system according to claim 32 , wherein the information indicates a device type of the peripheral device.
Claim 40
Dependent Claim 32 words
A server processing system according to claim 32 , wherein the information is received from the remote client system after the remote client system receives the device code from the peripheral device.
Claim 41
Dependent Claim 17 words
A server processing system according to claim 32 , wherein the network comprises a wide area network.
Claim 42
Dependent Claim 15 words
A server processing system according to claim 32 , wherein the network comprises the Internet.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2004-07-30 2005-01-29 2005-07-31 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2008-07-30 2009-01-29 2009-07-31 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2012-07-30 2013-01-29 2013-07-31 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag