- 締切済み
kernelの再構築で64bit&smp対応にしたい
最近パソコンのハードウェア構成を大きく変更しました。 今まではAthlonXP1800+辺りを使っていたのですが、 訳あってマザーボード、CPU、 グラフィックカード、 メモリを交換しました。 CPUはAthlon64 X2 3800+です。 HDDは変更していないのでOSは昔のままです。 CPU変えたんだから動くはずないよね?と思いつつも 起動してみたら普通にLinuxが動きました。 とりあえず動いたものの、CPUは32bitモードの シングルとして認識されているようでした。 せっかくの64bit & デュアルコアなCPUなので、 OSもそれに対応させようとkernelの再構築を 試みてみました。 kernel2.6.17をダウンロードしてきて、 インターネットで調べながらコンパイルしてみました。 make xconfig make clean make bzImage make modules make modules/\install make install と。 とりあえずコンパイルはできて 新しいカーネルは生成された様なのですが、 新しいカーネルで再起動してみても 64bit & デュアルコアになっている様子がありませんでした。 /proc/cpuinfoには問題なくCPUの情報が 表示されているようでしたが。 どうすれば64bit & デュアルコア対応の カーネルを生成することができるのでしょうか? ちなみに、OSの再インストールは最後であって、 あまり使いたくありません。 よろしくお願いします。
- みんなの回答 (6)
- 専門家の回答
みんなの回答
- cynthia4
- ベストアンサー率51% (186/358)
/boot/config-xxxxxx を見れば、どのように compile したか解るのでしょう。 これを、変更して、この定義でmake する様にすれば良いかも知れない ただし動作しなくなる可能性が大きいと思います。 そして library を64bit にして行くと動作するようになるのでしょうか という考えと、gcc で compile する。Makefile の変更で良いのか解りません。 とにかくよく解りません。 私は、今の kernel を少し手直しくらいしかやった事がないので 書き込みしたのが、間違いだったかも知れません。
- cynthia4
- ベストアンサー率51% (186/358)
unknown ですか kernel も困っている? hardware的な、memory へのaccess は 多分32bt のままで、kernel は、64bit になれない。自信なし 全て64bit が理想という事で 64bit でもlibrary は、32/64 を持っています。 application も32bit のものも動作します。 pov-ray でrendering の時間を測定したことがありますが 64bit版がなく、library も32bit を使っていて/らしく 結局、大差なかった様な気が No3 さんのおっしゃるようにメーリングリストに参加した方が良いと思います。
お礼
ありがとうございます。 とりあえず64bit化は急ぎではないので、 のんびり挑戦していこうと思います。 とりあえず、メーリングリストを見てみます。
- cynthia4
- ベストアンサー率51% (186/358)
何で $ uname -a で kernel の情報をみないのでしょうか。 逆に、今の段階で architecture が x86_64 に なった方がおかしい気がする。自信はないが。 kernel だけで 64bit で動作するなら苦労はない。 library 、command などの64bit こちらの方が 大変だと思います。数も多いし、多分依存性なんかも x-window なんかどうします。32bit でcompile をやったことは あるがこれだけでも大変だった。 まあ がんばって下さい。
お礼
ありがとうございます。 uname -aを実行してみると Linux aaa 2.6.17.2-plamoUP #1 SMP PREEMPT Tue Aug 15 10:44:00 JST 2006 i686 unknown unknown GNU/Linux でした。 ライブラリの64bit化はわかるような気がするのですが、 アプリケーション類も64bit化が必要なのですか? 32bitアプリケーションでも動かせると 期待していたのですが…。
- astronaut
- ベストアンサー率58% (303/516)
plamoですか… RedHat系には乗り換えたくないでしょうね^^; でも、No2.の方もおっしゃってるように、Glibcという、おそらくカーネル以上の難関も控えてると思うので、Plamoでは厳しいでしょうね。 どうしてもPlamoでということなら、メーリングリストで話題にした方が良いかも。 中の人の興味を上手く引き出せれば、勝手に盛り上がってくれるかもしれませんよ^^;
お礼
ありがとうございます。 やっぱり RedHat系はちょっと…です。 苦労するのはわかっていてPlamoを選んだのですが、 ライブラリという壁がありましたか。 まぁしかし避けていてはいつまでたっても 成長できなさそうなのでこの機会に とりあえずぶつかってみます。
- FoggyMountain
- ベストアンサー率21% (79/372)
FedoraCore CentOSなど、最初から64bit版をインストールしたほうが早いと思います。 Enq/x86_64を使っていますか? - Fedora JP wiki http://wiki.fedora.jp/?Enq%2Fx86_64%A4%F2%BB%C8%A4%C3%A4%C6%A4%A4%A4%DE%A4%B9%A4%AB%A1%A9 CentOS 4.3 x86_64. http://www.centos.org/ >どうすれば64bit版カーネルを生成できるのでしょうか? カーネルだけ64bitにしても意味ないでしょう。 glibcなど共用ライブラリはどうするのですか?
お礼
ありがとうございます。 他のディストリビューションを使えば 楽なのはわかっています。 わかっていますが、 私はPlamoが気に入っているんです。 だからあえてPlamoで立ち向かってみようと 思ってみたりしただけです。
- astronaut
- ベストアンサー率58% (303/516)
カーネルだけ64bit対応にしても、各種アプリが対応していなければ、恩恵は大きく無い気がします。 今お使いのディストリビューションが書いてありませんが、同系列で64bit対応バージョンがリリースされていれば、そちらに乗り換えるのが楽じゃないですかね?
補足
ご回答ありがとうございます。 ディストリビューションはPlamoLinuxを使っています。 64bitバージョンは見当たりませんでした。 アプリケーションの64bit化は 必要なものから少しずつ行っていく予定です。 質問内容の訂正ですが、 ソースからコンパイルした最新のカーネルは CPUを二つと認識してくれました。 ただ、archコマンドを実行すると「i686」と 出力されてしまいます。 「x86_64」となるべきだと思うのですが。 どうすれば64bit版カーネルを生成できるのでしょうか? よろしくお願いします。
お礼
ありがとうございました。 /boot/config-2.6.16を確認してみました。 すると、CONFIG_X86_32=yとなっている項目を 見付けました。 これが怪しいなと思いつつも、 「n」にするだけでうまくいくのかな? とちょっと不安です。 今はまだ試せていませんが、試してみたいと思います。