Switch to 64-bit kernel on Solaris x86

I know this is probably a dumb question, but all of my Google and forum searches have been coming up empty. I mostly work with SPARC.

How do you switch Solaris on x86 from 32-bit to 64-bit? When I do a uname -a on a newly installed machine I get "SunOS XXXXXXX 5.10 Generic_144489-17 i86pc i386 i86pc" which I know means I'm only running on the 32-bit kernel. Now I have a 64-bit driver I need to load, so I need to switch to 64-bit. I remember seeing instructions on how to switch it in the past, but can't seem to find it.

Thanks in advance!

This is incorrect. "uname -a" doesn't provide 32 bit/64 bit information.
To know if your kernel runs in 32 or 64 bit mode, use this command:

isainfo -kv
1 Like

Looks like I am running in 64-bit then. Thanks. Does Solaris just auto-detect the hardware, and run in 32-bit or 64-bit depending on the hardware available?

Anybody know the answer to this? It seems like a simple question, but I haven't found any documentation on if it auto-detects which kernel to load, or if it's a manual setting.

Thanks

If your HW is 64-bit capable then Solaris automatically loads x64 kernel.
To manually load 32 bit kernel you need to modify grub options. For testing purposes you can play with grub prompt and then remove from boot menu -64 option or similar. For permanent loading you need to edit grub.conf file.
To see content of your GRUB you can issue as root

bootadm list-menu

and look under genunix options for -64 or something simmilar

1 Like

Yes, the way to disable 64 bit depends on the Solaris release/update. For latest ones, the simpler method is to remove $ISADIR from the grub entries.

Note that 32 bit kernel support will be dropped starting from Solaris 11. End of Feature Notices for Oracle Solaris 11 Express

That's a good link, thanks

um, sorry to interrupt, but doesn't Solaris 10 require 64bit CPU?

on SPARC hardware it does, but it can run 32-bit on x86 hardware