Use UB STICK EFFECTIVELY
Most computers can support various components and devices that comprise
or interface
with the computer in a variety of different ways. These
components and devices must be supported by different software programs
and
operating environments running in the computer.
Illustrations
For example, a personal computer may connect to peripheral devices
through one or more peripheral buses or ports. Examples of popular
peripheral buses include a universal serial bus ("USB") or an IEEE 1394
serial bus ("1394 bus"). The USB is a two-wire serial personal computer
bus, designed by a consortium of computer makers and suppliers, which
can support many peripheral devices either in parallel or in a daisy
chain configuration. The 1394 bus is also a two-wire serial personal
computer bus, very similar to the USB. Specifications for the 1394 bus
are available from the Institute of Electrical and Electronics
Engineers, Inc. ("IEEE"), 345 East 47th Street, New York, N.Y.
10017-2394. For both the USB and the 1394 bus, when a device is
connected to the bus, it provides a predetermined code that identifies
its type and bandwidth requirements.
Problems occur when a computer implements an operating
environment that
is not aware of a specific type (e.g., does not provide appropriate
device drivers) of device. To resolve these problems, the computer must
implement device support outside of the operating environment. For
example, if a computer uses a USB port for a USB keyboard while
implementing a PS/2 operating environment (a PS/2 operating environment
expects a PS/2 type keyboard), the computer''s basic input/output system
("BIOS") can intercept data and software access to and from specific
ports associated with the keyboard. The BIOS thereby "translates" the
commands between the newer USB keyboard and the operating environment
for use with older (or "legacy") keyboards by examining the internal
processor ports and registers and "routing" data accordingly.
Continuing with the present example, if the processor writes a data
value to port 60h (60 hexadecimal, which is a port defined for use by a
PS/2 keyboard), the write instruction causes a system management
interrupt ("SMI") trap. In response to the SMI trap, the BIOS instructs
the processor to enter a system management mode. The BIOS then places
the appropriate data in the processor''s registers.
Similarly, the BIOS can be interrupted in order to be
requested to go into standby mode. In order to determine what the BIOS
was interrupted for, the BIOS must inspect the software instructions.
The BIOS relies on data stored in the processor registers to determine
this. The BIOS should then retrieve the appropriate data out of the
processor''s registers to make a decision or perform an action.
However, the BIOS may be interrupted for several reasons and
may not be able to determine the reason from the hardware or the
interrupt alone. A problem exists when the computer has multiple
processors. In these computers, the BIOS has no way to know which of
the processors in the multiprocessor system initiated the request. In
the above-described examples, the BIOS must determine which of the
processors instruction execution caused the interrupt to properly route
the data to or from the USB keyboard.
Write your abstract here.