WikiPatents - Community Patent Review
Create Free Account  |  License or Sell Your Patent  |  WikiPatents Marketplace  |  WikiPatents Blog
Username:  Password:  
    
Advanced Search
Virtual and emulated objects for use in the user interface of a display screen of a display processor    

Get related patents on CD
United States Patent4939507   
Link to this pagehttp://www.wikipatents.com/4939507.html
Inventor(s)Beard; Marian H. (Sunnyvale, CA); Caro; Perry A. (Palo Alto, CA); Hsiao; Jennifer B. (San Jose, CA); Mackey; Kevin J. (Palo Alto, CA); Sandman, Jr.; James G. (Palo Alto, CA); Steinbach; Gary R. (Mountain View, CA); Woods; Donald R. (Los Altos, CA)
AbstractA user interface is represented on the display screen in the form of metaphoric objects, called icons, with which the user can interact by changing the input focus to a designated object by visually pointed to it via the input means, which thereafter permits manipulation of the designated object or interaction with data input/output relative to the designated object. This input means is also used to initially change the input focus to either the allocated emulating processor screen portion or to the remaining portion of the central processor display screen prior to interaction with the metaphoric objects in a selected screen portion, the change of the input focus causing subsequent user input via the input means to be directed to the selected screen portion until interrupted by a change in focus input to the other of the screen portions by the user via the input means. An icon may be a representation of a virtual object, such as a virtual floppy disk, that is accessible in either the host system world or in the emulating processor world even though the virtual floppy disk may have a filing system alien to the host system world.
   














 Title Information Submit all comments and votes
 
Patent Text Patent PDF Print Page Summary File History
Plain text PDF images Print Summary File History Custom Search
Drawing from US Patent 4939507
Virtual and emulated objects for use in the user interface of a display

     screen of a display processor - US Patent 4939507 Drawing
Virtual and emulated objects for use in the user interface of a display screen of a display processor
Inventor     Beard; Marian H. (Sunnyvale, CA); Caro; Perry A. (Palo Alto, CA); Hsiao; Jennifer B. (San Jose, CA); Mackey; Kevin J. (Palo Alto, CA); Sandman, Jr.; James G. (Palo Alto, CA); Steinbach; Gary R. (Mountain View, CA); Woods; Donald R. (Los Altos, CA)
Owner/Assignee     Xerox Corporation (Stamford, CT)
Patent assignment
All assignments
Company News
Publication Date     July 3, 1990
Application Number     07/232,061
PAIR File History     Application Data   Transaction History
Image File Wrapper   Patent Term   Fees
Litigation
Filing Date     August 15, 1988
US Classification     345/156 703/21 703/22 703/26 703/27 715/804 715/839
Int'l Classification     G09G 001/00
Examiner     Brier; Jeffery A.
Assistant Examiner    
Attorney/Law Firm     Carothers, Jr.; W. Douglas
Address
Parent Case     This is a division of application Ser. No. 06/856,525, filed Apr. 28, 1986.
Priority Data    
USPTO Field of Search     340/706 340/709 340/710 340/721 340/734 364/709 364/188 364/189 364/190 364/131 364/132 364/709.09 364/200 MS File 364/900 MS File
Patent Tags     virtual emulated objects user interface display screen display processor
   
Enter a comma (,) or semicolon (;) between multiple tag words/phrases.
Describe this patent:
 Amusing   
 Clever   
 Complex   
 Efficient   
 Historic   
 Important   
 Innovative   
 Interesting   
 Practical   
 Simple   
[no votes]
Patent WIKI

Share information and news about this patent, including information and news about the technology, inventors, company, ligation and licensing.

 References Submit all comments and votes
 
*references marked with an asterisk below are user-added references
 U.S. References
 
Add a new US reference:  
ReferenceRelevancyCommentsReferenceRelevancyComments
4574364
Tabata
715/798
Mar,1986

[0 after 0 votes]
4564903
Guyette
711/201
Jan,1986

[0 after 0 votes]
4555775
Pike
715/790
Nov,1985

[0 after 0 votes]
4550386
Hirosawa
345/505
Oct,1985

[0 after 0 votes]
4484266
Becker
703/20
Nov,1984

