Information Technology Reference
In-Depth Information
graphics engine (known as DIB, device-independent bitmaps) which:
•
Directly controls the graphics output on the screen.
•
Provides a set of optimized generic drawing functions for monochrome, 16-colour, 16-bit
high colour, 256-colour, and 24-bit true colour graphic devices. It also supports Bézier
curves and paths.
•
Support for image Colour Matching for better color matching between display and colour
output devices.
The Windows graphics subsystem is included as a universal driver with a 32-bit mini-driver.
The mini-driver provides only for the hardware-specific instructions.
The 32-bit Windows 95/98 printing subsystem has several enhancements over Windows
3.
x
. These include:
•
They use a background thread processing to allow for smooth background printing.
•
Smooth printing where the operating system only passes data to the printer when it is
ready to receive more information.
•
They send enhanced metafile (EMF) format files, rather than raw printer data. This EMF
information is interpreted in the background and the results are then sent to the printer.
•
Support for deferred printing, where a print job can be sent to a printer and then stored
until the printer becomes available.
•
Support for bi-directional communication protocols for printers using the extended com-
munication port (ECP) printer communication standard. ECP mode allows printers to
send messages to the user or to application programs. Typical messages are: 'Paper Jam',
'Out-of-paper', 'Out-of-Memory', 'Toner Low', and so on.
•
Plug-and-play.
H.8 Multitasking and threading
Multitasking involves running several tasks at the same time. It normally involves running a
process for a given amount of time, before releasing it and allowing another process a given
amount of time. There are two forms of multitasking:
•
Pre-emptive multitasking - this involves the operating system controlling how long a
process stays on the processor. This allows for smooth multitasking and is used in Win-
dows NT/95/98 32-bit programs.
•
Co-operative multitasking - this relies on a process giving up the processor. It is used
with Windows 3.
x
programs and suffers from processor hogging, where a process can
stay on a processor and the operating system cannot kick it off.
The logical extension to multitasking programs is to split a program into a number a parts
(threads) and run each of these on the multitasking system (multithreading). A program
which is running more than one thread at a time is known as a multithreaded program. Multi-
threaded programs have many advantages over non-multithreaded programs, including: