SPARCのアーキテクト
Sun Sparc チップのアーキテクトは、32-bit と 64-bit の判断を行うにあたり確認方法を 「やっぱり Sun がスキ!」 を参考に実施してみた。
チップセット情報
# /usr/platform/`uname -m`/sbin/prtdiag -v System Configuration: Sun Microsystems sun4u Sun Ultra 5/10 UPA/PCI (UltraSPARC-IIi 440MHz) System clock frequency: 110 MHz Memory size: 512 Megabytes 以下、略
プロセッサの情報
# psrinfo -v Status of processor 0 as of: 11/06/2009 18:09:55 Processor has been on-line since 05/28/2009 19:07:46. The sparcv9 processor operates at 440 MHz, and has a sparcv9 floating point processor.
32-bit と 64-bit バイナリの確認
# file /usr/bin/truss /usr/bin/truss: ELF 32-bit MSB executable SPARC Version 1, dynamically linked, stripped
procツール(pldd)でプロセスの使用ライブラリを確認
# ps -ef | grep oracle oracle 429 1 0 May 28 ? 0:54 /export/home/oracle/product/9.2.0/bin/tnslsnr LISTENER -inherit oracle 398 1 0 May 28 ? 0:22 ora_pmon_ora9i64 oracle 400 1 0 May 28 ? 2:52 ora_dbw0_ora9i64 oracle 402 1 0 May 28 ? 13:27 ora_lgwr_ora9i64 oracle 404 1 0 May 28 ? 43:01 ora_ckpt_ora9i64 oracle 406 1 0 May 28 ? 16:00 ora_smon_ora9i64 oracle 408 1 0 May 28 ? 0:30 ora_reco_ora9i64 oracle 410 1 0 May 28 ? 0:03 ora_cjq0_ora9i64 oracle 412 1 0 May 28 ? 480:38 ora_qmn0_ora9i64 oracle 414 1 0 May 28 ? 0:00 ora_s000_ora9i64 oracle 416 1 0 May 28 ? 0:00 ora_d000_ora9i64 root 15966 15952 0 18:14:03 pts/7 0:00 grep oracle
#Oracle の PMON を対象にライブラリを確認してみる。上の出力結果をみると PMON の プロセスID が 398 であることがわかる。pldd コマンドに 398 を渡してみる。
# pldd 398 398: ora_pmon_ora9i64 /export/home/oracle/product/9.2.0/lib/libodmd9.so /export/home/oracle/product/9.2.0/lib/libskgxp9.so /export/home/oracle/product/9.2.0/lib/libskgxn9.so /export/home/oracle/product/9.2.0/lib/libjox9.so /usr/lib/sparcv9/libnsl.so.1 /usr/lib/sparcv9/libsocket.so.1 /usr/lib/sparcv9/libgen.so.1 /usr/lib/sparcv9/libdl.so.1 /usr/lib/sparcv9/libc.so.1 /usr/lib/sparcv9/libaio.so.1 /usr/lib/sparcv9/librt.so.1 /usr/lib/sparcv9/libkstat.so.1 /usr/lib/sparcv9/libm.so.1 /usr/lib/sparcv9/libmp.so.2 /usr/lib/sparcv9/libmd5.so.1 /usr/platform/sun4u/lib/sparcv9/libc_psr.so.1
結果をみると Oracle の PMON プロセスは、sparcv9 を使用しているため、64-bitモードで動作していることがわかります。32-bit の場合は、どこかに sun4u ブランドが現れるはずです。
SPARC V9 ABI の特徴
http://docs.sun.com/app/docs/doc/819-0389/6n2qo5ls3?l=Ja&a=view