System information

5.2 Legacy Device Emulation
USB read and write requests to HTTP or file system requests. Before, the daemon has to
get announced which data source has to be used.
NFS Source The Linux running on the ARM CPU mounts an NFS
11
share. The image
files are stored on an NFS directory. The MSBO daemon has therefore direct access to the
file. But in principle, every network file system available for LINUX is usable to store large
files on the CHARM.
Web Server Source Another way to obtain a big data source is a web-server. Common
web servers, like Apache, provide partial content requests. Files can be loaded in arbitrary
ranges. This is very important for the CHARM card. It has only a small memory to buffer
the provided disk image. If the remote managed computer wants to read from the CHARM
mass storage device, the data is partly loaded from the web server.
Host
Computer
USB
Mass
Storage
Disk
Image
CHARM Card
Webserver
Server
Disk
Image
Disk
Image
Disk
Image
Disk
Image
Disk
Image
NFS
Server
Web
Server
NFS
HTTP
USB
Ethernet
Figure 5.8: The CHARM USB Mass Storage device provides data from a network location.
5.2 Legacy Device Emulation
The older PC motherboards do not have USB support at boot time. USB HID devices like a
keyboard does not function while running the BIOS. The CHARM emulates USB keyboard
does not work in this stage. To interact with such motherboards another interface has to
be used providing the keyboard functionality.
5.2.1 Keyboard Controller
The most of the current off-the-shelf motherboards contain a keyboard controller for legacy
serial ports. These keyboard controllers are backward compatible to the Intel keyboard
controller 8042. The software interface to the controller was not changed. Generally, there
are two I/O ports controlling this device: 0x60 and 0x64 [74, 75].
Table 5.4 lists the registers of the 8042 keyboard controller. The following steps detail
the procedure of keystroke processing:
11
Network File System (NFS) is a network file system protocol originally developed by Sun Microsystems.
75