Solaris Express Community Edition, build 57: This release includes changes to the GRUB based boot environment to enable the boot loader to directly load and boot the unix kernel.
The GRUB multiboot module is no longer used.
This implementation integrates the previous multiboot functionality directly into the platform-specific unix kernel module. These changes reduce the time, as well as memory requirements, that are needed to boot the Solaris OS on x86 based systems.
Two new keywords, kernel$ and module$, have been added to GRUB to assist in creating menu.lst entries that work with either 32-bit or 64-bit systems. In addition, the bootadm command that manages the menu.lst file has been modified to create file entries for the platform-specific unix module that is loaded by GRUB. During an upgrade, the bootadm command converts any existing multiboot menu.lst entries to unix entries.
The kernel$ and module$ keywords are identical to the kernel and module commands that are used in the GRUB multiboot implementation, with the addition of the $ISADIR keyword. This keyword provides the capability to expand to amd64 on 64-bit capable hardware. If the x86 based system is not 64-bit capable, the $ISADIR keyword is a null value (""). In this case, the system boots the 32-bit kernel.
These changes do not prevent you from booting a newer Solaris kernel with an older implementation of GRUB. Nor do the changes prevent you from booting an older Solaris kernel with a newer implementation of GRUB.
For information about booting an x86 based system with GRUB, see x86: Administering the GRUB Bootloader.