[0 after 0 votes]
4484302
Cason
715/802
Nov,1984

[0 after 0 votes]
4463442
Dachowski
715/521
Jul,1984

[0 after 0 votes]
4458331
Amezcua
715/804
Jul,1984

[0 after 0 votes]
4456954
Bullions, III
711/207
Jun,1984

[0 after 0 votes]
4437184
Cork
714/38
Mar,1984

[0 after 0 votes]
4365295
Katzman
711/206
Dec,1982

[0 after 0 votes]
4315310
Bayliss
710/3
Feb,1982

[0 after 0 votes]
4278973
Hughes
345/26
Jul,1981

[0 after 0 votes]
4253145
Goldberg
703/21
Feb,1981

[0 after 0 votes]
4204206
Bakula
345/635
May,1980

[0 after 0 votes]
4149238
James
710/110
Apr,1979

[0 after 0 votes]
4149148
Miller
345/27
Apr,1979

[0 after 0 votes]
3932843
Trelut
703/21
Jan,1976

[0 after 0 votes]
3643252
Roberts, Jr.
345/27
Feb,1972

[0 after 0 votes]
 Foreign References
 Other References
 Market Review Submit all comments and votes
   
Market Size
Estimate the gross annual revenues of the relevant market sector:
> $10B
$5B - $10B
$2B - $5B
$500M - $2B
$100M - $500M
$10M - $100M
$1M - $10M
$500K - $1M
$100K - $500K
< $100K
[No votes]
$0
 
$0   $2.5B   $5B   $7.5B   $10B

[0 market size comments]
Market Share
Estimate the percentage of the relevant market sector this invention will capture:
75% - 100%
50% - 74.99%
25% - 49.99%
10 - 24.99%
5 - 9.99%
2 - 4.99%
1 - 1.99%
< 1%
[No votes]
0.0%
 
0%   25%   50%   75%   100%

[0 market share comments]
Reasonable Royalty
What percentage of gross sales should the inventor or assignee be paid?
75% - 100%
50% - 74.99%
25% - 49.99%
10 - 24.99%
5 - 9.99%
2 - 4.99%
1 - 1.99%
< 1%
[No votes]
0.0%
 
0%   25%   50%   75%   100%

[0 reasonable royalty comments]
Public's "Guesstimation" of Royalty Value
Market SizeN/A[No votes]
xMarket ShareN/A[No votes]
xReasonable RoyaltyN/A[No votes]

N/A

[0 Guesstimation of Royalty Value Comments]
License Availablity
If you are NOT the owner or assignee, answer here:
Yes, license is available for purchase

No, license is not currently available



[No votes]
[0 license availability comments]
License Availablity
If you ARE the owner or assignee, answer here:
Yes, license is available for purchase

No, license is not currently available



[No votes]
[0 owner/assignee comments]
Competitive Advantage
Does this invention have a significant competitive advantage over similar technologies?
Yes

No



[No votes]
Most helpful competitive advantage comment
[No comments]

[0 competitive advantage comments]
Commercial Alternatives
Are there viable commercial alternatives for this invention?
Yes

No



[No votes]
Most helpful commercial alternative comment
[No comments]

[0 commercial alternatives comments]
 Technical Review Submit all comments and votes
 Claims Submit all comments and votes
 


What is claimed is:

1. A virtual object for use in a user interface on a display screen of a multiprocessor system including memory means for displaying data including metaphoric objects with which a user interacts via input means to access said objects, said data being generated from at least two different data processors, said virtual object representative of a physical data medium with the data content thereof accessible by either of said data processors with memory therefore allocated in said memory means, means in said user interface to format said virtual object to a selected filing system compatible with one or the other of said data processors.

2. The virtual object of claim 1 wherein an emulator forms part of said user interface and emulates the display of a target display system of one of said data processors, emulated drive means bound to said emulator, means to transfer said virtual object to and from said emulated drive means for access of data therein, the data content of said virtual object also accessible by the other of said processors when removed from said emulated drive means.

3. A virtual object for use in a user interface on a display screen of a data processor for displaying data including metaphoric objects with which a user interacts via input means to access said objects, said virtual object displayed as an icon on said display screen and representative of a physical data medium, such as a memory disk or the like, memory for said virtual object allocated in main memory means of said display processor, said allocated memory partitioned and formatted according to said physical data medium.

