Electrical computers and digital processing systems: multicomput – Computer-to-computer data routing – Least weight routing
Reexamination Certificate
1998-08-27
2002-05-07
Courtenay, III, St. John (Department: 2151)
Electrical computers and digital processing systems: multicomput
Computer-to-computer data routing
Least weight routing
C717S152000, C710S018000
Reexamination Certificate
active
06385663
ABSTRACT:
BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates, in general, to the field of computer operating systems. More particularly, the present invention relates to a device input/output (“I/O”) monitoring mechanism serving as a pseudo-device driver, or interface, between a computer operating system kernel and a device driver.
2. Relevant Background
Device drivers comprise that portion of a computer operating system that contains hardware specific knowledge of a particular peripheral device. Such peripheral devices may include, for example, computer mass storage devices such as disk drives, mirrored storage devices, redundant arrays of inexpensive disks (“RAID”), hierarchical storage devices, virtual disks and the like. As a general rule, a particular device driver may, or may not, provide statistics back to the operating system kernel on device I/O operations according to its own predetermined metrics. Consequently, comparison of I/O statistics between devices may be rendered meaningless, very difficult or impossible due, respectively, to the possibly differing assumptions in the driver's metrics, specific implementations or actual unavailability of the data.
To this end, while pseudo-device drivers for interfacing between an operating system kernel and a device driver have previously been developed, inter alia, to monitor device I/O, they have been generally designed with a specific piece of hardware or software implementation in mind. That is, they have been specialized “piggy-back” drivers for coupling to a particular storage device or to traces generated from modified operating system software. As a result, specific knowledge of some portion of the hardware/software system being monitored was required in order to implement them.
SUMMARY OF THE INVENTION
The device I/O monitoring mechanism of the present invention obviates the necessity of implementing specific pseudo-device drivers for various peripheral devices and provides a standard interface between, for example, computer mass storage devices and a computer operating system. As a consequence, it is of especial utility in the measurement of general device I/O performance and can be utilized in conjunction with “opaque” (or “black box”) devices without specific knowledge of their internal implementation.
More specifically, the device I/O monitoring mechanism of the present invention allows I/O statistics to be presented to application-level software operating in conjunction with a computer operating system which facilitates the identification of storage device “hot spots” within metadevices and sub-metadevices. The mechanism of the present invention is usable across a wide range of storage device peripheral hardware and device drivers and allows user-level program code to readily determine the associated physical sub-component.
In order to effectuate the foregoing, disclosed herein is a peripheral device I/O monitor for a computer having an operating system with a device statistics presentation mechanism resident thereon and also including a hardware abstraction layer for interfacing to an associated peripheral device. The peripheral device includes a device driver operatively responsive to the hardware abstraction layer of the computer operating system. The device I/O monitor comprises a pseudo-device driver operatively interposed between the hardware abstraction layer of the computer operating system and the device driver and itseif presents corresponding first and second pseudo-device driver hardware abstraction layers. The first pseudo-device driver hardware abstraction layer is coupled to the computer operating system and the second pseudo-device driver hardware abstraction layer is coupled to the device driver.
In accordance with a method of the present invention, I/O metrics for a peripheral device coupled to a computer may be determined wherein the computer includes a computer operating system incorporating a device driver for the peripheral device. The method comprises the steps of: intercepting one or more selected calls from the computer operating system to the device driver; providing for initiating a call back to a portion of the operating system to record an occurrence of the one or more selected calls; and providing for passing the one or more selected calls to the device driver. In accordance with a more specific method, the method may comprise the additional steps of: further intercepting one or more selected device calls from the device driver to the computer operating system; further initiating an additional call back to the operating system to record an occurrence of the one or more selected device calls; and further passing the one or more device calls to the operating system. The one or more selected calls may advantageously be “read”, “write” or “strategy” operations when utilized in conjunction with a UNIX® System V compliant operating system.
REFERENCES:
patent: 3748650 (1973-07-01), Garcia et al.
patent: 5287504 (1994-02-01), Carpenter et al.
patent: 5548784 (1996-08-01), Easley, Jr. et al.
patent: 5586268 (1996-12-01), Chen et al.
patent: 5628029 (1997-05-01), Evoy
patent: 5680620 (1997-10-01), Ross
patent: 5784615 (1998-07-01), Lipe et al.
patent: 5874960 (1999-02-01), Mairs et al.
patent: 0 670 539 (1995-09-01), None
Mashlan, Robert, “Capturing Hot Keys in Windows,” Windows/DOS Developer's Journal, pp(7), Jan. 1995.*
Dinallo, Chris, “Understanding Audio Device Driver Architecture”, OS/2 Magazine, pp. (1-7), May 1994.
Mery, David, “Serial killer”, EXE: The Software Developers Magazine, p. (5), Oct. 1994.
Bonneau, “A VxD to Monitor DOS Output”, Windows Developer Journal, p. (33), May 1994.
Mitchell, Stan, “Monitoring Windows 95 File Activity in Ring O”. Windows Developer's Journal, p. (23), Jul. 1995.
Bacon, D.F., “File system Measurements and Their Application to the Design of Efficient Operation Logging Algorithms,” Proceedings of the Symposium on Reliable Distributed Systems, Sep. 30-Oct. 2, 1991, No. Symp. 10, Sep. 30, 191, Institute of Electrical and Electronics Engineers, pp. 21-30.
“Diagnostic Kernel Extension.” IBM Technical Disclosure Bulletin, vol. 35, No. 5, Oct. 1, 1992, pp. 137-138.
“Poll and Select Function for Cascaded Device Drivers on a UNIX Operating System,” IBM Technical Disclosure Bulletin, vol. 34, No. 10A, Mar. 1, 1992, pp. 124-125.
Courtenay III St. John
Hogan & Hartson LLP
Sun Microsystems Inc.
LandOfFree
Device I/O monitoring mechanism for a computer operating system does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Device I/O monitoring mechanism for a computer operating system, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Device I/O monitoring mechanism for a computer operating system will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2859948