|
System Administration Commands | monitor(1M) |
| monitor - SPARC system PROM monitor |
SYNOPSIS
|
exit from a client program, e.g., the Operating System
|
|
The CPU board of a workstation contains one or more EPROMs or EEPROMs. The program which executes
from the PROMs is referred to as "the monitor". Among other things, the monitor performs system initialization at power-on and provides a user interface.
Monitor Prompt
|
The monitor of earlier workstations was known as the SunMON monitor and displayed the > for its prompt. See the SunMON MONITOR USAGE section for further details.
Existing workstations use a monitor which is known as the OpenBoot monitor. The OpenBoot monitor typically displays ok as its prompt, but it may also display the >
prompt under certain circumstances.
If the 'auto-boot?' NVRAM parameter is set to 'false' when the workstation is powered on then the system will not attempt to
boot and the monitor will issue its prompt. If 'auto-boot' is set to 'true' then the system will initiate the boot sequence. The boot sequence can be aborted by simultaneously
pressing two keys on the system's keyboard: L1 and A (on older keyboards), or Stop and A (on newer keyboards). Note that either a lower case 'a' or an upper case 'A' will work for the keyboard abort sequence. If a console has been attached
via one of the system's serial ports then the abort sequence can be accomplished by sending a BREAK - see the tip(1) manpage.
When the NVRAM 'security-mode' parameter has been turned on, or when the value of the 'sunmon-compat?' parameter is true, then
the OpenBoot monitor will display the message:
Type b (boot), c (continue), or n (new command mode)
and the > prompt will appear.
|
|
|
Some of the more useful commands that can be issued from OpenBoot's ok prompt are described here. Refer to the OpenBoot 2.x Command Reference Manual book for a complete
list of commands.
Help
|
Help for various functional areas of the OpenBoot monitor can be obtained by typing help. The help listing will provide a number of other key words which can then be used in the
help command to provide further details.
|
NVRAM Parameters
|
Each workstation contains one or more NVRAM devices which contains unique system ID information, as well as a set of user-configurable parameters. The NVRAM parameters allow the user a certain level of flexibility in configuring the system to act in a given manner under a specific set of circumstances.
See the eeprom(1M) manpage for a description of the parameters. This manpage also
describes a way of setting the parameters from the OS level.
The following commands can be used at the OpenBoot monitor to access the NVRAM parameters.
-
printenv
- Used to list the NVRAM parameters, along with their default
values and current values.
-
setenv pn pv
- Used to set or modify a parameter. The pn represents the parameter name,
and pv represents the parameter value.
-
set-defaultpn
- Used to set an individual parameter back to its default value.
-
set-defaults
- Used to reset all parameters to their default values. (Note that 'set-defaults' only affects parameters that
have assigned default values.)
|
Hardware Checks and Diagnostics
|
The following commands are available for testing or checking the system's hardware. If the 'diag-switch?' NVRAM parameter is set to true when the
system is powered on, then a Power-On Self Test (POST) diagnostic will be run, if present, sending its results messages to the system's serial port A. Not all of the commands shown are available on all
workstations.
-
test-all
- Run the diagnostic tests on each device which has provided a self-test.
-
test floppy
- Run diagnostics on the system's floppy device.
-
test /memory
- Run the main memory tests. If the NVRAM parameter 'diag-switch?'
is set to true, then all of main memory is tested. If the parameter is false then only the amount of memory specified in the 'selftest-#megs' NVRAM parameter
will be tested.
-
test net
- Test the network connection for the on-board network controller.
-
watch-net
- Monitor the network attached to the on-board net controller.
-
watch-net-all
- Monitor the network attached to the on-board net controller, as well as the network controllers installed in SBus slots.
-
watch-clock
- Test the system's clock function.
|
System Information
|
The following commands are available for displaying information about the system. Not all commands are available on all workstations.
-
banner
- Display the power-on banner.
-
.enet-addr
- Display the system's Ethernet address.
-
.idprom
- Display the formatted contents of the IDPROM.
-
module-info
- Display information about the system's processor(s).
-
probe-scsi
- Identify the devices attached to the on-board SCSI controller.
-
probe-scsi-all
- Identify the devices attached to the on-board SCSI controller as well as those devices which
are attached to SBus SCSI controllers.
-
show-disks
- Display a list of the device paths for installed SCSI disk controllers.
-
show-displays
- Display a list of the device paths for installed display devices.
-
show-nets
- Display a list of the device paths for installed Ethernet controllers.
-
show-sbus
- Display list of installed SBus devices.
-
show-tapes
- Display a list of the device paths for installed SCSI tape controllers.
-
show-ttys
- Display a list of the device paths for tty devices.
-
.traps
- Display a list of the SPARC trap types.
-
.version
- Display the version and date of the OpenBoot PROM.
|
Emergency Commands
|
These commands must be typed from the keyboard, they will not work from a console which is attached via the serial ports. With the exception of the Stop-A command,
these commands are issued by pressing and holding down the indicated keys on the keyboard immediately after the system has been powered on. The keys must be held down until the monitor has checked their
status. The Stop-A command can be issued at any time after the console display begins, and the keys do not need to be held down once they've been pressed. The Stop-D, Stop-F and Stop-N commands are not allowed when one of the security modes has been set. Not all commands
are available on all workstations.
-
Stop (L1)
- Bypass the Power-On Self Test (POST). This is only effective if the system
has been placed into the diagnostic mode.
-
Stop-A (L1-A)
- Abort the current operation and return to the monitor's default prompt.
-
Stop-D (L1-D)
- Set the system's 'diag-switch?' NVRAM parameter to 'true', which places the system in diagnostic mode. POST diagnostics, if present, will be run, and the messages will be displayed via the system's serial port A.
-
Stop-F (L1-F)
- Enter the OpenBoot monitor before the monitor has probed the system for devices. Issue the 'fexit'
command to continue with system initialization.
-
Stop-N (L1-N)
- Causes the NVRAM parameters to be reset to their default values. Note that not
all parameters have default values.
|
Line Editor Commands
|
The following commands can be used while the monitor is displaying the ok prompt. Not all of these editing commands are available on all workstations.
-
CTRL-A
- Place the cursor at the start of line.
-
CTRL-B
- Move the cursor backward one character.
-
ESC-B
- Move the cursor backward one word.
-
CTRL-D
- Erase the character that the cursor is currently highlighting.
-
ESC-D
- Erase the portion of word from the cursor's present position to the end of the word.
-
CTRL-E
- Place the cursor at the end of line.
-
CTRL-F
- Move the cursor forward one character.
-
ESC-F
- Move the cursor forward one word.
-
CTRL-H
- Erase the character preceding the cursor (also use Delete or Back Space)
-
ESC-H
- Erase the portion of the word which precedes the cursor (use also CTRL-W)
-
CTRL-K
- Erase from the cursor's present position to the end of the line.
-
CTRL-L
- Show the command history list.
-
CTRL-N
- Recall the next command from the command history list
-
CTRL-P
- Recall a previous command from the command history list.
-
CTRL-Q
- Quote the next character (used to type a control character).
-
CTRL-R
- Retype the current line.
-
CTRL-U
- Erase from the cursor's present position to the beginning of the line.
-
CTRL-Y
- Insert the contents of the memory buffer into the line, in front (to the left) of the cursor.
|
nvramrc
|
The nvramrc is an area of the system's NVRAM where users may store Forth programs. The programs which are stored in the nvramrc
will executed each time the system is reset, provided that the 'use-nvramrc?' NVRAM parameter has been set to 'true'. Refer to the OpenBoot 2.x Command Reference Manual book for information on how to edit and use the nvramrc.
|
Restricted Monitor
|
The command 'old-mode' is used to move OpenBoot into a restricted monitor mode, causing the > prompt to be displayed. Only three commands are allowed while
in the restricted monitor; the 'go' command (to resume a program which was interrupted with the Stop-A command), the 'n' command (to
return to the normal OpenBoot monitor), and boot commands. The restricted monitor's boot commands will approximate the older SunMON monitor's boot command syntax. If a 'security-mode' has been turned on then the restricted monitor becomes the default monitor environment. The restricted monitor may also become the default environment if the 'sunmon-compat?' NVRAM parameter is set to true. (Note that not all workstations will have the 'sunmon-compat?' parameter.)
|
|
|
The following commands are available systems with older SunMON-based PROM:
-
+|-
- Increment or decrement the current address and display the contents
of the new location.
-
^C source destination n
- (caret-C) Copy, byte-by-byte, a block of length n from the source address to the destination address.
-
^I program
- (caret-I) Display the compilation date and location of program.
-
^T virtual_address
- (caret-T) Display the physical address to which virtual_address
is mapped.
-
b [ ! ] [ device [ (c,u,p) ] ] [ pathname ] [ arguments_list ]
-
-
b[?]
- Reset appropriate parts of the system and bootstrap a program. A `!' (preceding the device argument) prevents the system reset from occurring. Programs can be loaded from various devices (such as a disk, tape, or Ethernet). `b' with no arguments will cause
a default boot, either from a disk, or from an Ethernet controller. `b?' displays all boot devices and their devices.
-
device
- one of
-
le
- Lance Ethernet
-
ie
- Intel Ethernet
-
sd
-
SCSI disk, CDROM
-
st
-
SCSI 1/4" or 1/2" tape
-
fd
- Diskette
-
id
- IPI disk
-
mt
- Tape Master 9-track 1/2" tape
-
xd
- Xylogics 7053 disk
-
xt
- Xylogics 1/2" tape
-
xy
- Xylogics 440/450 disk
-
c
- A controller number (0 if only one controller),
-
u
- A unit number (0 if only one driver), and
-
p
- A partition.
-
pathname
- A pathname for a program such as /stand/diag.
-
arguments_list
- A list of up to seven arguments to pass to the program being booted.
-
c [virtual_address]
- Resume execution of a program. When given, virtual_address
is the address at which execution will resume. The default is the current PC. Registers are restored to the values shown by the d, and r
commands.
-
d [window_number]
- Display (dump) the state of the processor. The processor state is observable
only after:
- An unexpected trap was encountered.
- A user program dropped into the monitor (by calling abortent).
- The user manually entered the monitor by typing L1-A or BREAK.
The display consists of the following:
- The special registers: PSR, PC, nPC, TBR, WIM, and Y
- Eight global registers
- 24 window registers (8 in, 8 local, and 8 out), corresponding to one of the 7 available windows.
If a Floating-Point Unit is on board, its status register along with 32 floating-point registers are also shown.
-
window_number
- Display the indicated window_number, which can be any value between 0 and 6, inclusive. If no window is specified and the PSR's current window pointer
contains a valid window number, registers from the window that was active just prior to entry into the monitor are displayed. Otherwise, registers from window 0 are displayed.
-
e [virtual_address][action] ...
- Open the 16-bit word at virtual_address (default zero). The address is interpreted in the address space defined by the s command. See the a command for a description of action.
-
f virtual_address1 virtual_address2 pattern [size]
- Fill the bytes, words, or long
words from virtual_address1 (lower) to virtual_address2 (higher) with the constant, pattern. The size
argument can take one of the following values:
-
b
- byte format (the default)
-
w
- word format
-
l
- long word format
For example, the following command fills the address block from 0x1000 to 0x2000 with the word pattern, 0xABCD:
f 1000 2000 ABCD W
-
g [vector] [argument]
-
g [virtual_address] [argument]
- Goto (jump to) a predetermined or default routine (first form), or to a user-specified routine (second form). The value
of argument is passed to the routine. If the vector or virtual_address argument is omitted, the value in the PC is used as the address to jump to.
To set up a predetermined routine to jump to, a user program must, prior to executing the monitor's g command, set the variable *romp->v_vector_cmd to be equal
to the virtual address of the desired routine. Predetermined routines need not necessarily return control to the monitor.
The default routine, defined by the monitor, prints the user-supplied vector according to the format supplied in argument. This format can be
one of:
-
%x
- hexadecimal
-
%d
- decimal
-
g0
- Force a panic and produce a crash dump when the monitor is running as a result of the system being interrupted,
-
g4
- (Sun-4 systems only) Force a kernel stack trace when the monitor is running as a result of the system being interrupted,
-
h
- Display the help menu for monitor commands and their descriptions. To return to the monitor's basic command level, press ESCAPE or q before pressing RETURN.
-
i [cache_data_offset] [action]...
- Modify cache
data RAM command. Display and/or modify one or more of the cache data addresses. See the a command for a description of action.
-
j [cache_tag_offset] [action]...
- Modify cache tag RAM command. Display and/or modify the contents of one or more of the cache tag addresses. See the a command for a description of action.
-
k [reset_level]
- Reset the system, where reset_level is:
-
0
- Reset VMEbus, interrupt registers, video monitor (Sun-4 systems). This is
the default.
-
1
- Software reset.
-
2
- Power-on reset. Resets and clears the memory. Runs the EPROM-based diagnostic self test, which can take several
minutes, depending upon how much memory is being tested.
-
kb
- Display the system banner.
-
l [virtual_address][action]...
- Open the
long word (32 bit) at memory address virtual_address (default zero). The address is interpreted in the address space defined by the s command (below). See
the a command for a description of action.
-
m [virtual_address][action]...
- Open the segment map entry that maps virtual_address (default zero). The address is interpreted in the address space defined by the s command. See the a command for a description of action.
-
ne
-
-
ni
- Disable, enable, or invalidate the cache, respectively.
-
o [virtual_address][action]...
- Open the
byte location specified by virtual_address (default zero). The address is interpreted in the address space defined by the s command. See the a
command for a description of action.
-
p [virtual_address][action]...
- Open the page map
entry that maps virtual_address (default zero) in the address space defined by the s command. See the a command for a description of action.
-
q [eeprom_offset][action]...
- Open the EEPROM eeprom_offset (default zero) in the EEPROM address space. All addresses are referenced from the beginning or base
of the EEPROM in physical address space, and a limit check is performed to insure that no address beyond the EEPROM physical space is accessed.
This command is used to display or modify configuration parameters, such as: the amount of memory to test during self test, whether to display a standard or custom banner, if a serial port (A or B) is to
be the system console, etc. See the a command for a description of action.
-
r [register_number]
-
r [register_type]
-
r [w window_number]
- Display and/or modify one or more of the IU or FPU registers. A hexadecimal register_number can be one of:
-
0x00-0x0f
- window(0,i0)-window(0,i7), window(0,i0)--window(0,i7)
-
0x16-0x1f
- window(1,i0)-window(1,i7), window(1,i0)--window(1,i7)
-
0x20-0x2f
- window(2,i0)-window(2,i7), window(2,i0)--window(2,i7)
-
0x30-0x3f
- window(3,i0)-window(3,i7), window(3,i0)--window(3,i7)
-
0x40-0x4f
- window(4,i0)-window(4,i7), window(4,i0)--window(4,i7)
-
0x50-0x5f
- window(5,i0)-window(5,i7), window(5,i0)--window(5,i7)
-
0x60-0x6f
- window(6,i0)-window(6,i7), window(6,i0)--window(6,i7)
-
0x70-0x77
-
g0, g1, g2, g3, g4, g5, g6, g7
-
0x78-0x7d
-
PSR, PC, nPC, WIM, TBR, Y.
-
0x7e-0x9e
-
FSR, f0-f31
Register numbers can only be displayed after an unexpected trap, a user program has entered the monitor using the abortent function, or the user has entered the monitor
by manually typing L1-A or BREAK.
If a register_type is given, the first register of the indicated type is displayed. register_type can be one of:
-
f
- floating-point
-
g
- global
-
s
- special
If w and a window_number (0--6) are given, the first in-register within the indicated
window is displayed. If window_number is omitted, the window that was active just prior to entering the monitor is used. If the PSR's current
window pointer is invalid, window 0 is used.
-
s [asi])
- Set or display the Address Space Identifier. With no argument, s displays
the current Address Space Identifier. The asi value can be one of:
-
0x2
- control space
-
0x3
- segment table
-
0x4
- Page table
-
0x8
- user instruction
-
0x9
- supervisor instruction
-
0xa
- user data
-
0xb
- supervisor data
-
0xc
- flush segment
-
0xd
- flush page
-
0xe
- flush context
-
0xf
- cache data
-
u [ echo ]
-
-
u [ port ] [ options ] [ baud_rate ]
-
-
u [ u ] [ virtual_address ]
- With no arguments, display the current I/O device characteristics including:
current input device, current output device, baud rates for serial ports A and B, an input-to-output echo indicator, and virtual addresses of mapped UART devices. With arguments,
set or configure the current I/O device. With the u argument (uu...), set the I/O device to be the virtual_address of a UART device currently mapped.
-
echo
- Can be either e to
enable input to be echoed to the output device, or ne, to indicate that input is not echoed.
-
port
- Assign the indicated port to be the current I/O device. port can be one of:
-
a
- serial port A
-
b
- serial port B
-
k
- the workstation keyboard
-
s
- the workstation screen
-
baud_rate
- Any legal baud rate.
-
options
- can be any combination of:
-
i
- input
-
o
- output
-
u
-
UART
-
e
- echo input to output
-
ne
- do not echo input
-
r
- reset indicated serial port (a and b ports only)
If either a or b is supplied, and no options are given, the serial port is assigned for both input and output. If k
is supplied with no options, it is assigned for input only. If s is supplied with no options, it is assigned for output only.
-
v virtual_address1 virtual_address2 [size]
- Display the contents of virtual_address1 (lower) virtual_address2 (higher) in the format specified by size:
-
b
- byte format (the default)
-
w
- word format
-
l
- long word format
Enter return to pause for viewing; enter another return character to resume the display. To terminate the display at any time, press the space bar.
For example, the following command displays the contents of virtual address space from address 0x1000 to 0x2000 in word format:
v 1000 2000 W
-
w [virtual_address][argument]
- Set the execution vector
to a predetermined or default routine. Pass virtual_address and argument to that routine.
To set up a predetermined routine to jump to, a user program must, prior to executing the monitor's w command, set the variable *romp->v_vector_cmd to be equal
to the virtual address of the desired routine. Predetermined routines need not necessarily return control to the monitor.
The default routine, defined by the monitor, prints the user-supplied vector according to the format supplied in argument. This format can be
one of:
-
%x
- hexadecimal
-
%d
- decimal
-
x
- Display a menu of extended tests. These diagnostics permit additional testing of such things as the I/O port connectors, video memory, workstation
memory and keyboard, and boot device paths.
-
yc context_number
-
-
yp|s context_number virtual_address
- Flush the indicated context, context page, or context segment.
-
c
- flush context context_number
-
p
- flush the page beginning at virtual_address within context context_number
-
s
- flush the segment beginning at virtual_address within context context_number
|
|
See attributes(5) for descriptions of the following
attributes:
ATTRIBUTE TYPE | ATTRIBUTE VALUE |
Architecture | SPARC |
|
| |