4. In a user interface of a display processor display screen including metaphoric objects with which a user interacts via input means to access said objects, emulated drive means displayed as an icon on said display screen and representative of and operational as a physical floppy or fixed drive or the like for writing data to and reading data from a virtual object interactive with said emulated drive means upon selection of said virtual object relative to said emulated drive means via said user input means.

5. In the user interface of claim 4, a virtual object displayed as an icon on said display screen and representative of a physical data medium, such as a memory disk or the like, memory for said virtual object allocated in main memory means of said display processor, said allocated memory partitioned and formatted according to said physical data medium, and means to transfer said virtual object to and from said emulated drive means for access of and transfer of data to and from said virtual object.
 Description Submit all comments and votes
 


CROSS-REFERENCE TO RELATED APPLICATION

This application is directly related to the subject matter of patent application Ser. No. 06/856,526, filed Apr. 28, 1986, assigned to the same assignee herein and is incorporated herein in its entirety by reference thereto.

BACKGROUND OF THE INVENTION

This invention relates to video display processor systems for display of video data or information on a single display screen of a raster scan type video display and more particularly to simultaneously displaying video data reflecting the operation of two processors in discrete portions of a single display screen and the user interface therefor. Such a multiprocessor system may comprise a first display processor, e.g. a host computer system, having a display capability for simultaneously displaying both the video data of the first processor and the video data of at least one other display processor, which may, for example, be the emulated display processor of target system central processor, e.g. the IBM PC, which other display processor is connected to the host computer. The host computer system allocates a portion of its display screen for emulation of the display screen environment of the emulated display processor.

Since the early 1970's, the development and advancement of raster scan display systems for displaying video information on a video or CRT display has progressed at a fairly rapid pace. Examples paramount in the advancement of this area of art include, inter alia, the use of bitmaps which are memory representations of the pattern of information to be presented on the display screen of the video display, the bitblt or raster op routine which is a fundamental bitmap operation for the bit block transfer of a memory block of information in the display memory from one location to another location in that memory, and the division of a bitmap display into several regions, also referred to in the art by many other terms such as viewports, files, ports, windows, pages or layered bitmaps, to provide separate display of video information in independent screen regions. The processor systems controlling such multi-region screens may include, for example, means (1) for the manipulation of displayed data presented or present in the different regions of the display screen, (2) for the relocation of either entire regions including the displayed data therein to other portions of the display screen or beneath or on top of other display regions of the display screen and (3) for the relocation of displayed data in one screen region to another screen region. Examples of such systems are the Xerox 8010 Professional Workstation or Information System first commercially introduced by Xerox Corporation in April, 1981 and the Xerox 1100 SIP for the Xerox Smalltalk-80.TM. System first commercially introduced in November, 1983 and previously described with pictorial representations in Volume 6(8) of BYTE of August, 1981, published by BYTE Publications, Inc., a subsidiary of McGraw-Hill, Inc. See also U.S. Pat. No. 4,414,628 which discloses a raster display system for processing and displaying a plurality of superimposed pages on a single display screen. Further, U.S. Pat. Nos. 4,533,910, 4,450,442 and 4,555,775 respectively disclose raster display systems for (1) creating and displaying video information in different regions on a single display screen, (2) displaying a plurality of display files from separate processors in superimposed relationship and in any desired combination thereof on a single display screen and (3) displaying several superimposed bitmap layers, each representative, for example, of a window port, and wherein all layers are displayed, as superimposed, and are running simultaneously so that any one of the windows may be interacted with at any time.

In recent times, with the introduction of the microprocessor-based IBM PC and its more recent follow-ons, such as, the IBM PC XT and the IBM AT (all collectively hereinafter referred to as the "IBM PC") produced by the IBM Corporation and with its high level of placement in the business community and general consumer market, there has been a number of manufacturers and developers developing systems that have been either designed to be an equivalent to an IBM PC or designed to emulate and IBM PC via an emulating software environment. The wide acceptance of the IBM PC has also created a huge software industry catering to the IBM PC market, including emulated or equivalent versions in that market, for various kinds of applications, e.g. Lotus 1-2-3.TM., Wordstar.TM., Multimate.TM., Symphony.TM., Framework II.TM., Multiplan.TM., Turbo Pascal.TM., C Compiler (Microsoft.TM.), Pascal Compiler (Microsoft.TM.) and Cobol Compiler (Microsoft.TM.), etc. Manufacturers and developers have found that in order to maintain their own personal computer based system viable in the market place, they must also make some provision for running IBM PC applications and programs since many customers or potential customers already have IBM PC equipment in use in day to day business and work.

