3 4
the variable information. Modifying the pixel value may management, memory management, and communication
require compressing, decompressing or otherwise process- control and related services. The processor and operating
ing the previous contents of the pixel. system define a computer platform for which application
programs in high level programming languages are written.
BRIEF DESCRIPTION OF THE DRAWING 5 It should be understood that the invention is not limited to
. a particular computer platform, particular operating system,
For a better understanding of the present invention, ref- particular pr0cessor, or particular high level programming
erence is made to the accompanying drawings, where are language. Additionally, the computer system 20 may be a
incorporated herein by reference and in which: multi-processor computer system or may include multiple
FIG. 1 is a block diagram of an example computer system lQ computers connected over a computer network,
which may be used for implementing the present invention; exampie memory system 24 will now be described in
FIG. 2 is a block diagram illustrating a typical memory more detail in connection with FIG. 2. A memory system
system for use in the computer system in FIG. 1; typically includes a computer readable and writable non
FIG. 3 is a data flow diagram of one embodiment of the volatile recording medium 40, of which a magnetic disk, a
present invention; 15 flash memory, and tape are examples. The disk may be
FIG. 4 is a flowchart describing processing steps taken at removable, known as a floppy disk, and/or permanent,
the beginning of a page' and known as a hard drive. The disk, which is shown in FIG. 2,
• , has a number of tracks, as indicated at 42, in which signals
FIG. 5 is a flowchart describing processing steps taken at t j • u- £ • £ • * * J
jjj j j are stored* m binary form, i.e., a form interpreted as a
e en o a page. ^ sequence of l's and 0's, as shown at 44. Such signals may
DETAILED DESCRIPTION define an application program to be executed by the
microprocessor, or information stored on the disk to be
The present invention will be more completely under- processed by the application program, such as video infor
stood through the following detailed description which mation stored in a data file Typically, in operation, the
should be read in conjunction with the attached drawing in 2J processor 22 causes data to be read from the non-volatile
which similar reference numbers indicate similar structures. recording medium 40 into an integrated circuit memory
The present invention may be implemented using a digital element 46, which is typically a volatile random access computer. Atypical computer system 20 is shown in FIG. 1, memory, such as a dynamic random access memory and includes a processor 22 connected to a memory system (DRAM) or static memory (SRAM). The integrated circuit 24 via an interconnection mechanism 26. The interconnec- 30 memory element 46 allows for faster access to the information mechanism is typically a combination of one or more tion by the processor and disk 40, and is typically called the buses and one or more switches. An input device 28 is also system memory. The processor generally causes the data to connected to the processor and memory system via the be manipulated within the integrated circuit memory 46 and interconnection mechanism, as is an output device 30, such copies the data to the disk 40 if modified, when processing as a printer. 35 is completed. A variety of mechanisms are known for
It should be understood that one or more output devices managing data movement between the disk 40 and the may be connected to the computer system. Example output integrated circuit memory 46, and the invention is not devices include a cathode ray tube (CRT) display, liquid limited thereto. It should also be understood that the invencrystal display (LCD), printers including color laser copiers, tion is not limited to a particular memory system, communication devices, such as a modem, and audio output. 40 A block diagram describing one embodiment of the It should also be understood that one or more input devices invention will now be described in connection with FIG. 3. 28 may be connected to the computer system. Example input Various applications (not shown) are executed by the corndevices include a keyboard, keypad, trackball, mouse, pen puter system 20 and provide a data 50 to be printed. This and tablet, communication device, audio input and image data is received by a printer driver 52 which is another scanner. It should be understood that the invention is not 45 application executed on computer system 20. For example, limited to the particular input or output devices used in the printer driver 52 may be an Adobe PostScript printer combination with the computer system or to those described driver. Such a printer driver, in this embodiment, receives a herein. The input and output devices may be included within printer description 54. The printer description defines sevor external to a main unit which typically houses the eral user programmable options for the printer driver 52. For processor 22, memory system 24 and interconnection 50 an Adobe PostScript printer driver, the printer description is mechanism 26. often called a "PostScript printer description" or "PPD". The
The computer system 20 may be a general purpose printer description 54 is interpreted by the printer driver 52
computer system, which is programmable using a high level and is used to provide an interface, such as a graphical user
computer programming language, such as "C++." The com- interface (not shown), which enables a user to input values
puter system may also be implemented using specially 55 associated with the user programmable options of the printer
programmed, special purpose hardware. In a general pur- driver 52.
pose computer system, the processor is typically a commer- In response to data from the various applications and the
cially available processor, such as the Pentium micropro- values input by the user for the user programmable options,
cessor from Intel Corporation, PowerPC microprocessor or the printer driver 52 generates page description data 56, for
68000 series microprocessor. Many other processors are also 60 example, in a page description language such as PostScript
available. Such a processor executes a program called an or Printer Control Language (PCL). The values associated
operating system, such as the various versions of the Win- with the user-programmable options typically appear at the
dows and DOS operating systems from Microsoft Corpora- beginning of the output of the page description data. Page
tion or the System 7 operating system from Apple Computer, description languages are a form of high level computer
which controls the execution of other computer programs 65 language. Commands in a page description language indi
and provides scheduling, debugging, input-output control, cate a location on a page and data to be printed at the
accounting compilation, storage assignment, data location. These commands are interpreted or compiled much