US20050060367A1 - Client side caching of printer configuration - Google Patents
Client side caching of printer configuration Download PDFInfo
- Publication number
- US20050060367A1 US20050060367A1 US10/972,641 US97264104A US2005060367A1 US 20050060367 A1 US20050060367 A1 US 20050060367A1 US 97264104 A US97264104 A US 97264104A US 2005060367 A1 US2005060367 A1 US 2005060367A1
- Authority
- US
- United States
- Prior art keywords
- computer
- peripheral device
- configuration information
- server
- client
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4411—Configuring for operating with peripheral devices; Loading of device drivers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/289—Intermediate processing functionally located close to the data consumer application, e.g. in same machine, in same home or in same sub-network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/30—Profiles
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
- H04L67/5682—Policies or rules for updating, deleting or replacing the stored data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/329—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
Definitions
- This invention relates to server-client systems and, in particular, to a server-client system in which system configuration information for a server is stored on a client.
- a server computer In a typical server-client system, a server computer is connected to several client computers or terminals via a network. In such server-client systems, applications are executed at the server rather than at the client.
- the server transmits display information to the client for display at the client, and user inputs (e.g., via keyboard or mouse) at the client are transmitted to the server for processing by an application(s) executing at the server.
- the “client” may be an entire client computer, or alternatively an application executing at the client computer.
- a server in such a system typically has an operating system that can run several client sessions concurrently.
- Each client user has access to various resources of the server, including the processor, data storage, application programs, etc.
- Software applications that are resident on the server are available to each client for independent execution by the client.
- Each session is independent from the other sessions and, therefore, one client cannot access information relating to another client.
- the server provides a logically independent machine for each client connected to the server.
- Client users frequently use peripheral devices at the client machines. For example, a user may wish to attach a printer to the user's client computer (a “local” printer) in order to print data generated by an application that is running on the server computer. To do this, the user must manually install the local printer and redirect the printer queue created by the server to the I/O port of the client computer to which the printer is connected. Such manual installation of peripheral devices is undesirable because it requires significant time and effort on the part of the user.
- not all client peripheral devices can be automatically detected and installed. For example, if a printer is an older model that was manufactured before automatic detection technology was developed, it will not generate an identifier signal that is recognizable by the client or the server. Or, if the attached printer is a newer model but the client runs an older operating system that does not recognize the newer model printer or that does not have automatic peripheral detection capability, such as Windows® 3.1, it is necessary for the user to manually install the printer on the server.
- a major drawback of this situation is that the printer must be installed each time the client connects to the server. For example, if a user installs a client printer on a server and subsequently disconnects the client from the server, the server configuration information relating to the printer is deleted. When the user reconnects to the server, the user must manually install the same printer again.
- a server-client environment provides for client-side caching of information related to a peripheral device so that the client may automatically restore the information to a server upon connection or reconnection with the server.
- Peripheral devices that may be connected to the client include printers, scanners, card readers, zip drives, etc.
- printers For discussion purposes, reference herein will be made to a printer. After the printer is initially configured on the server, subsequent installations are automatic. The client user is thus relieved from having to manually install the printer each time the user connects to a server.
- install has different meanings in the art.
- install refers to physically connecting a peripheral device to a computer.
- install refers to installing the software related to a connected peripheral device. If the peripheral device is a printer, a printer driver is installed and a printer queue is created.
- install as used herein means installing software that is related to a connected peripheral device. The peripheral device is physically connected to the client, but the software related to the peripheral device is installed on the server.
- peripheral devices such as a printer
- a client user must manually install a printer driver to render the printer operational.
- the user interaction required to install and configure the printer on the server are performed at the client, but the printer is installed on the server.
- the printer After the printer is manually installed on the server from the client, the portion of the server configuration that relates to the printer is sent to the client, where it is stored. In addition, printer parameter settings are sent to the server where they are returned to the client for storing with the server configuration information. When the server/client session in which the printer has been installed is terminated, the printer configuration on the server is deleted.
- Subsequent installations are automatic, regardless of whether the client is connected to the same server or to a different server, or whether the initial installation was manual or automatic.
- the client sends the cached server configuration and printer settings data to the server.
- the server utilizes this data to restore the printer configuration and printer settings to the state in which they were in prior to the termination of the session.
- the process is performed automatically, requiring little, if any, user interaction. Therefore, after the initial installation, the client user is provided with automatic printer installation on the client for that particular printer, and the previous printer settings are automatically restored.
- the installation and restoration are automatic even if the client (and printer) connects to a different server.
- FIG. 1 is a diagrammatic illustration of a server/client system.
- FIG. 2 is a block diagram of a server/client system.
- FIG. 3 is a flow diagram of a method for client-side caching of server configuration information and automatic installation of a peripheral device.
- FIG. 4 is a flow diagram of a method for client-side caching of printer parameter settings and updating same.
- FIG. 1 shows a server/client computer system 30 having a server 32 , a first client 34 and a second client 36 interconnected via a network 38 .
- the server 32 and the clients 34 , 36 have modems or network cards, which facilitate access (direct or otherwise) to the network 38 so that the server 32 and the clients 34 , 36 can exchange information over the network 38 .
- the clients 34 , 26 each have a desktop 40 , 42 interface displayed.
- the server 32 and the clients 34 , 36 are conventional computers.
- server/client computer system 30 depicted in FIG. 1 has a first client 34 and a second client 36 , there may be one to any number of clients connected to the server 32 .
- the number of clients that may be connected to a server is limited only by the architecture of a particular server.
- the server 32 is configured to provide a logically independent machine for each client 34 , 36 connected to the network 38 . That is, the server 32 establishes a session for each client 34 , 36 , provides the desktop 40 , 42 for each client 34 , 36 , and makes server resources available to each client 34 , 36 . Such resources include, but are not limited to, allocations of processor time, memory, data storage, video processing, application programs, etc.
- a user of either of the clients 34 , 36 interacts with the desktop 40 , 42 on the client 34 , 36 to run software applications that reside on the server 32 . While the user provides input to and receives output from the client 34 , 36 , most processing is performed at the server 32 .
- the network 38 provides a communications link between the server 32 and the clients 34 , 36 through which data is transmitted.
- the network 38 may be a local area network (LAN), a wide area network (WAN), the Internet, or the like, provided that it can accommodate server/client functionality.
- FIG. 2 shows a server/client system 50 having a server 52 and a client 54 .
- the server 52 includes a processor 56 and memory 58 .
- the server 52 also has a network port 60 , which facilitates access to the network 38 .
- the network port 60 may be implemented as a modem, network card, or other device that interfaces the server 52 to the network 38 .
- the server 52 can be implemented as a common personal computer or other type of computer, such as a laptop computer, etc.
- the server 52 runs an operating system 62 which is stored in memory 58 and executes on the processor 56 .
- the operating system 62 is a multitasking operating system such as a Windows® brand operating system from Microsoft Corporation (e.g., Windows® 98, Windows® 95, Windows® NT, or other derivative of Windows®)). However, other operating systems may be used.
- the server 52 has a printing subsystem 64 implemented in the operating system 62 stored in memory 58 .
- the printing subsystem 62 is used to direct all operations involving printers and printing, including installing printers, creating and managing printer queues, removing printers, uninstalling printers, etc.
- the printing subsystem includes a configuration tracking unit 66 that is configured to monitor server configuration with regard to client peripheral devices that are installed on the server 52 . This aspect of the printing subsystem 64 will be discussed in greater detail below.
- the server 52 is shown having a printer driver 70 and a printer queue 72 installed and resident within the memory 58 . It is noted, however, that the server 52 will only include the printer driver 70 and the printer queue 72 when a printer has been connected to the system 50 and installed on the server 52 .
- the printer driver 70 is a printer-specific software program that provides an interface between a printer and the server 52 and allows the server 52 to provide print functions via a printer.
- the printer queue 72 is created.
- the printer queue 72 accepts print jobs from the server 52 and queues them for printing.
- the peripheral device is a device other than a printer, the printer driver will be a device driver for that peripheral device, if a device driver is required by the peripheral device.
- the server 52 may also include a redirected printer port 74 .
- the redirected printer port 74 is a virtual port created by the server 52 in the event that the server is unable to identify and install a compatible driver for a client-side printer.
- the redirected printer port 74 is exposed by the server and can be attached to a printer queue using standard printer queue creation techniques.
- printer driver 70 and one printer queue 72 are shown in the memory 58 , there may be more than one printer driver or more than one printer queue 72 stored in the memory 58 —corresponding to different client sessions. Also, the printer driver 70 and the printer queue 72 shown are accessible only for the session established for the client 54 .
- the memory 58 may contain other printer drivers and printer queues that are installed for other sessions executing on the server 52 . Printer drivers and printer queues installed for other sessions on the server 52 are not available for access by the client 54 .
- the client 54 includes memory 76 , a processor 78 , and an I/O port 80 having a printer 82 connected thereto. Although the client 54 is shown as having only one I/O port 80 , it is noted that the client 54 may include more than one I/O port.
- the printer 82 has multiple printer settings 84 , such as paper size, paper orientation, printing quality, etc.
- Printer settings 84 ′ is a copy of the printer settings 84 that are stored in the memory 76 of the client 54 via a method that will be discussed in detail below.
- the memory 76 also stores server configuration information 86 .
- the server configuration information 86 is data monitored by the configuration tracking unit 66 of server 52 .
- the configuration tracking unit 66 of server 52 is configured to monitor server configuration information relating to client peripheral devices that are installed on the server 52 .
- such configuration information includes, but is not limited to, data associated with the printer driver 70 , the printer queue 72 , the redirected printer port 74 , the printer settings 84 , the I/O port 80 to which the printer 82 is connected, etc.
- the server sends this configuration information 86 to the client 54 , where it is stored in memory 76 .
- the configuration information 86 related to the installation of the printer 82 is therefore readily available in the event that the configuration information 86 is required to be restored on the server 52 . If the configuration information 86 subsequently needs to be restored on the server 52 , the configuration information 86 is simply transmitted from the client 54 to the server 52 .
- the configuration tracking unit 66 is configured to detect new device installations, and can also detect when a peripheral device is removed from a system, and when a system user renames an I/O queue associated with a device. For example, if the printer 82 is removed from the system, or if the client user wishes to manually delete the printer queue 72 from the system 50 , the client 54 sends notification to the server 52 to remove the printer 82 . In response, the server removes all data structures related to the printer 82 (e.g., printer driver 70 and printer queue 72 ) from the server. The server will then send updated server configuration information 86 to the client 54 , where it is stored in memory 76 . When the updated information 86 is stored in the memory 76 of the client 54 , it simply overwrites the old information.
- the server will send updated server configuration information 86 to the client 54 , where it is stored in memory 76 .
- the client 54 also has a network port 88 to facilitate access to the network 38 .
- the network port 88 may be implemented as a modem, network card, or other device which interfaces the client 54 to the network 38 .
- FIG. 3 is a flow diagram depicting a method for client-side caching of server configuration information and printer settings, and for automatically installing a peripheral device upon subsequent connection to a server. The method is described with continuing reference to FIGS. 1 and 2 .
- the client 54 sends a request to the server 52 to install the printer 82 on the server 52 .
- the printer settings 84 are also sent to the server 52 .
- the server 52 receives the install request from the client 54 , the server performs a manual installation of the printer 82 on the server 52 at step 202 .
- Manual installation refers to a client user being required to identify the printer driver 70 associated with the printer 82 as well as the I/O port 80 to which the printer 82 is connected.
- the server prompts the user for this information through the I/O interface of client 54 .
- the configuration tracking unit 66 of the printing subsystem 64 sends server configuration information 86 to the client (step 204 ).
- the client 54 stores the server configuration information 86 and the printer settings 84 in the memory 76 .
- the client 54 is disconnected from the server 52 (step 208 ). Whenever the client 54 is disconnected from the server 52 , all data structures associated with peripheral devices attached to the client 52 are deleted from the server 52 .
- the client 54 is reconnected to the server 52 . It is noted that, although the client 54 in this example is reconnected to the server 52 , the client 54 may be connected to a different server (not shown) in another server/client system (not shown). The methodology is the same whether the client 54 is connected to the server 52 or to a different server (not shown). This is another advantage to the present invention in that, once the printer 82 is manually installed on the server 52 , subsequent installations—whether they be on the server 52 or on another server (not shown)—are automatic.
- the client 54 Upon reconnection with the server 52 , the client 54 transmits the server configuration information 86 that was stored during the previous connection, to the server 52 .
- the printer settings 84 are also sent to the server 52 .
- the server 52 utilizes the server configuration information 86 received from the client 54 to automatically install the printer 82 on the server 52 . This automatic installation is performed with minimal user interaction.
- the configuration tracking unit 66 of the server 52 sends the server configuration information 86 and the printer settings 84 ′ to the client 54 (step 214 ).
- the client 52 Upon receipt of this data, at step 216 , the client 52 stores the server configuration information 86 and the printer settings 84 in memory 76 .
- FIG. 4 is a flow diagram depicting a method for client-side caching of server configuration information and printer settings, and for automatically updating peripheral device settings on the server. The method is described with continuing reference to FIG. 1 and FIG. 2 . It is noted that the method of FIG. 4 is performed contemporaneously with the method described in FIG. 3 . However, for discussion purposes, the methods are described separately.
- the client 54 sends a request to the server 52 to install the printer 82 on the server 52 .
- the printer settings 84 are also sent to the server 52 .
- the server 52 receives the install request from the client 54 , the server performs a manual installation of the printer 82 on the server 52 at step 302 .
- Manual installation refers to a client user being required to identify the printer driver 70 associated with the printer 82 as well as the I/O port 80 to which the printer 82 is connected.
- the configuration tracking unit 66 of the printing subsystem 64 sends server configuration information 86 to the client (step 304 ).
- the client 54 stores the server configuration information 86 and the printer settings 84 ′ in the memory 76 .
- the system 50 detects if the user makes any changes to the printer settings 84 . If so, the changed printer settings 84 are sent to the server 52 at step 310 .
- the server 52 receives the updated printer settings 84 .
- the updated printer settings 84 are sent to the client 54 at step 316 .
- the client 54 then stores the updated printer settings 84 at step 316 .
- the printer settings 84 ′ are sent from the client 54 to the server 52 when the client 54 is reconnected to the server 52 .
- the desired printer settings 84 are always restored when the client 54 is reconnected to the server 52 .
- the system and method as described herein provide a user with a way to automatically install peripheral devices on a server after they have been redirected on the server one time from a client.
- the user's device settings preferences are preserved from session to session, thereby saving the user from having to manually update these settings whenever a server-client connection is established. Once a manual installation has been performed, subsequent installations are automatic, whether the client is reconnected to the same server, or to a different server.
Abstract
A server-client system is configured to store, on a client, server configuration information relating to a peripheral device connected at the client and parameter settings for the peripheral device. The information is updated as changes occur. After the client has been disconnected from the system and the peripheral device uninstalled, the peripheral device is automatically installed and the parameter settings restored without requiring significant user interaction when the client reconnects. The automatic installation and restoring is performed even if the client is connected to a different server than it was originally.
Description
- This invention relates to server-client systems and, in particular, to a server-client system in which system configuration information for a server is stored on a client.
- In a typical server-client system, a server computer is connected to several client computers or terminals via a network. In such server-client systems, applications are executed at the server rather than at the client. The server transmits display information to the client for display at the client, and user inputs (e.g., via keyboard or mouse) at the client are transmitted to the server for processing by an application(s) executing at the server. The “client” may be an entire client computer, or alternatively an application executing at the client computer.
- A server in such a system typically has an operating system that can run several client sessions concurrently. Each client user has access to various resources of the server, including the processor, data storage, application programs, etc. Software applications that are resident on the server are available to each client for independent execution by the client. Each session is independent from the other sessions and, therefore, one client cannot access information relating to another client. In this manner, the server provides a logically independent machine for each client connected to the server.
- Client users frequently use peripheral devices at the client machines. For example, a user may wish to attach a printer to the user's client computer (a “local” printer) in order to print data generated by an application that is running on the server computer. To do this, the user must manually install the local printer and redirect the printer queue created by the server to the I/O port of the client computer to which the printer is connected. Such manual installation of peripheral devices is undesirable because it requires significant time and effort on the part of the user.
- A co-pending application (U.S. patent application No. ______) entitled “Automatic Detection And Installation Of Client Peripheral Devices By A Server”, to Tad Brockway, Madan Appiah, Adam Overton, and Ritu Bahl, filed concurrently herewith, describes a system in which peripheral devices attached to the client are automatically detected and corresponding device drivers installed at the server.
- However, not all client peripheral devices can be automatically detected and installed. For example, if a printer is an older model that was manufactured before automatic detection technology was developed, it will not generate an identifier signal that is recognizable by the client or the server. Or, if the attached printer is a newer model but the client runs an older operating system that does not recognize the newer model printer or that does not have automatic peripheral detection capability, such as Windows® 3.1, it is necessary for the user to manually install the printer on the server.
- A major drawback of this situation is that the printer must be installed each time the client connects to the server. For example, if a user installs a client printer on a server and subsequently disconnects the client from the server, the server configuration information relating to the printer is deleted. When the user reconnects to the server, the user must manually install the same printer again.
- Adding to this inconvenience is the fact that if the user desires to operate the printer utilizing printer parameter settings that are different from the default settings, the user must also change the parameter settings each time the user connects to the server. For instance, if the default paper tray is the letter-size tray but the user always uses the legal-size paper tray, the user will have to set the paper tray parameter every time the user connects to a server and installs the printer.
- The technology described below addresses these disadvantages, as it provides for client-side caching of server configuration information as well as peripheral device parameter settings. When the client is reconnected to a server after having been disconnected from a server session, the cached information is automatically transmitted to the server, where it is restored. The client user is thus relieved of the burden of having to manually install the printer or reset its parameter settings every time the client is connected to a server.
- A server-client environment provides for client-side caching of information related to a peripheral device so that the client may automatically restore the information to a server upon connection or reconnection with the server. Peripheral devices that may be connected to the client include printers, scanners, card readers, zip drives, etc. For discussion purposes, reference herein will be made to a printer. After the printer is initially configured on the server, subsequent installations are automatic. The client user is thus relieved from having to manually install the printer each time the user connects to a server.
- It is noted that the term “install” has different meanings in the art. In a hardware context, “install” refers to physically connecting a peripheral device to a computer. In a software context, “install” refers to installing the software related to a connected peripheral device. If the peripheral device is a printer, a printer driver is installed and a printer queue is created. Unless otherwise noted, the term “install” as used herein means installing software that is related to a connected peripheral device. The peripheral device is physically connected to the client, but the software related to the peripheral device is installed on the server.
- In a server/client environment, there may be no means for automatic detection and installation of peripheral devices, such as a printer, that are attached at the client. If so, then a client user must manually install a printer driver to render the printer operational. The user interaction required to install and configure the printer on the server are performed at the client, but the printer is installed on the server.
- After the printer is manually installed on the server from the client, the portion of the server configuration that relates to the printer is sent to the client, where it is stored. In addition, printer parameter settings are sent to the server where they are returned to the client for storing with the server configuration information. When the server/client session in which the printer has been installed is terminated, the printer configuration on the server is deleted.
- It is also noted that the technology as described herein may be implemented in a server/client system in which client peripheral devices are automatically detected and installed according to the method described in the above-referenced co-pending application. Utilizing the present technology in such a system provides the advantages described herein.
- Subsequent installations are automatic, regardless of whether the client is connected to the same server or to a different server, or whether the initial installation was manual or automatic. When the connection is established, the client sends the cached server configuration and printer settings data to the server. The server utilizes this data to restore the printer configuration and printer settings to the state in which they were in prior to the termination of the session. The process is performed automatically, requiring little, if any, user interaction. Therefore, after the initial installation, the client user is provided with automatic printer installation on the client for that particular printer, and the previous printer settings are automatically restored. In addition, the installation and restoration are automatic even if the client (and printer) connects to a different server.
- The present invention is illustrated by way of example and not limitation in the figures of the accompanying drawings. The same numbers are used throughout the figures to reference like components and/or features.
-
FIG. 1 is a diagrammatic illustration of a server/client system. -
FIG. 2 is a block diagram of a server/client system. -
FIG. 3 is a flow diagram of a method for client-side caching of server configuration information and automatic installation of a peripheral device. -
FIG. 4 is a flow diagram of a method for client-side caching of printer parameter settings and updating same. -
FIG. 1 shows a server/client computer system 30 having aserver 32, afirst client 34 and asecond client 36 interconnected via anetwork 38. Theserver 32 and theclients network 38 so that theserver 32 and theclients network 38. Theclients 34, 26 each have adesktop server 32 and theclients - It is noted that, although the server/
client computer system 30 depicted inFIG. 1 has afirst client 34 and asecond client 36, there may be one to any number of clients connected to theserver 32. The number of clients that may be connected to a server is limited only by the architecture of a particular server. - The
server 32 is configured to provide a logically independent machine for eachclient network 38. That is, theserver 32 establishes a session for eachclient desktop client client clients desktop client server 32. While the user provides input to and receives output from theclient server 32. - The
network 38 provides a communications link between theserver 32 and theclients network 38 may be a local area network (LAN), a wide area network (WAN), the Internet, or the like, provided that it can accommodate server/client functionality. -
FIG. 2 shows a server/client system 50 having aserver 52 and aclient 54. Theserver 52 includes aprocessor 56 andmemory 58. Theserver 52 also has anetwork port 60, which facilitates access to thenetwork 38. Thenetwork port 60 may be implemented as a modem, network card, or other device that interfaces theserver 52 to thenetwork 38. - The
server 52 can be implemented as a common personal computer or other type of computer, such as a laptop computer, etc. Theserver 52 runs anoperating system 62 which is stored inmemory 58 and executes on theprocessor 56. Theoperating system 62 is a multitasking operating system such as a Windows® brand operating system from Microsoft Corporation (e.g., Windows® 98, Windows® 95, Windows® NT, or other derivative of Windows®)). However, other operating systems may be used. - The
server 52 has aprinting subsystem 64 implemented in theoperating system 62 stored inmemory 58. Theprinting subsystem 62 is used to direct all operations involving printers and printing, including installing printers, creating and managing printer queues, removing printers, uninstalling printers, etc. The printing subsystem includes aconfiguration tracking unit 66 that is configured to monitor server configuration with regard to client peripheral devices that are installed on theserver 52. This aspect of theprinting subsystem 64 will be discussed in greater detail below. - The
server 52 is shown having aprinter driver 70 and aprinter queue 72 installed and resident within thememory 58. It is noted, however, that theserver 52 will only include theprinter driver 70 and theprinter queue 72 when a printer has been connected to thesystem 50 and installed on theserver 52. Theprinter driver 70 is a printer-specific software program that provides an interface between a printer and theserver 52 and allows theserver 52 to provide print functions via a printer. When theprinter driver 70 is installed on theserver 52, theprinter queue 72 is created. Theprinter queue 72 accepts print jobs from theserver 52 and queues them for printing. It is noted that if the peripheral device is a device other than a printer, the printer driver will be a device driver for that peripheral device, if a device driver is required by the peripheral device. - The
server 52 may also include a redirectedprinter port 74. The redirectedprinter port 74 is a virtual port created by theserver 52 in the event that the server is unable to identify and install a compatible driver for a client-side printer. The redirectedprinter port 74 is exposed by the server and can be attached to a printer queue using standard printer queue creation techniques. - It is also noted that, although one
printer driver 70 and oneprinter queue 72 are shown in thememory 58, there may be more than one printer driver or more than oneprinter queue 72 stored in thememory 58—corresponding to different client sessions. Also, theprinter driver 70 and theprinter queue 72 shown are accessible only for the session established for theclient 54. Thememory 58 may contain other printer drivers and printer queues that are installed for other sessions executing on theserver 52. Printer drivers and printer queues installed for other sessions on theserver 52 are not available for access by theclient 54. - The
client 54 includesmemory 76, aprocessor 78, and an I/O port 80 having aprinter 82 connected thereto. Although theclient 54 is shown as having only one I/O port 80, it is noted that theclient 54 may include more than one I/O port. Theprinter 82 hasmultiple printer settings 84, such as paper size, paper orientation, printing quality, etc.Printer settings 84′ is a copy of theprinter settings 84 that are stored in thememory 76 of theclient 54 via a method that will be discussed in detail below. Thememory 76 also storesserver configuration information 86. Theserver configuration information 86 is data monitored by theconfiguration tracking unit 66 ofserver 52. - As previously noted, the
configuration tracking unit 66 ofserver 52 is configured to monitor server configuration information relating to client peripheral devices that are installed on theserver 52. In the illustrated example of a printer, such configuration information includes, but is not limited to, data associated with theprinter driver 70, theprinter queue 72, the redirectedprinter port 74, theprinter settings 84, the I/O port 80 to which theprinter 82 is connected, etc. - The server sends this
configuration information 86 to theclient 54, where it is stored inmemory 76. Theconfiguration information 86 related to the installation of theprinter 82 is therefore readily available in the event that theconfiguration information 86 is required to be restored on theserver 52. If theconfiguration information 86 subsequently needs to be restored on theserver 52, theconfiguration information 86 is simply transmitted from theclient 54 to theserver 52. - The
configuration tracking unit 66 is configured to detect new device installations, and can also detect when a peripheral device is removed from a system, and when a system user renames an I/O queue associated with a device. For example, if theprinter 82 is removed from the system, or if the client user wishes to manually delete theprinter queue 72 from thesystem 50, theclient 54 sends notification to theserver 52 to remove theprinter 82. In response, the server removes all data structures related to the printer 82 (e.g.,printer driver 70 and printer queue 72) from the server. The server will then send updatedserver configuration information 86 to theclient 54, where it is stored inmemory 76. When the updatedinformation 86 is stored in thememory 76 of theclient 54, it simply overwrites the old information. - Likewise, if a user renames the
printer queue 72, the server will send updatedserver configuration information 86 to theclient 54, where it is stored inmemory 76. - Similar to the
server 52, theclient 54 also has anetwork port 88 to facilitate access to thenetwork 38. Thenetwork port 88 may be implemented as a modem, network card, or other device which interfaces theclient 54 to thenetwork 38. -
FIG. 3 is a flow diagram depicting a method for client-side caching of server configuration information and printer settings, and for automatically installing a peripheral device upon subsequent connection to a server. The method is described with continuing reference toFIGS. 1 and 2 . - At
step 200 inFIG. 3 , theclient 54 sends a request to theserver 52 to install theprinter 82 on theserver 52. At this time, or immediately thereafter, theprinter settings 84 are also sent to theserver 52. When theserver 52 receives the install request from theclient 54, the server performs a manual installation of theprinter 82 on theserver 52 atstep 202. Manual installation refers to a client user being required to identify theprinter driver 70 associated with theprinter 82 as well as the I/O port 80 to which theprinter 82 is connected. The server prompts the user for this information through the I/O interface ofclient 54. - When the installation is complete, the
configuration tracking unit 66 of theprinting subsystem 64 sendsserver configuration information 86 to the client (step 204). Atstep 206, theclient 54 stores theserver configuration information 86 and theprinter settings 84 in thememory 76. - When the client session has concluded, the
client 54 is disconnected from the server 52 (step 208). Whenever theclient 54 is disconnected from theserver 52, all data structures associated with peripheral devices attached to theclient 52 are deleted from theserver 52. - At
step 210, theclient 54 is reconnected to theserver 52. It is noted that, although theclient 54 in this example is reconnected to theserver 52, theclient 54 may be connected to a different server (not shown) in another server/client system (not shown). The methodology is the same whether theclient 54 is connected to theserver 52 or to a different server (not shown). This is another advantage to the present invention in that, once theprinter 82 is manually installed on theserver 52, subsequent installations—whether they be on theserver 52 or on another server (not shown)—are automatic. - Upon reconnection with the
server 52, theclient 54 transmits theserver configuration information 86 that was stored during the previous connection, to theserver 52. Theprinter settings 84 are also sent to theserver 52. Atstep 212, theserver 52 utilizes theserver configuration information 86 received from theclient 54 to automatically install theprinter 82 on theserver 52. This automatic installation is performed with minimal user interaction. - Once the
printer 82 has been automatically installed on the server, theconfiguration tracking unit 66 of theserver 52 sends theserver configuration information 86 and theprinter settings 84′ to the client 54 (step 214). Upon receipt of this data, atstep 216, theclient 52 stores theserver configuration information 86 and theprinter settings 84 inmemory 76. -
FIG. 4 is a flow diagram depicting a method for client-side caching of server configuration information and printer settings, and for automatically updating peripheral device settings on the server. The method is described with continuing reference toFIG. 1 andFIG. 2 . It is noted that the method ofFIG. 4 is performed contemporaneously with the method described inFIG. 3 . However, for discussion purposes, the methods are described separately. - At
step 300 inFIG. 4 , theclient 54 sends a request to theserver 52 to install theprinter 82 on theserver 52. At this time, or immediately thereafter, theprinter settings 84 are also sent to theserver 52. When theserver 52 receives the install request from theclient 54, the server performs a manual installation of theprinter 82 on theserver 52 atstep 302. Manual installation refers to a client user being required to identify theprinter driver 70 associated with theprinter 82 as well as the I/O port 80 to which theprinter 82 is connected. - When the installation is complete, the
configuration tracking unit 66 of theprinting subsystem 64 sendsserver configuration information 86 to the client (step 304). Atstep 306, theclient 54 stores theserver configuration information 86 and theprinter settings 84′ in thememory 76. - At
step 308, thesystem 50 detects if the user makes any changes to theprinter settings 84. If so, the changedprinter settings 84 are sent to theserver 52 atstep 310. Atstep 314, theserver 52 receives the updatedprinter settings 84. The updatedprinter settings 84 are sent to theclient 54 atstep 316. Theclient 54 then stores the updatedprinter settings 84 atstep 316. - As described in the discussion for
FIG. 3 , theprinter settings 84′ are sent from theclient 54 to theserver 52 when theclient 54 is reconnected to theserver 52. By updating the cachedprinter settings 84′ as they are updated by the user, the desiredprinter settings 84 are always restored when theclient 54 is reconnected to theserver 52. - The system and method as described herein provide a user with a way to automatically install peripheral devices on a server after they have been redirected on the server one time from a client. In addition, the user's device settings preferences are preserved from session to session, thereby saving the user from having to manually update these settings whenever a server-client connection is established. Once a manual installation has been performed, subsequent installations are automatic, whether the client is reconnected to the same server, or to a different server.
- Although the invention has been described in language specific to structural features and/or methodological steps, it is to be understood that the invention defined in the appended claims is not necessarily limited to the specific features or steps described. Rather, the specific features and steps are disclosed as preferred forms of implementing the claimed invention.
Claims (34)
1-46. (Cancelled).
47. A system that facilitates installing a peripheral device, comprising:
a first computer that executes an application and has software installed thereupon related to a peripheral device, which is utilized with the application;
a second computer that is coupled to the peripheral device and stores information, which is related to the installation of the peripheral device, that is received from the first computer, the information is utilized to reinstall the peripheral device.
48. The system of claim 47 , the first computer deletes the installed software upon disconnection with the second computer.
49. The system of claim 48 , further comprising:
the second computer transmits the information to the first computer; and
the first computer receives the information and utilizes the information to reinstall the software related to the peripheral device.
50. The system of claim 48 , further comprising:
the second computer transmits the information to a disparate third computer; and
the disparate third computer receives the information and utilizes the information to install the software related to the peripheral device.
51. The system of claim 47 , the information is utilized to automatically reinstall the peripheral device.
52. The system of claim 47 , the information is at least one of data associated with a driver, a queue, settings of the peripheral device, an I/O port of the second computer that communicates with the peripheral device, and a redirected peripheral port of the first computer.
53. The system of claim 47 , further comprising:
the first computer retransmits updated information upon alteration of peripheral device settings; and
the second computer receives and stores the updated information.
54. The system of claim 47 , the peripheral device comprises a printer.
55. The system of claim 47 , the second computer is coupled to the peripheral device via at least one of a wired connection and a wireless connection.
56. The system of claim 47 , the first computer comprises a configuration tracking unit that monitors a configuration of the first computer related to the installed peripheral device.
57. The system of claim 47 , the software related to the peripheral device is initially installed automatically on the first computer.
58. The system of claim 47 , the software related to the peripheral device is initially installed manually on the first computer via the second computer.
59. A system that facilitates restoring configuration information of a peripheral device on a first computer, comprising:
a configuration tracking unit that detects installation of a peripheral device on the first computer, the peripheral device is coupled to a disparate computer and is utilized with an application that executes via the first computer; and
a transmitter that sends configuration information associated with the installation to the disparate computer where the configuration information is stored.
60. The system of claim 59 , the configuration tracking unit further detects when the peripheral device is removed and facilitates uninstalling of the peripheral device from the computer.
61. The system of claim 60 , the configuration tracking unit further detects reinstallation of the peripheral device and receives the configuration information stored on the disparate computer, which is utilized for reinstallation.
62. The system of claim 59 , the configuration tracking unit further identifies alterations associated with the installation of the peripheral device on the first computer.
63. The system of claim 62 , the transmitter further sends updated configuration information to the disparate computer to be stored.
64. A system that facilitates installing a peripheral device, comprising:
an I/O port that couples to a peripheral device that is utilized with an application which is executed on a disparate computer;
a receiver that obtains configuration information related to the peripheral device; and
a data store that stores the configuration information.
65. The system of claim 64 , further comprising a transmitter that sends the configuration information to the disparate computer to reinstall the peripheral device.
66. The system of claim 64 , further comprising a transmitter that sends the configuration information to a second disparate computer to install the peripheral device.
67. The system of claim 64 , the receiver further obtains updated configuration information when alterations are made to the configuration of the peripheral device.
68. A system that facilitates installation of a peripheral device, comprising:
means for transmitting configuration information, which is related to a peripheral device, from a first computer that executes an application that utilizes the peripheral device to a second computer that is coupled to the peripheral device; and
means for storing the configuration information on the second computer.
69. The system of claim 68 , further comprising means for uninstalling the peripheral device from the first computer.
70. The system of claim 69 , further comprising:
means for transmitting the configuration information from the second computer to the first computer; and
means for reinstalling the peripheral device on the first computer utilizing the configuration information.
71. The system of claim 70 , further comprising:
means for transmitting the configuration information from the second computer to a third computer; and
means for installing the peripheral device on the third computer utilizing the configuration information.
72. The system of claim 71 , further comprising means for updating the configuration information stored on the second computer via retransmitting the altered configuration information.
73. A method for facilitating installation of a peripheral device, comprising:
installing support on a first computer for a peripheral device attached at a second computer;
transmitting configuration information related to the peripheral device from the first computer to the second computer; and
storing the transmitted configuration information at the second computer.
74. The method of claim 73 , further comprising transmitting the configuration information from the second computer to the first computer upon reconnection of the second computer and the first computer.
75. The method of claim 73 , further comprising:
disconnecting the second computer from the first computer;
establishing a new connection between the second computer and the first computer;
transmitting the configuration information stored at the second computer to the first computer; and
automatically restoring the support for the peripheral device at the first computer utilizing the transmitted configuration information.
76. The method of claim 73 , further comprising:
disconnecting the second computer from the first computer;
establishing a new connection between the second computer and a disparate third computer;
transmitting the configuration information stored at the second computer to the disparate third computer; and
automatically installing support for the peripheral device on the disparate third computer utilizing the transmitted configuration information.
77. The method of claim 73 , further comprising:
transmitting peripheral device settings of the peripheral device from the second computer to the first computer upon the establishment of a connection between the second computer and the first computer;
transmitting the peripheral device settings from the first computer to the second computer together with the configuration information; and
storing the peripheral device settings at the second computer.
78. The method of claim 77 , further comprising retransmitting the peripheral device settings from the second computer to the first computer upon alteration of the peripheral device settings.
79. The method of claim 73 , further comprising:
uninstalling support for the peripheral device;
transmitting updated configuration information from the first computer to the second computer, the updated configuration information indicates that support for the peripheral device at the first computer has been uninstalled; and
removing the stored configuration information at the first computer.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/972,641 US20050060367A1 (en) | 1999-12-09 | 2004-10-25 | Client side caching of printer configuration |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/458,369 US6842766B2 (en) | 1999-12-09 | 1999-12-09 | Client side caching of printer configuration |
US10/972,641 US20050060367A1 (en) | 1999-12-09 | 2004-10-25 | Client side caching of printer configuration |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/458,369 Continuation US6842766B2 (en) | 1999-12-09 | 1999-12-09 | Client side caching of printer configuration |
Publications (1)
Publication Number | Publication Date |
---|---|
US20050060367A1 true US20050060367A1 (en) | 2005-03-17 |
Family
ID=23820515
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/458,369 Expired - Lifetime US6842766B2 (en) | 1999-12-09 | 1999-12-09 | Client side caching of printer configuration |
US10/972,641 Abandoned US20050060367A1 (en) | 1999-12-09 | 2004-10-25 | Client side caching of printer configuration |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/458,369 Expired - Lifetime US6842766B2 (en) | 1999-12-09 | 1999-12-09 | Client side caching of printer configuration |
Country Status (1)
Country | Link |
---|---|
US (2) | US6842766B2 (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020038389A1 (en) * | 2000-09-26 | 2002-03-28 | Shigeru Fujita | Client/server system, server and client |
US20060159097A1 (en) * | 2004-12-17 | 2006-07-20 | Infonox On The Web | Control and recruitment of client peripherals from server-side software |
US20060192999A1 (en) * | 2005-02-25 | 2006-08-31 | Brother Kogyo Kabushiki Kaisha | Device information management system, computer and program |
US20080201485A1 (en) * | 2007-02-20 | 2008-08-21 | Microsoft Corporation | Printer user interface redirection over a terminal services session |
US20140222989A1 (en) * | 2013-02-04 | 2014-08-07 | Ricoh Company, Ltd. | Management of device management units |
Families Citing this family (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1187058A3 (en) | 2000-08-30 | 2003-01-02 | Seiko Epson Corporation | Printing apparatus, data storage medium, interface device, printer control method, and interface control method |
JP2002073304A (en) * | 2000-09-05 | 2002-03-12 | Minolta Co Ltd | Data processing device, print setting method and storage medium |
CN100334577C (en) | 2000-11-01 | 2007-08-29 | 福来西奥德技术公司 | System and method for device-to-device pervasive digital output |
US7609402B2 (en) | 2001-01-19 | 2009-10-27 | Flexiworld, Inc. | Methods for universal data output |
US10915296B2 (en) | 2000-11-01 | 2021-02-09 | Flexiworld Technologies, Inc. | Information apparatus that includes a touch sensitive screen interface for managing or replying to e-mails |
US10860290B2 (en) | 2000-11-01 | 2020-12-08 | Flexiworld Technologies, Inc. | Mobile information apparatuses that include a digital camera, a touch sensitive screen interface, support for voice activated commands, and a wireless communication chip or chipset supporting IEEE 802.11 |
AU2002239325A1 (en) | 2000-11-20 | 2002-05-27 | Flexiworld Technologies, Inc. | Systems and methods for mobile and pervasive output |
DE10101805A1 (en) * | 2001-01-17 | 2002-07-18 | Siemens Ag | Networks of switches, programmable devices, PCs or measurement transformers having distributed storage of network parameters and configuration details, so that if a component is replaced or repaired it is readily reconfigured |
JP2002215353A (en) * | 2001-01-19 | 2002-08-02 | Ricoh Co Ltd | Printing processing system |
JP2003131839A (en) * | 2001-10-29 | 2003-05-09 | Canon Inc | Network system, information processing device, information processing method, and control program |
US20030088793A1 (en) * | 2001-11-06 | 2003-05-08 | Parry Travis J. | Managing customized menus across multiple imaging devices |
US7373411B2 (en) * | 2002-02-01 | 2008-05-13 | Hewlett-Packard Development Company, L.P. | Configuration information generation system and method |
US20030195952A1 (en) * | 2002-04-15 | 2003-10-16 | Henry Steven G. | Digital transmitter device configuration |
US20040049560A1 (en) * | 2002-09-09 | 2004-03-11 | Shudong Zhou | Method and apparatus for configuring a computer system to operate with perhiperal devices |
US20040054762A1 (en) * | 2002-09-16 | 2004-03-18 | Parry Travis J. | Distribution of operational instructions for networked devices |
US20040107279A1 (en) * | 2002-11-25 | 2004-06-03 | Brother Kogyo Kabushiki Kaisha | Network system |
US7365872B2 (en) * | 2003-01-03 | 2008-04-29 | Microsoft Corporation | Client computer system, method and computer readable medium comprising executable instructions for rendering printable documents in a native printer language on the network |
US20050012951A1 (en) * | 2003-07-18 | 2005-01-20 | Madril Robert J. | Printer driver management |
US7350214B2 (en) * | 2003-08-13 | 2008-03-25 | Hewlett-Packard Development Company, L.P. | Printer driver initialization |
US20050068558A1 (en) * | 2003-09-30 | 2005-03-31 | Jianxin Wang | Method and system to automatically update in real-time a printer driver configuration |
JP2005267089A (en) * | 2004-03-17 | 2005-09-29 | Fuji Xerox Co Ltd | Driver management method and device and program |
US7505168B2 (en) * | 2004-12-30 | 2009-03-17 | Microsoft Corporation | Distributed client side printing methods and systems |
US7730038B1 (en) * | 2005-02-10 | 2010-06-01 | Oracle America, Inc. | Efficient resource balancing through indirection |
US7890636B2 (en) * | 2006-06-28 | 2011-02-15 | Cisco Technology, Inc. | Application integrated gateway |
JP4764271B2 (en) * | 2006-06-30 | 2011-08-31 | 株式会社リコー | Image forming apparatus, tray ID assigning method thereof, program, and recording medium |
US20080204805A1 (en) * | 2007-02-28 | 2008-08-28 | Konica Minolta Systems Laboratory, Inc. | Automatic detection of user preference for printer setting |
US8943551B2 (en) | 2008-08-14 | 2015-01-27 | Microsoft Corporation | Cloud-based device information storage |
KR20120109665A (en) * | 2011-03-23 | 2012-10-08 | 삼성전자주식회사 | Method, apparatus and system for information push service based on wirless lan access point |
US8789179B2 (en) | 2011-10-28 | 2014-07-22 | Novell, Inc. | Cloud protection techniques |
US9032106B2 (en) * | 2013-05-29 | 2015-05-12 | Microsoft Technology Licensing, Llc | Synchronizing device association data among computing devices |
US9680772B2 (en) | 2013-09-09 | 2017-06-13 | Vmware, Inc. | System and method for managing configuration of virtual switches in a virtual machine network |
US9641389B2 (en) * | 2013-09-09 | 2017-05-02 | Vmware, Inc. | Method and system for recovering from network disconnects by cloning a virtual port |
US9063683B2 (en) * | 2013-10-28 | 2015-06-23 | Xerox Corporation | Storing print options and print accounting credentials when printing via e-mail |
US9986040B2 (en) | 2015-07-21 | 2018-05-29 | Amadeus S.A.S. | Communications management system with a separate peripherals server |
US10250437B2 (en) * | 2015-10-29 | 2019-04-02 | Arista Networks, Inc. | Method and system for configuring network devices |
EP3929740A1 (en) * | 2020-06-26 | 2021-12-29 | Siemens Aktiengesellschaft | Method for orchestrating a container-based application on a terminal |
Citations (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5580177A (en) * | 1994-03-29 | 1996-12-03 | Hewlett-Packard Company | Printer/client network with centrally updated printer drivers and printer status monitoring |
US5692111A (en) * | 1994-10-05 | 1997-11-25 | Microsoft Corporation | Automatic installation of printers in a distributed environment |
US5761505A (en) * | 1995-11-17 | 1998-06-02 | Hewlett-Packard Co. | System and method for automatically and reliably managing global resources in a computer network |
US5809287A (en) * | 1994-09-08 | 1998-09-15 | Compaq Computer Corporation | Automatic computer upgrading |
US6003065A (en) * | 1997-04-24 | 1999-12-14 | Sun Microsystems, Inc. | Method and system for distributed processing of applications on host and peripheral devices |
US6012103A (en) * | 1997-07-02 | 2000-01-04 | Cypress Semiconductor Corp. | Bus interface system and method |
US6018769A (en) * | 1992-04-16 | 2000-01-25 | Hitachi, Ltd. | Integrated network installation system |
US6131134A (en) * | 1998-05-12 | 2000-10-10 | Primax Electronics Ltd. | Hot plug-and-play converter of a universal serial bus interface |
US6154787A (en) * | 1998-01-21 | 2000-11-28 | Unisys Corporation | Grouping shared resources into one or more pools and automatically re-assigning shared resources from where they are not currently needed to where they are needed |
US6201611B1 (en) * | 1997-11-19 | 2001-03-13 | International Business Machines Corporation | Providing local printing on a thin client |
US6251014B1 (en) * | 1999-10-06 | 2001-06-26 | International Game Technology | Standard peripheral communication |
US6288790B1 (en) * | 1998-05-15 | 2001-09-11 | International Business Machines Corporation | Mobility support for printing |
US6301012B1 (en) * | 1998-04-24 | 2001-10-09 | Hewlett-Packard Company | Automatic configuration of a network printer |
US6311165B1 (en) * | 1998-04-29 | 2001-10-30 | Ncr Corporation | Transaction processing systems |
US6334178B1 (en) * | 1998-08-31 | 2001-12-25 | International Business Machines Corporation | Multiprocessing system with automated propagation of changes to centrally maintained configuration settings |
US6345319B2 (en) * | 1998-08-26 | 2002-02-05 | Inventec Corporation | Method for installing plug-n-play device by copying INF files to a corresponding directory and deleting device ID and all related device class of an original device |
US6424424B1 (en) * | 1999-01-19 | 2002-07-23 | Hewlett-Packard Company | Method and apparatus for automatic installation of shared printers over a network |
US6463537B1 (en) * | 1999-01-04 | 2002-10-08 | Codex Technologies, Inc. | Modified computer motherboard security and identification system |
US6658498B1 (en) * | 1999-12-08 | 2003-12-02 | International Business Machines Corporation | Method, system, program, and data structures for reconfiguring output devices in a network system |
US7016060B1 (en) * | 1999-12-08 | 2006-03-21 | International Business Machines Corporation | Method, system, and program for reconfiguring logical printers in a network printing system |
-
1999
- 1999-12-09 US US09/458,369 patent/US6842766B2/en not_active Expired - Lifetime
-
2004
- 2004-10-25 US US10/972,641 patent/US20050060367A1/en not_active Abandoned
Patent Citations (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6018769A (en) * | 1992-04-16 | 2000-01-25 | Hitachi, Ltd. | Integrated network installation system |
US5580177A (en) * | 1994-03-29 | 1996-12-03 | Hewlett-Packard Company | Printer/client network with centrally updated printer drivers and printer status monitoring |
US5809287A (en) * | 1994-09-08 | 1998-09-15 | Compaq Computer Corporation | Automatic computer upgrading |
US5692111A (en) * | 1994-10-05 | 1997-11-25 | Microsoft Corporation | Automatic installation of printers in a distributed environment |
US5761505A (en) * | 1995-11-17 | 1998-06-02 | Hewlett-Packard Co. | System and method for automatically and reliably managing global resources in a computer network |
US6003065A (en) * | 1997-04-24 | 1999-12-14 | Sun Microsystems, Inc. | Method and system for distributed processing of applications on host and peripheral devices |
US6012103A (en) * | 1997-07-02 | 2000-01-04 | Cypress Semiconductor Corp. | Bus interface system and method |
US6201611B1 (en) * | 1997-11-19 | 2001-03-13 | International Business Machines Corporation | Providing local printing on a thin client |
US6154787A (en) * | 1998-01-21 | 2000-11-28 | Unisys Corporation | Grouping shared resources into one or more pools and automatically re-assigning shared resources from where they are not currently needed to where they are needed |
US6301012B1 (en) * | 1998-04-24 | 2001-10-09 | Hewlett-Packard Company | Automatic configuration of a network printer |
US6311165B1 (en) * | 1998-04-29 | 2001-10-30 | Ncr Corporation | Transaction processing systems |
US6131134A (en) * | 1998-05-12 | 2000-10-10 | Primax Electronics Ltd. | Hot plug-and-play converter of a universal serial bus interface |
US6288790B1 (en) * | 1998-05-15 | 2001-09-11 | International Business Machines Corporation | Mobility support for printing |
US6345319B2 (en) * | 1998-08-26 | 2002-02-05 | Inventec Corporation | Method for installing plug-n-play device by copying INF files to a corresponding directory and deleting device ID and all related device class of an original device |
US6334178B1 (en) * | 1998-08-31 | 2001-12-25 | International Business Machines Corporation | Multiprocessing system with automated propagation of changes to centrally maintained configuration settings |
US6463537B1 (en) * | 1999-01-04 | 2002-10-08 | Codex Technologies, Inc. | Modified computer motherboard security and identification system |
US6424424B1 (en) * | 1999-01-19 | 2002-07-23 | Hewlett-Packard Company | Method and apparatus for automatic installation of shared printers over a network |
US6251014B1 (en) * | 1999-10-06 | 2001-06-26 | International Game Technology | Standard peripheral communication |
US6658498B1 (en) * | 1999-12-08 | 2003-12-02 | International Business Machines Corporation | Method, system, program, and data structures for reconfiguring output devices in a network system |
US7016060B1 (en) * | 1999-12-08 | 2006-03-21 | International Business Machines Corporation | Method, system, and program for reconfiguring logical printers in a network printing system |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020038389A1 (en) * | 2000-09-26 | 2002-03-28 | Shigeru Fujita | Client/server system, server and client |
US20060159097A1 (en) * | 2004-12-17 | 2006-07-20 | Infonox On The Web | Control and recruitment of client peripherals from server-side software |
US7864702B2 (en) * | 2004-12-17 | 2011-01-04 | Infonox On The Web | Control and recruitment of client peripherals from server-side software |
US20060192999A1 (en) * | 2005-02-25 | 2006-08-31 | Brother Kogyo Kabushiki Kaisha | Device information management system, computer and program |
US8305601B2 (en) * | 2005-02-25 | 2012-11-06 | Brother Kogyo Kabushiki Kaisha | Device information management system, computer and program |
US20080201485A1 (en) * | 2007-02-20 | 2008-08-21 | Microsoft Corporation | Printer user interface redirection over a terminal services session |
US7949741B2 (en) * | 2007-02-20 | 2011-05-24 | Microsoft Corporation | Printer user interface redirection over a terminal services session |
US20140222989A1 (en) * | 2013-02-04 | 2014-08-07 | Ricoh Company, Ltd. | Management of device management units |
Also Published As
Publication number | Publication date |
---|---|
US20030115256A1 (en) | 2003-06-19 |
US6842766B2 (en) | 2005-01-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6842766B2 (en) | Client side caching of printer configuration | |
US7600227B2 (en) | Automatic detection and installation of client peripheral devices by a server | |
US6301012B1 (en) | Automatic configuration of a network printer | |
US6473783B2 (en) | Method and apparatus for sharing peripheral devices over a network | |
US5881213A (en) | Deferred printing | |
US6701357B1 (en) | Server appliance | |
US6681392B1 (en) | Method and apparatus for remote peripheral software installation | |
US7478423B2 (en) | Protected execution environments within a computer system | |
US6892381B2 (en) | Updating a device driver with mechanism employing two files one containing changes (variable file) and a file containing unchanged code (invariable file) downloading both to update | |
US8161198B2 (en) | Uninstalling drivers of a peripheral device | |
US7003767B2 (en) | System and method for remotely updating software applications | |
US20030160993A1 (en) | Method for printing to a networked printer | |
US6788429B1 (en) | Remote print queue management | |
EP0858022B1 (en) | Method of providing a user interface for a multifunction peripheral device and a multifunction peripheral device. | |
US20010029530A1 (en) | System and method of managing resource in network system | |
US7401113B1 (en) | Printer driver identification for a remote printer | |
JP2001051810A (en) | Method for printer driver, update management, printer, and computer network system | |
US20030229694A1 (en) | Method of remotely controlling computers via network and architecture thereof | |
US10091380B1 (en) | Systems and methods of implementing universal print drivers in a windows print architecture | |
US8095925B2 (en) | Seamless network installation of device drivers | |
US20100165391A1 (en) | Information processing apparatus, information processing method, and information processing system | |
KR20010096738A (en) | Central Control Type Computer Remote Management Method using Network | |
JP2001296976A (en) | Network printer system | |
US20090015847A1 (en) | Printer-initiated printing method and apparatus | |
JP3862463B2 (en) | Information processing apparatus, network system, printing apparatus, device information registration method for network system, and computer-readable storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: MICROSOFT CORPORATION, WASHINGTON Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:BROCKWAY, TAD DENNIS;APPIAH, MADAN MOHAN R.;REEL/FRAME:015486/0810 Effective date: 20000104 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |
|
AS | Assignment |
Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC, WASHINGTON Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MICROSOFT CORPORATION;REEL/FRAME:034766/0001 Effective date: 20141014 |