For the most part, these competing manufacturers and developers have provided in their systems separate hardware and/or software for emulating the IBM PC which may be booted and run separately, while their own proprietary system is inactivated, to permit the running of IBM PC applications and programs already in the hands of IBM PC users. While users of such competitive systems can process data or run applications or programs applicable to either the proprietary system or to the IBM PC emulated or equivalent system provided in the same machine, there has been no offering of a means by which the proprietary system can be running simultaneously on the same display facility with the IBM PC emulated or equivalent system so that IBM PC applications and programming could be carried out while the proprietary system is also concurrently running and to further permit the transfer of displayed video data and/or application and program files from one such system to the other for further use or processing.

SUMMARY OF THE INVENTION

According to this invention, a multiprocessor system comprises concurrent display of video data reflecting the operation of two processors in discrete portions of a single display screen with a user interface adapted for interaction with both processors. One processor controls the entire display while allocating a portion of the display screen for the use of the other processor which processor emulates a target processor system, for example, the IBM PC. To fully emulate another target processor system requires emulation of its screen facility and abstractions used in the display operations of the targeted system.

More specifically, the multiprocessor system comprises a general purpose host computer having a central processor having real resources including I/O devices, main memory, a video display with a display bitmap memory for display information that is destined for display on the display screen of said display and user input means, e.g. a keyboard and a cursor control device or mouse, to the host computer to provide user input to the display screen. A user interface on the display screen includes metaphoric symbols with which the user can interact with by using the input means to selectively change the focus of the input means to a designated symbol visually pointed to via the input means to thereafter permit manipulation of the designated symbol or interaction with data input/output relative to the designated symbol. As previously indicated, the system also includes at least one emulating computer having a processor emulating a target processor system and further includes interface means for emulating the above identified real resources for the emulating processor which is responsive to the input/output of the emulating processor for communicative sharing of the central processor real resources by the emulating processor. There are also means in the interface to direct user input via the input means as input for either the central processor or the emulating processor. The input means also initially changes the input focus to either the allocated emulating processor screen portion or to the remaining portion of the central processor display screen prior to interaction with the metaphoric symbols in a selected screen portion. The change of input focus causes subsequent user input via the input means to be directed to particular selected screen portion until interrupted by a change in focus input to the other unselected screen portion, which is accomplished by the user via the input means.

Facilities are also provided to permit transferring of displayed data reflecting the operation of one processor to the control of the other processor in response to user inputs selecting the data to be transferred and indicating the destination of the selected data on the display. More specifically, if data from each processor is displayed in a discrete portion of the display screen, the user may select data in one processor's controlled screen portion or selected document and transfer it to the other processor's controlled screen region, and vice versa.

A more specific aspect relative to the foregoing is that the display environment is designed to emulate the IBM PC display by providing all of the information which would appear on the PC display in a portion of the host system display called the PC emulator window. The display screen of the host system represents an abstraction of the business office metaphor and includes software applications, called "ViewPoint" supported by basic workstation (BWS) software to support those applications. The office metaphor includes an office desktop as well as a representation of the emulating processor as the PC emulator, which is represented as a metaphoric icon or symbol on the host system screen, which, when "opened", reveals an emulated PC window. The display screen of the host system also shows other objects beside the PC emulator window, and some of those objects are other icons for the PC emulator or for the host system operation or for both. Other objects represented in iconic form are in and out baskets, waste baskets, documents, folders, messages, file drawers, printers, etc. Further objects are basic workstation (BWS) windows and property sheets associated with the operation of either processor and for each of the above mentioned objects. This ability to display both an emulated PC display screen and, in the remainder of the display screen, the conventional display screen of the host system is an important feature of this invention. The host system processor loads the information to be displayed into a bitmap memory from both display data read from the PC's emulated main memory allocated in the host system's main memory as well as display data read from the host system's main memory.

