Method and apparatus for monitoring input/output...

Electrical computers and digital data processing systems: input/ – Input/output data processing – Peripheral monitoring

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C710S036000, C710S060000

Reexamination Certificate

active

06381656

ABSTRACT:

TECHNICAL FIELD
The invention relates to a computer input/output (“I/O”) subsystem monitor for testing, debugging and performance analysis and, more particularly, to I/O subsystem monitoring in computing systems using an intelligent I/O (“I
2
O”) architecture.
BACKGROUND OF THE INVENTION
Personal computers have evolved considerably since their widespread introduction in the late 1970's. Personal computers presently perform many functions that are not strictly “personal” and increasingly undertake ever more sophisticated tasks. Personal computers are even being applied in arenas traditionally occupied by mainframe computers and UNIX-based workstations. As personal computers continue growing in processing power, they are increasingly finding use as servers in computer networks. A server is essentially a personal computer having larger amounts of local memory than a conventional desktop personal computer that allow the server to process greater volumes of input/output (“I/O”) than a conventional desktop personal computer. Input and output comprise two of the three functions performed by computers (the other is processing). I/O describes the interrelated tasks of providing information to the computer (input) and providing the results of processing to the user (output).
Server I/O predominantly consists of network and disk drive I/O activity, although not strictly limited to these two tasks. A network comprises a group of computers and associated devices connected together by communications facilities, such as those provided by a server. A disk drive may serve as both an input device and an output device since it can both provide information to the computer and receive information from the computer. A device driver comprises a software component that permits a computer to communicate with a device, such as a specific manufacturer's disk drive.
In a conventional personal computer architecture, each I/O request activates an I/O interrupt in the personal computer's central processing unit (“CPU”) that causes the CPU to stop its present task, flush its instruction pipeline and then service the I/O interrupt. The CPU performs all of the work in a personal computer, interpreting and executing received programming instructions. At any given time, the CPU's instruction pipeline contains programming instructions in various stages of being fetched, decoded, and processed. A simple disk drive I/O access may invoke multiple I/O interrupts. While a single I/O interrupt will typically not produce noticeable performance degradation in a personal computer, a heavy amount of I/O interrupts, such as commonly experienced by a server, can provoke severe performance degradation. Performance degradation may be exacerbated in some recently developed CPUs, such as the Pentium® processor, having deeply pipelined structures that were not designed for optimum performance with frequent I/O interrupts.
To reduce the performance degradation due to heavy I/O interrupt activity in personal computers operating as servers, a consortium of companies formed an intelligent I/O special interest group (“I
2
O SIG”) with the express purposes of developing a more efficient I/O subsystem architecture. This consortium developed a specification for an I/O architecture called “intelligent I/O,” which is also known as “I
2
O.” The I
2
O architecture's essential concept is that a server's CPU should only receive I/O interrupts that pertain to data ready for processing. The I
2
O architecture somewhat mimics a conventional mainframe computer's architecture in which specialized processors and their associated software perform various I/O subsystem tasks. The I
2
O architecture also includes in its operating system an additional layer for communications. The I
2
O communications layer provides generic support for any type of device driver.
The I
2
O architecture offloads the interrupts generated by I/O devices to special purpose I/O processors (“IOPs”) that have been designed to quickly service interrupts and protect the server's CPU from the performance degradations associated with I/O interrupts in the conventional personal computer architecture. The I
2
O architecture also reduces the software support burden on I/O card manufacturers that had essentially been imposed because of the conventional personal computer architecture.
In an I
2
O compliant architecture, the operating system communicates I/O requests to an I/O subsystem that contains one or more IOPs using a series of predefined and consistently formatted messages. Accordingly, all I
2
O compliant I/O devices understand the I
2
O message format. Thus, the I/O subsystems in the I
2
O architecture operate separately from the server's CPU. An operating system controls the allocation and usage of hardware resources such as memory, CPU time, disk space, and peripheral devices. Well-known personal computer operating systems include WINDOWS 95® and UNIX.
FIG. 1
illustrates a computer network comprised of personal computer servers utilizing the I
2
O architecture. A computer network
100
comprises three servers
101
,
102
, and
103
each designed in compliance with the I
2
O architecture. The server
101
utilizes three IOPs
104
,
105
, and
106
. The server
102
utilizes two IOPs
107
and
108
. The server
103
also utilizes two IOPs
109
and
110
. The computer network
100
may include functionality that balances the I/O load among the servers
101
,
102
, and
103
and among the IOPs
104
-
110
. For the reasons discussed above, a CPU I
2
O in the computer network
100
operates with greater efficiency than it would in a conventional personal computer architecture due to the presence of the IOPs
104
-
110
that process the I/O interrupts received in the computer network
100
.
Conventional personal computer architectures prior to the I
2
O architecture facilitated the ready extraction of diagnostic information related to device drivers and I/O communications since all I/O message traffic passed through the personal computer's CPU. An external diagnostic application could easily collect the statistical information related to a device driver's performance because all underlying communications ran through the operating system and the CPU. Accordingly, all conventional I/O performance data was essentially local information.
In contrast, the I
2
O architecture does not provide a centralized mechanism for monitoring I/O performance because I/O activity occurs in a plethora of decentralized IOPs. Moreover, the I
2
O architecture imposes no practical limits on the number of IOPs in a computing system. As a result of the change from the conventional personal computer architecture to the I
2
O architecture, the conventional methods for measuring I/O performance and operations have been rendered obsolete. Despite the change in personal computer architecture, a need nevertheless remains for measuring overall computing system performance and I/O subsystem communications performance.
SUMMARY OF THE INVENTION
The inventive method and apparatus monitors message traffic passing through the input/output (“I/O”) processors within servers in a computing system in order to analyze the I/O processing within the computing system as a whole. A virtual adapter associated with each I/O processor (“IOP”) in the computing system's servers monitors messages passing through its respective IOP to produce message summary data. The servers may include an I/O monitor that generates a server communications model for its respective server using the message summary data provided by the virtual adapters in the server's IOPs, according to an embodiment of the invention. An I/O user interface develops a computer communications model based upon the server communications models for the servers within the computing system or by directly examining the message summary data in the virtual adapters. The I/O user interface also provides selectable views of the server communications models for each of the computing system's servers and for t

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

Method and apparatus for monitoring input/output... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Method and apparatus for monitoring input/output..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method and apparatus for monitoring input/output... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2858270

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