Support for 64-Bit Computing

The system autodetects the appropriate kernel to boot on x86 based systems. New installations of the Solaris OS autoboot to 64-bit mode on 64-bit capable hardware. Upgrade installations of the Solaris OS autoboot to 64-bit mode on 64-bit capable hardware, unless the eeprom boot-file parameter was previously set to a value other than kernel/unix.

For upgrade installations of the Solaris OS, where the eeprom boot-file parameter was previously set to a value other than kernel/unix, you will need to do one of the following to boot the system to 64-bit mode:

If you are running at least the Solaris Express release:

If you are running the Solaris 10 release:

Setting the boot-file Parameter With the eeprom Command

Solaris 10: For all new software installations, as well as upgrade installations, where the eeprom boot-file parameter had previously been set to kernel/unix, the eeprom boot-file parameter is set to a null value (""). The system then automatically boots to 64-bit mode on x86 based systems that are capable of 64-bit computing when you type b at the boot prompt.

You do not need to manually specify which kernel a 64-bit capable system should boot unless one of the following conditions exists:

  • The eeprom boot-file parameter was previously set to a value other than kernel/unix.

  • You want to force the system to boot to a particular mode.

The following table shows the boot mode result for an x86 based system that is 64-bit capable, depending on the Solaris OS version, the boot command that is used, and how the eeprom boot-file parameter is set.

Boot Command

eeprom boot-file Parameter Setting

Boot Mode Result

b kernel/unix

The boot-file parameter is ignored when this command is used.

32-bit mode boot

b kernel/amd64/unix

The boot-file parameter is ignored when this command is used.

64-bit mode boot

b

""

64-bit mode boot

b

kernel/unix

32-bit mode boot

b

kernel/amd64/unix

64-bit mode boot

To manually specify which mode a 64-bit capable x86 based system boots to on future reboots, set the eeprom boot-file parameter. Note that you must be superuser or assume an equivalent role to run the eeprom command.

To manually specify that a 64-bit capable x86 system always boot a 64-bit kernel, set the eeprom boot-file parameter as follows:

# eeprom boot-file=kernel/amd64/unix

To manually specify that a 64-bit capable x86 system always boot a 32-bit kernel, set the eeprom boot-file parameter as follows:

# eeprom boot-file=kernel/unix

To restore the default autodetect boot behavior, type:

# eeprom boot-file=""

To determine the current boot-file parameter, type:

$ eeprom boot-file

For more information on the eeprom command, see the eeprom ( 1M ) man page. For information on how to troubleshoot problems on 64-bit capable x86 based systems, see Troubleshooting a Failed 64-Bit Boot.

Booting a System With the Kernel Debugger (kmdb)

Solaris 10: To boot a 64-bit capable x86 based system with kmdb, use the k option to the boot specification. Although b kmdb is still a valid command, the preferred method is to use b k.

Note

Typing b kmdb at the boot prompt causes a system to boot the autodetected kernel type with the kernel debugger enabled, regardless of how the eeprom boot-file parameter is set.

Typing b k at the boot prompt boots whichever kernel the system would otherwise boot if you typed b, with the kernel debugger enabled. The kernel is specified by the eeprom boot-file parameter, or by the autodetected default, if the boot-file parameter is set to a null value ("").

For an example of how to boot a 64-bit capable x86 based system with kmdb, see Example 12–8.

For more information on 64-bit computing on the x86 platform, see the isainfo ( 1 ) , isalist ( 1 ) , and sysinfo ( 2 ) man pages.