Virtual device driver

Electrical computers and digital processing systems: interprogra – Device driver communication

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C719S327000

Reexamination Certificate

active

06785894

ABSTRACT:

BACKGROUND OF THE INVENTION
1. Field of the Invention
This invention relates to the field of computer systems.
Portions of the disclosure of this patent document contain material that is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure as it appears in the Patent and Trademark Office file or records, but otherwise reserves all copyright rights whatsoever. Sun, Sun Microsystems, the Sun logo, Java, JavaBeans, Hotjava and all Java-based trademarks and logos are trademarks or registered trademarks of Sun Microsystems, Inc. in the United States and other countries.
2. Background Art
Computer systems often include additional devices used to provide additional functionality. These devices, often called “peripheral” devices, can include keyboards, printers, scanners, network interface and graphics cards, modems, monitors, cameras, and sound input devices. Generally, a device driver is used to control the peripheral device. In some network environments, the traditional device driver may not be appropriate for an attached device. This problem can be understood by a review of peripheral devices.
Peripheral devices are often connected to a computer system through an expansion bus. An expansion bus allows the processor of a computer system (via software running on the processor), main memory, and other hardware associated with a computer system to control peripheral hardware devices external to the computer system. An expansion bus consists of conductors for data and control signals, along with hardware support logic chips and possibly firmware. There are a variety of expansion buses such as ISA (Industry Standard Architecture), PCI (Peripheral Component Interconnect), S-Bus, VME bus, etc. Each expansion bus defines a certain protocol by which devices that are on the bus are accessed.
A device driver is software used to control a peripheral device that is coupled with the computer system on the bus. A device driver is a program that controls a particular type of device that is attached to your computer. There are device drivers for printers, displays, CD-ROM readers, diskette drives, and so on. Many device drivers are built into an operating system. New device drivers are needed for devices for which the operating system does not already have drivers. A device driver converts the more general input/output instructions of the operating system to messages that the device type can understand. In many computer systems, device drivers exist as a dynamic link library (DLL) file. Since misprogramming of a peripheral on a bus can cause loss of service or system failure, it is customary for device drivers to be run in a protected, or kernel, mode.
FIG. 1
illustrates symbolically the interrelation of devices, device drivers, and application programs. Devices, such as devices A and B, communicate through a bus (such as an expansion bus) to system software. The system software includes device drivers (device driver A and device driver B, respectively) implemented in the system software kernel. Applications can access the devices through the system software kernel and the appropriate device drivers.
A problem can arise where, in some network environments, a peripheral device may not be coupled directly to the computer system through the bus, but rather through a network connection. In those cases, traditional device drivers may not operate correctly to permit operation of the peripheral device, however, the only interface that is provided by the operation system is through a device driver.
SUMMARY OF THE INVENTION
A pseudo device driver is provided for use by an operation system in a virtual desktop computing environment. Where traditional device drivers do not operate correctly to permit operation of a peripheral device, and the only interface that is provided is through a device driver, the present invention provides a virtual device driver to act as an adapter to couple an application to the peripheral device. The pseudo device driver has two ports, a master port that is opened by the driver application and a slave port accessed by a program. The two ports provide the functionality necessary for supporting the remote device on the terminal. When a program accesses a device coupled to the terminal, the program opens the pseudo device driver's slave port and proceeds as if the device were coupled to a local bus.


REFERENCES:
patent: 5452460 (1995-09-01), Distelberg et al.
patent: 5809303 (1998-09-01), Senator
W. Richard Stevens, Advanced Programming in the Unix Environment 1992, Addison-Wesley Publishing Company, pp. 325 328, 394-402, 615-617 and 631-357.

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Virtual device driver does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Virtual device driver, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Virtual device driver will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3354748

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.