Another feature of this invention is that the configuration of the PC emulator may be freely chosen, i.e., the configuration of the PC emulator can be preselected prior to booting of the emulator. The configuration is arranged through a property sheet associated with the emulator icon. For example, the user may open the emulator property sheet and select a configuration that includes a physical floppy disk drive, which is the actual floppy drive of the host system, one or more emulated floppy drives, and an emulated fixed disk. The emulated fixed disk and emulated floppy drives, as selected, are not physically present, but are present as allocated file space on the host system hard disk. The user may also select a memory size of 128, 256, 384, 512 or 640 K Bytes, which appears as emulated main memory located in the host system main memory. The emulator will appear as an icon on the display screen, which when selected and opened by the user, having been previously configured, results in the booting of the PC emulator in the configuration previously established via the emulator property sheet.

Another important aspect of this invention is that means is provided for capturing information displayed in either portion of the display screen dedicated to the respective display processors. Provision is made for the captured information displayed or a document selected to be copied and in some cases moved to the display portion of the other.

There are several techniques in which information may be transferred between the designated screen portions of the two display processor means. The first data transfer technique is a copy of selected text between the PC emulated screen and a BWS window of the host system. To copy out of the emulated screen, the user selects a command in the PC emulator window header termed "Pause", causing the operational state of the PC emulator to be "frozen" with the emulator display window now being under the control of the host central processor. Also, the emulating processor is frozen suspending the running of a current PC program. The user then selects the data in the emulator window to be copied, which data is highlighted by the host system to indicate selection. The user then initiates a copy operation to transfer the selected data to a BWS window as the destination, causing the host central processor to copy the selected data into the selected BWS window. To continue operation of the PC emulator, the user selects a command in the PC emulator window header termed "Resume", causing the operational state of the PC emulated to be "thawed" with the emulator display window now being under the control of the emulating processor and the PC program resumes from exactly the same point at which its operation was suspended. To transfer data from a BWS window into the PC emulated screen, the user selects data in a BWS window at a time when the PC emulator is not in a frozen state but rather its running or "thawed" state, and the selected data is highlighted. The user then initiates either a copy or move operation to transfer the selected data to the PC emulated window as the destination, causing the host central processor to generate a series of emulated keystrokes equivalent to the keystrokes that would be necessary for input of the selected data and provide those keystrokes to the keyboard port of the PC emulating processor via the host system. If the PC emulator is running a program which will display input keystrokes, the data will appear in the PC emulated window, but in any event this input of keystrokes will be under the control of the PC emulating processor.

The second data transfer technique is a transfer of a block of data corresponding to a virtual floppy disk from control of either processor to the other. The data itself is on the host system rigid disk, and does not actually move from one memory location to another, but control over the access to the emulated floppy disk icon and access to its rigid disk location is moved. The block of data is called a virtual floppy, meaning that it is formatted to appear to be a floppy disk to the PC emulator. At any given time, the virtual floppy disk is available to, at most, one of the processors, but never both. When represented as an icon on the BWS portion of the display screen, it may be selected and moved or copied onto one of the emulated floppy drive symbols as configured in the PC emulator window and shown in the window header thereby placing it under the control of the PC emulator processor. When loaded in this manner on an emulated floppy drive of the PC emulator, the virtual floppy may be removed by "clicking" with the system mouse directly over the emulated floppy drive symbol, the mouse screen cursor at this point representing in miniature the virtual floppy disk, and using the mouse to relocate this special cursor on the desktop of the display screen. At the point of relocation, the virtual floppy disk icon will appear on the desktop of the display screen, and the data represented by the virtual floppy will be under the control of the host system processor.

The third data transfer technique is also a transfer of a block of data, either on the host system rigid disk or on a real floppy disk loaded in the host system physical floppy drive. Unlike the transfer of a virtual floppy disk, however, these transfers of data require that the PC emulator be in a state from which it must subsequently be booted for further operation. If the floppy is in the drive, its contents may be transferred to PC emulator control by booting the PC emulator configured to include the physical floppy drive. Similarly, the contents of the emulated fixed disk, represented by a block of reserved space on the host system rigid disk, may be placed under PC emulator control by booting the PC emulator configured to include the emulated fixed disk. Conversely, to transfer the floppy or emulated fixed disk to BWS desktop control, the operation of the PC emulator must be halted, freeing up the physical floppy drive and the emulated fixed disk from its control. Icons on the display screen representing these sources of data may then be directly accessed to obtain the data stored in these emulated media.

