System information

7.1 Complex Tasks
CHARMHost Computer
Video
Memory
Primary VGA
of the host
USB
PCI
Keystrokes
VGA Output
USB
KNOPPIX ISO
Image
crsh.sh
shell command
keyb_cmd
KNOPPIX$>more /proc/cpuinfo
processor :0
vendor_id :AuthenticAMD
cpufamily :6
cpuidlevel :1
...
KNOPPIX$>_
Host Console
Shell
CHARM$>crsh.sh more /proc/cpuinfo
processor :0
vendor_id :AuthenticAMD
cpufamily :6
cpuidlevel :1
...
CHARM$>_
CHARM Console
terminal
1
2
3
4
5
6
7
CPU
running
KNOPPIX
Figure 7.1: Functional overview of the crsh.sh program. The red circles define the processing
order of the function units. On the right hand of the picture, a shell console
calling the crsh.sh program is shown. The left side of the picture shows the
screen content of the host computer.
is no generic interface to access the BIOS settings of modern computer systems without
using the BIOS Setup Utility. The CHARM card has the capability to change the BIOS
settings without human intervention. Basically, the CHARM uses the BIOS Setup Utility
to change the settings. First, the administrator setups the desired settings via the BIOS
Setup Utility. The CHARM records the keystrokes during the setup. The CHARM card
can replay the key sequence to setup the BIOS. However, the key sequence of a specific
setting depends on the initial setting. For example, if the user enables the onboard VGA,
the replay of the same key sequence will disable the onboard VGA device and so on. Hence,
the key sequence must ever relate to the default BIOS settings, which can be loaded at
any BIOS Setup Utility. Additionally, one can use the data sheet of the motherboard
to determine the key sequence of a certain BIOS settings. A shell script running on the
CHARM reboots the computer, enters the BIOS Setup Utility and sends the desired key
sequence. The POST codes of the host system indicate the process of the booting host
system. They are also used by the CHARM for the detection of the entry point of the BIOS
Setup Utility or for the detection of boot interruptions of the running BIOS. If the BIOS
detects a wrong BIOS setting, absence of a device or a malfunctioning hardware, it will stop
the booting. Generally, the BIOS prints out an error or warn message and provides several
options indicating how to proceed. For example, the absence of a keyboard or outage of the
CMOS battery can cause the stop of the boot process and the need of human intervention.
Additionally to error messages the BIOS sends appropriated POST codes to the PCI bus.
Following several building blocks of the BIOS setup script are discussed in detail:
95