Boot Process Overview
The boot process on a
PA-RISC system can be reduced in its simplest form to three steps. I
provide a quick description of the three steps and then look at some
example boot processes so that you can see these three steps in action.
The following is a description of the three steps:
PDC | HP-UX
systems come with firmware installed called Processor Dependent Code.
After the system is powered on or the processor is RESET, the PDC runs
self-test operations and initializes the processor. PDC also identifies
the console path so it can provide messages and accept input. PDC would
then begin the “autoboot” process unless you interrupt it during the
10-second interval that is supplied. If you interrupt the “autoboot”
process, you can issue a variety of commands. The interface to PDC
commands is called the Boot Console Handler (BCH). This is sometimes a
point of confusion; that is, are we issuing PDC commands or BCH
commands? The commands are normally described as PDC commands, and the
interface through which you execute them is the BCH. |
ISL | The
Initial System Loader is run after PDC. You would normally just run an
“autoboot” sequence from ISL; however, you can run a number of commands
from the ISL prompt. |
hpux | The
hpux utility manages loading the HP-UX kernel and gives control to the
kernel. ISL can have hpux run an “autoexecute” file, or commands can be
given interactively. In most situations, you would just want to
automatically boot the system; however, I cover some of the hpux
commands you can execute. This is sometimes called the Secondary System
Loader (SSL). |
I find that there is a lot of
confusion related to the boot process for new system administrators. To
begin with, there is not much documentation that comes with new systems
related to HP system boot. Second, without any background on the boot
process, it is difficult to determine at which phase of the boot your
system is at any given time. Table 2-1
shows some system states and the corresponding prompts that you can
expect for each state in roughly the order you might see them at the
time of system boot.
Table 2-1. System Boot Prompts
Boot State of System | Prompt |
---|
Boot Console Handler (BCH)
Seen when you discontinue boot within 10 seconds. Used to perform PDC-related work. | Main Menu: Enter command or menu > |
Initial System Loader (ISL)
Seen after PDC-related work. | ISL>
? |
hpux
Prompt varies. You usually issue hpux command at ISL prompt to boot. This is sometimes called the Secondary System Loader (SSL). | Varies depending on the state of the system. |
Management Processor (MP) | MP> |
There
is only one way to describe the boot process and that is through
example. The boot of a system with minimal hardware will be covered in
the upcoming sections. I choose the boot of a system with minimal
hardware so we're not bogged down in hardware-related details, but focus
on the boot process. The messages supplied as a result of booting this
modest system allows us to focus on the boot process rather than on the
many hardware components. The boot process consists of mostly the same
steps for any HP system, so you can apply this information to your
system. It may be, however, that you have a much larger system with more
components that will produce more lengthy boot messages.
The BCH Commands Including PathFlags on PA-RISC
The Boot Console Handler
(BCH) is an important part of working with nPartitions and HP-UX on
PA-RISC systems. Many commands can be issued through BCH, but I cover
just a couple of the most commonly used commands. Figure 1
shows the high-level steps involved in booting an nPartition on an HP
9000 (PA-RISC system). The figure depicts the progression of steps
starting at the top and working it's way down to the bottom.
BCH is the primary way to
interact with an nPartition at boot time. The steps and interfaces of
the boot process meld together. There are a few different interfaces and
levels of boot through which you work. When you get to the main menu of
the Management Processor and issue commands you are using BCH. When you
get past BCH, you reach ISL, which is considered the next step of the
boot process beyond BCH. Then, you reach the Secondary System Loader by
issuing the hpux
command, which attempts to load the kernel. You need to know at what
level of the boot process you are working so you can issue the
appropriate commands.
I'll connect to BCH, after rendezvous, through Consoles
in the following examples. Because this is done through the console the
information provided is for the specific processor nPartition to which
the console is connected.
In the first example, I issue in to go to the information menu and then get information on the io and pr and then go back to the Main Menu with ma from BCH:
Main Menu: Enter command or menu > in <-- Select information menu at BCH
---- Information Menu --------------------------------------------------------
Command Description
------- -----------
ALL [<cell>] Display all of the information
BootINfo Display boot-related information
CAche [<cell>] Display cache information
ChipRevisions [<cell>] Display revisions of major VLSI
ComplexID Display Complex information
FwrVersion [<cell>] Display version for PDC, ICM, and Complex
IO [<cell>] Display I/O interface information
MEmory [<cell>] Display memory information
PRocessor [<cell>] Display processor information
BOot [PRI|HAA|ALT|<path>] Boot from specified path
DIsplay Redisplay the current menu
HElp [<command>] Display help for specified command
REBOOT Restart Partition
RECONFIGRESET Reset to allow Reconfig Complex Profile
MAin Return to Main Menu
----
Information Menu: Enter command > io <-- Obtain I/O information
I/O CHASSIS INFORMATION
Cell Info I/O Chassis Info
Cell Cab/Slot Cab Bay Chassis
---- -------- --- --- -------
0 0/0 0 0 0
I/O MODULE INFORMATION
Path Slot Rope IODC
Type (dec) # # HVERSION SVERSION Vers
---- ----- ---- ---- -------- -------- ----
System Bus Adapter 0/0 0x8050 0x0c18 0x00
Local Bus Adapter 0/0/0 0 0 0x7820 0x0a18 0x00
Local Bus Adapter 0/0/1 8 1 0x7830 0x0a18 0x00
Local Bus Adapter 0/0/2 7 2 0x7830 0x0a18 0x00
Local Bus Adapter 0/0/4 6 4 0x7830 0x0a18 0x00
Local Bus Adapter 0/0/6 5 6 0x7830 0x0a18 0x00
Local Bus Adapter 0/0/8 1 8 0x7830 0x0a18 0x00
Local Bus Adapter 0/0/10 2 10 0x7830 0x0a18 0x00
Local Bus Adapter 0/0/12 3 12 0x7830 0x0a18 0x00
Local Bus Adapter 0/0/14 4 14 0x7830 0x0a18 0x00
PCI DEVICE INFORMATION
Path Bus Slot Vendor Device
Description (dec) # # Id Id
----------- ----- --- ------ ------ ------
Communications dev 0/0/0/0/0 0 Built-In 0x103c 0x1290
Comm. serial cntlr 0/0/0/0/1 0 Built-In 0x103c 0x1048
SCSI bus cntlr 0/0/0/3/0 0 Built-In 0x1000 0x0021
SCSI bus cntlr 0/0/0/3/1 0 Built-In 0x1000 0x0021
PCI-to-PCI bridge 0/0/8/1/0 64 1 0x1014 0x01a7
SCSI bus cntlr 0/0/8/1/0/1/0 65 1 0x1000 0x0021
SCSI bus cntlr 0/0/8/1/0/1/1 65 1 0x1000 0x0021
Ethernet cntlr 0/0/8/1/0/4/0 65 1 0x14e4 0x1645
PCI-to-PCI bridge 0/0/10/1/0 80 2 0x1014 0x01a7
Fibre channel 0/0/10/1/0/4/0 81 2 0x1077 0x2312
Ethernet cntlr 0/0/10/1/0/6/0 81 2 0x14e4 0x16c7
PCI-to-PCI bridge 0/0/12/1/0 96 3 0x1014 0x01a7
Fibre channel 0/0/12/1/0/4/0 97 3 0x1077 0x2312
Ethernet cntlr 0/0/12/1/0/6/0 97 3 0x14e4 0x16c7
Information Menu: Enter command > pr <-- Obtain processor information
PROCESSOR INFORMATION
Cab/ Processor
Cell Slot CPU Speed HVERSION SVERSION CVERSION State
---- ---- --- -------- -------- -------- -------- --------------
0 0/0 0A 1000 MHz 0x8830 0x0491 0x0302 Active
0B 1000 MHz 0x8830 0x0491 0x0302 Idle
Partition Total Cells: 1
Partition Total Processors: 2
Partition Active Processors: 2
Partition Deconfigured Processors: 0
Information Menu: Enter command > ma <-- Return to the Main Menu
---- Main Menu ---------------------------------------------------------------
Command Description
------- -----------
BOot [PRI|HAA|ALT|<path>] Boot from specified path
PAth [PRI|HAA|ALT] [<path>] Display or modify a path
SEArch [ALL|<cell>|<path>] Search for boot devices
ScRoll [ON|OFF] Display or change scrolling capability
COnfiguration menu Displays or sets boot values
INformation menu Displays hardware information
SERvice menu Displays service commands
DIsplay Redisplay the current menu
HElp [<menu>|<command>] Display help for menu or command
REBOOT Restart Partition
RECONFIGRESET Reset to allow Reconfig Complex Profile
----
One I/O chassis (0/0) in this nPartition has several cards in it, as shown in the io
command. The I/O chassis connected to a cell board is fully devoted to
that nPartition. This means that all the cards in the I/O chassis are
used by the nPartition. With Virtual Partitions the cards within an I/O
chassis can be used for different vPars. In addition, device files and the mapping of a slot to a Local Bus
Adapter (LBA), which is important to know, which covers devices.
There are two processors in the nPartition, one of which is idle, as shown in the pr output. As you can see, a lot of additional information can be obtained from the Information Menu.
I always issue the commands shown to get information on the hardware of
the system to include as part of the partition documentation.
Next, I go to the Configuration Menu with co and issue a variety of commands related to booting:
Configuration Menu: Enter command > co <-- Go to the configuration menu
---- Configuration Menu ------------------------------------------------------
Command Description
------- -----------
BootID [<cell>[<cpu>[<bootid>]]] Display or set Boot Identifier
BootTimer [0-200] Seconds allowed for boot attempt
COreCell [<choice> <cell>] Display or set core cell
CPUconfig [<cell>[<cpu>[ON|OFF]]] Config/Deconfig processor
DataPrefetch [ENABLE|DISABLE] Display or set data prefetch behavior
DEfault Set the Partition to predefined values
FastBoot [test][RUN|SKIP] Display or set boot tests execution
KGMemory [<value>] Display or set KGMemory requirement
PathFlags [PRI|HAA|ALT] [<value>] Display or set Boot Path Flags
PD [<name>] Display or set Partition name values
ResTart [ON|OFF] Set Partition Restart Policy
TIme [cn:yr:mo:dy:hr:mn:[ss]] Read or set the real time clock
ZLco [ON|OFF] Display or set ZLCO behavior
BOot [PRI|HAA|ALT|<path>] Boot from specified path
DIsplay Redisplay the current menu
HElp [<command>] Display help for specified command
REBOOT Restart Partition
RECONFIGRESET Reset to allow Reconfig Complex Profile
MAin Return to Main Menu
----
Configuration Menu: Enter command > FastBoot skip <-- Employ fastboot
Selftest Setting
----------- -------
PDH SKIP
EARLY cpu SKIP
LATE cpu SKIP
Configuration Menu: Enter command > PathFlags <-- View PathFlags
Primary Boot Path Action
Boot Actions: Skip this path.
Go to next path.
HA Alternate Boot Path Action
Boot Actions: Skip this path.
Go to next path.
Alternate Boot Path Action
Boot Actions: Skip this path.
Go to BCH.
Configuration Menu: Enter command > PathFlags PRI 2 <-- Boot primary,
go to next on failure
Primary Boot Path Action
Boot Actions: Boot from this path.
If unsuccessful, go to next path.
Configuration Menu: Enter command > PathFlags HAA 2<-- Boot HA alternate,
go to next on failure
HA Alternate Boot Path Action
Boot Actions: Boot from this path.
If unsuccessful, go to next path.
Configuration Menu: Enter command > PathFlags ALT 1<-- Boot alternate,
go to BCH on failure
Alternate Boot Path Action
Boot Actions: Boot from this path.
If unsuccessful, go to BCH.
Configuration Menu: Enter command > PathFlags <-- View PathFlags
Primary Boot Path Action
Boot Actions: Boot from this path.
If unsuccessful, go to next path.
HA Alternate Boot Path Action
Boot Actions: Boot from this path.
If unsuccessful, go to next path.
Alternate Boot Path Action
Boot Actions: Boot from this path.
If unsuccessful, go to BCH.
Configuration Menu: Enter command > ma <-- Go to main menu
---- Main Menu ---------------------------------------------------------------
Command Description
------- -----------
BOot [PRI|HAA|ALT|<path>] Boot from specified path
PAth [PRI|HAA|ALT] [<path>] Display or modify a path
SEArch [ALL|<cell>|<path>] Search for boot devices
ScRoll [ON|OFF] Display or change scrolling capability
COnfiguration menu Displays or sets boot values
INformation menu Displays hardware information
SERvice menu Displays service commands
DIsplay Redisplay the current menu
HElp [<menu>|<command>] Display help for menu or command
REBOOT Restart Partition
RECONFIGRESET Reset to allow Reconfig Complex Profile
----
Many more commands can be issued from the Configuration Menu beyond the selections that I made. The first command that I issued was to employ Fastboot skip, which skips tests at boot time.
The next series of
commands set boot flags. The process of setting up the boot options is
important. If your primary boot devices is not available, it is
important for you to specify the alternate devices you have set up. Table 2 summarizes some of the settings that you can issue related to boot flags.
Table 2. MP and HP-UX Boot Paths
Command | Description |
---|
PathFlags PRI 2 | Set the primary to 2. The following are definitions of the numbers:
0 - Go directly to BCH without trying to boot.
1 - Boot from this path and go to BCH on a failure.
2 - Boot from this path and go to the next boot path, if one is defined, on a failure. If not, go to BCH.
3 - Skip this path and go to the next boot path, if one is defined. If not, go to BCH. |
PathFlags HAA 2 | Set the High Availability Alternative (HAA) to 2. |
PathFlags ALT 1 | Set the Alternate to 1. |
nPartition equivalents to the BCH definitions:
PRI = -b (primary)
HAA = -t (alternate)
ALT = -s (secondary) | The -b, -t, and -s are used by HP-UX commands such as parcreate and parmodify to specify the primary, alternate, and secondary boot paths. Note that these are different than the names used by BCH. |
setboot equivalents to the BCH definitions:
primary = -p (primary)
high availability = -h (alternate-path)
alternate = -a (alternate)
autoboot = -b on|off
autosearch = -s on|off
tests = -t testname on|off
verbose output = -v | The -p, -a, and -b are used by setboot at the HP-UX prompt to control the primary, alternate, and autoboot parameters.
Run setboot -v to see the current settings. |