The fourth data transfer technique is a transfer of an actual bitmap of a selected part of the PC emulation window into a BWS desktop window, using a utility of the host system processor. This technique cannot be used for transfer of data to the control of the emulating processor, but can transfer data generated by the emulating processor to the control of the host system processor. In effect, this particular host system utility takes a snapshot of the selected part of the display screen via a selection of data stored in the display bitmap memory, which may be comprised of all or part of the PC emulator window displaying graphics or alphanumeric information, and transfers it to a BWS window of the host system.

Other objects and attainments together with a fuller understanding of the invention will become apparent and appreciated by referring to the following description and claims taken in conjunction with the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a functional block diagram showing the major components of the multiprocessor system of this invention.

FIG. 2 is a schematic diagram illustrating the software architecture of the multiprocessor system of FIG. 1.

FIG. 3 is a schematic diagram illustrating the hardware architecture and typical screen display abstraction used with the multiprocessor system of FIG. 1.

FIG. 4 is an an enlarged view of a computer generated representation of the display screen of FIG. 3 showing a desktop with various sundry metaphoric icons or symbols.

FIG. 4A is similar to FIG. 10 and shows a view computer generated of the open window for the loader symbol or icon illustrating various software applications and their status.

FIG. 4B is a view computer generated of the property sheet for a particular application.

FIG. 5 is a view computer generated of FIG. 4 with the document entitled, "The ViewPoint Story" opened and its content displayed on the screen.

FIG. 6 is the same view as FIG. 4 except with the emulator icon selected.

FIG. 7 is the same view as FIG. 4 except with the emulator icon property sheet opened to view for purposes of configuration of the emulator.

FIG. 8 is the same view as in FIG. 7 with further emulator properties displayed.

FIG. 9 is the same view as in FIG. 8 with further emulator properties displayed.

FIG. 10 is the same view as FIG. 4 except with the PC emulator icon opened displaying the PC emulation window.

FIG. 11 is a view similar to FIG. 10 except with a virtual floppy disk loaded into an emulated floppy drive in the configured emulation window.

FIG. 12 is the same view as FIG. 11 except with the PC emulator option sheet opened for viewing.

FIG. 12A is a view computer generated of the option sheet for the PC emulator when "Display Options" is invoked upon opening of the PC emulator.

FIG. 13 is the same view as FIG. 11 except with "floating items" in the emulator display pop-up menu displayed.

FIG. 14 is the same view as FIG. 11 with "Show Keyboard" selected.

FIG. 15 is a state and transition diagram for operation of the PC emulator via the emulator window.

FIG. 16 is a view computer generated of the emulated fixed disk property sheet when activated.

FIG. 16A is a view computer generated of the emulated fixed disk opened to reveal its directory of data files.

FIG. 17 is a view computer generated of the virtual floppy disk property sheet when activated.

FIG. 17A is a view computer generated of the virtual floppy disk property sheet when the command "Reread" has been invoked.

FIG. 17B is a view computer generated of a virtual floppy disk icon opened to reveal its directory of files.

FIG. 18 is a view computer generated of the physical disk drive property sheet when activated.

FIG. 18A is a view computer generated of the physical disk drive property sheet when activated with the [MS-DOS] file system specified.

FIG. 18B is a view computer generated of a directory of an actual floppy disk in the physical floppy drive opened via the physical floppy drive icon.

FIG. 18C is a computer generated view of the same directory as shown in FIG. 18B but accessed via the PC emulation window on a <DIR> prompt.

FIG. 19 is a flow chart illustrating configuration of the PC emulator via its property sheet (FIGS. 7, 8 and 9).

FIG. 20 is a flow chart illustrating reconfiguration of the PC emulator via its option sheet (FIG. 12). i

FIGS. 21A and 21B are flow charts illustrating transfer of data between the PC emulator window and a BWS window. <