Computer graphics processing and selective visual display system – Computer graphics processing – Three-dimension
Reexamination Certificate
1998-07-31
2002-07-09
Vo, Cliff N. (Department: 2671)
Computer graphics processing and selective visual display system
Computer graphics processing
Three-dimension
C345S004000, C345S215000
Reexamination Certificate
active
06417849
ABSTRACT:
BACKGROUND OF THE INVENTION
The X Windows System (hereinafter called simply “X”) is the standard windowing system used for Unix workstations. It is prized for its flexibility concerning configuration issues, as well as its ability to display images over a network.
Just as a human organization that conducts or attends events scheduled on a calendar finds it convenient (even necessary!) to require there to be one master calendar administered by a single authority empowered to resolve conflicts, a windowing system for a computer needs one agency that determines where the windows are located, which ones are totally or partially obscured, and that generally administers the rules for window operations. X is no exception, and each workstation has a server, called the “X Server”, or by some people simply “Capital X”, that acts as the controlling agency for the window system. Applications that desire to create or destroy a window, display data in a window, take data from the keyboard, or take data from the existing content of a window, are called clients, and they request services from Capital X through calls to a library, such as Xlib. The slogan is “Capital X owns the frame buffer”, and it implies that nothing is displayed unless the X Server put it into the frame buffer.
X supports a feature set concerning multiple monitors connected to a workstation. This is useful with certain applications that involved either a large amount of data or several disparate types of data. (An example is an integrated circuit design and simulation package where one window contains a high level definition of the circuit's functionality, one contains a description of the resulting device level implementation, one contains a simulated waveform display for that device level implementation, and one contains a definition of simulation parameters, such as supply voltage, clock frequency, etc.) Originally, a window could neither span two or more monitors nor be moved between them at will; it had to be displayed as a complete item within the screen of a single monitor selected in advance. A recent extension to X was the development of Single Logical Screen, or SLS. SLS allows specific arrangements of two, three or four monitors (and their associated frame buffers) to cooperate as if they were one giant monitor and frame buffer within which windows can be arbitrarily positioned and re-positioned, even if they span the physical boundaries of the actual component monitors and frame buffers.
The SLS scheme described above offers adequate performance for 2D operations. Top of the line 3D graphics packages (say, PEX and OpenGL) cooperate with hardware graphics accelerators that expect to write their output images directly to the frame buffer themselves. To facilitate this, a mode of operation called Direct Hardware Access (DHA) was added as an extension to non-SLS X. Through a registration process an “accelerated window” can be defined wherein the 3D libraries themselves can find out the location of the frame buffer and write directly to it. An additional communication path between the application and Capital X keeps track of housekeeping issues, such as obscured regions. This scheme works well, but does not deal with a multiplicity of monitors and their frame buffers. At present, 3D applications render to SLS windows using a virtual memory driver, which is unacceptably slow. It would be desirable if 3D applications could use the DHA mechanism for accelerated windows in the SLS environment.
Notice of Patent Incorporated by Reference, etc.
The subject matter of the present application may be viewed as an extension of that disclosed in an allowed but not yet issued Patent Application bearing Ser. No. 08/584,755, entitled A DESIGN AND METHOD FOR A LARGE, VIRTUAL WORKSPACE, filed by Walls, Elliot and Marks on Jan. 10, 1996 and assigned to Hewlett-Packard Co. That application concerns X Windows and the extension thereto that we have termed SLS, but does not contemplate what to do for systems having a graphics accelerator and wishing to use DHA. Nevertheless, it contains useful background information about X in general and specific implementation details concerning SLS in particular, and, since herein we extend SLS, is for that reason and the sake of brevity hereby incorporated by reference.
For further background information about the standard X Server, the reader is advised to consult a treatise such as THE X WINDOW SYSTEM SERVER by Elias Israel and Erik Fortune (1992, Digital Press, ISBN: 1-55558-096-3). For in-depth treatment about X in general, any of a variety of standard works from O'Reilly & Associates, Inc. are recommended. The following three books may also be of interest, each published by Addison-Wesley: OpenGL Programming for the X Window System, by Mark J. Kilgard (ISBN 0-201-48359-9); OpenGL Programming Guide, by Neider, Davis and Woo (ISBN 0-201-63274-8); and OpenGL Reference Manual, by the OpenGL Architecture Review Board (ISBN 0-201-632764).
SUMMARY OF THE INVENTION
A solution to the problem of combining SLS and DHA in a 3D environment is to pass a single stream of protocol to the X Server, which in turn passes the information to multiple 3D rendering processes for display on individual screens (monitors). Multiple instances of a single daemon implement the rendering processes. The X Server communicates with an instance of the daemon functioning as a master daemon, which in turn controls the remaining instances functioning as slave daemons. All daemons communicate through common shared memory segments. This achieves both efficiency and performance, since duplicated distribution of commands and data is avoided. Each of the daemons is driven by the contents of the shared memory segments. To facilitate this, an X Client, the X Server and the daemons are all interconnected with separate control and data paths.
REFERENCES:
patent: 4903218 (1990-02-01), Longo et al.
patent: 5073933 (1991-12-01), Rosenthal
patent: 5408602 (1995-04-01), Giokas et al.
patent: 5748189 (1998-05-01), Trueblood
patent: 5844553 (1998-12-01), Hao et al.
patent: 5859651 (1999-01-01), Potu
patent: 6088005 (2000-07-01), Walls et al.
Hoffman Don B.
Lefebvre Kevin T.
Lukasik Derek J.
Walls Jeffrey Joel
Cao Huedung X.
Hewlett--Packard Company
Vo Cliff N.
LandOfFree
Single logical screen in X windows with direct hardware... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Single logical screen in X windows with direct hardware..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Single logical screen in X windows with direct hardware... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2891127