古い 32 ビット バージョンの SGE execd を実行する 64 ビットの Debian Squeeze システムを使用しています。コマンドラインで実行するuname -m
と、期待どおりの結果が得られます: x86_64
. しかしuname -m
、同じホストの SGE スクリプト内で実行すると、出力はi686
. これにより、 からの正しい読み取りに依存するものはすべて壊れますuname -m
。
私は問題を回避できるので、私の質問は実用的というよりも学術的です。uname のソース コードをダウンロードしましたが、マシン アーキテクチャ データのプル元がどこにあるのかわかりませんでした。uname -m
が 64 ビットの親プロセスではなく 32 ビットの親プロセスで実行されているため、この問題が発生していると思います。だから私の質問は - その仮定は正しいですか? もしそうなら、なぜ uname はそれを実行するプロセスのアーキテクチャに影響されるのですか?