how to tell whether running 32-bit or 64-bit

how to tell whether running 32-bit or 64-bit

Post by R » Thu, 13 Sep 2001 22:29:20



I am running an AIX 5.1.0.0 machine. How can I tell whether it's
running 32-bit or 64-bit? Thanks,

RR

 
 
 

how to tell whether running 32-bit or 64-bit

Post by Paul Landa » Fri, 14 Sep 2001 07:45:18


There are three layers you have to be concerned with:
(A)     user-space (application)
(B)     kernel
(C)     h/w
Some combinations of 32/64 will work, some won't:
             1  2  3  4  5  6  7  8
           -- -- -- -- -- -- -- --
        usr 32 32 32 32 64 64 64 64
        ker 32 32 64 64 32 32 64 64
        h/w 32 64 32 64 32 64 32 64

Combinations 3, 5, 7 are invalid.
Combinations 4, 8 require AIX 5.1 (for the 64-bit kernel).

(A) The 64-bit user-space support is provided by the bos.64bit
    fileset and enabled with the 'smit load64bit' menu.  You can
    also test this by running the '/etc/methods/cfg64' command
    (see the entry in /etc/inittab) and checking the return code.

(C) All recent pSeries boxes have a 64-bit CPUs, including:
     * RS/6000 7013 Models S70, S7A
     * RS/6000 7015 Models S70, S7A
     * RS/6000 7017 Models S70, S7A, S80
     * RS/6000 7025 Models H80, F80
     * RS/6000 7026 Models H70, H80, M80
     * RS/6000 7043 Models 260, 270
     * RS/6000 7044 Models 170, 270
     * pSeries 680 Model S85
     * pSeries 640 Model B80
     * pSeries 660 Model 6H1
     * pSeries 620 Model 6F1
   This list is from the AIX 5.1 /usr/lpp/bos/README file.

(B) This is also from the AIX 5.1 /usr/lpp/bos/README file:
      It is possible to switch between the 32-bit and 64-bit kernels
without
      reinstalling the operating system. This can be done by modifying
the
      /usr/lib/boot/unix and /unix to be a symbolic link to the binary
for the
      desired kernel, running the bosboot command to write a new system
boot
      image, and rebooting. The path name of the 64-bit kernel is
      /usr/lib/boot/unix_64 while the path names of the uniprocessor and
      multiprocessor versions of the 32-bit kernel are
/usr/lib/boot/unix_up and
      /usr/lib/boot/unix_mp.
   In other words, do:
     ln -fs /usr/lib/boot/unix_XX /usr/lib/boot/unix
     ln -fs /usr/lib/boot/unix_XX /unix
     bosboot -a
     shutdown -Fr
   where XX is:
    up - when you want to switch to the 32-bit UP kernel,
       e.g. 44P-170
    mp - when you want to switch to the 32-bit MP kernel,
       e.g. 44P-270
    64 - when you want to switch to the 64-bit kernel

Be careful to not try and boot the unix_up kernel on an mp
system, or a unix_64 kernel on a 32-bit h/w.  It will fail
and you'll have to use maintenance mode to fix it.

You can also write a small program like:
  #include <sys/systemcfg.h>
  #include <sys/utsname.h>
  main ()
  {
    struct utsname myuname;
    uname (&myuname);
    printf ("                 \n");
    printf ("Current Values   \n");
    printf ("-----------------\n");
    printf ("aix version = %s \n", myuname.version);
    printf ("__cpu64()   = %i \n", __cpu64());
    printf ("KERNEL_32   = %i \n", __KERNEL_32());
    printf ("KERNEL_64   = %i \n", __KERNEL_64());
    printf ("num cpus    = %i \n", _system_configuration.ncpus);
    printf ("proc arch   = %i \n", _system_configuration.architecture);
    printf ("-----------------\n");
    printf ("                 \n");
  }
to display important values.

Paul Landay

 
 
 

how to tell whether running 32-bit or 64-bit

Post by Luteri » Sat, 15 Sep 2001 03:02:50


bootinfo -y

-Lute.

Quote:> I am running an AIX 5.1.0.0 machine. How can I tell whether it's
> running 32-bit or 64-bit? Thanks,

> RR

 
 
 

how to tell whether running 32-bit or 64-bit

Post by Gus Schlachte » Sun, 16 Sep 2001 02:08:32



> bootinfo -y

> -Lute.

> > I am running an AIX 5.1.0.0 machine. How can I tell whether it's
> > running 32-bit or 64-bit? Thanks,

> > RR

Not exactly.  "bootinfo -y" shows the system capability.  "bootinfo -K" shows
the running kernel.

Gus

--
--------------------------------------------------

--------------------------------------------------

 
 
 

1. Determining whether 64-bit or 32-bit kernel is running?

I had a question from another sysadmin the other day that stumped me;
is there a way in Solaris to reliably determine if the machine is
currently running the 64-bit or the 32-bit kernel?  Preferably without
crashing the machine or doing some sort of kernel debug.  The question
comes from someone who is trying to write a script to determine which
version of a freeware package to install in an automated fashion (as
some, like pidentd, do not work if the 32-bit-compiled version is used
on a 64-bit machine and vice versa).  We checked in a couple places
you might guess, like uname, prtdiag, and /etc/release, but none of
those contain that information, and we didn't see anything useful in
/proc either.  Any ideas?

--
Steve Hilberg <Necromancer>               CITES Workstation Support Group  

      Member, APAGear                   I don't even know what CITES stands
   http://www.apagear.org            for, so I don't speak for them.
-----------------------------------------------------------------------------
"As we were forged we shall return, perhaps some day.      | VNV Nation,
I will remember you and wonder who we were."               |    "Further"

2. adaptec AHA-150X/1510/132X AIX-CX60SCI

3. How Can we tell Solaris OS is running 32-bit or 64-bit?

4. NAT from remote hosts

5. Solaris 2.x :- How to tell if & configure 64-bit vs 32-bit

6. intermittent routing problem

7. Need to run 32-bit instead of 64-bit on Solaris

8. y2k testing question

9. Performace on 32-bits applications running on 64-bit kernel

10. 32-bit Core files on 64-bit Sysetm

11. 64-bit Solaris 7: wasn't Solaris 2.6 also 32-bit?

12. 64-bit to 32-bit OS change

13. REQUEST: 64-bit integer math on 32-bit processor