Mマシンで動かすPCメモPC関係のメモ、気付いたこと。OSをいじって遊んでいます。OSのカスタムビルドを配布しています。ないブログに表示されています。新しい記事を書く事で広告が消えます。ネット閲覧程度ならまだ十分使えるのに選択肢が結構狭まってしまっています。Mマシンでブートすると以下のようなエラーがでて動かないことが多かったと思います。(簡単に再現するためVirtualBoxを使っていますが、実機でも同じエラーになるはずです。OSといったいわゆる軽量Linuxを使うのが普通だったのかなと思います。Mマシンでもブートできるようになりました。MもOKだと思いますが実機がないので試していません。Mマシンに入れる気はしないので試していません。Mマシンでブートするとりあえず技術的な話は置いておいて、まずはCDからのブート方法だけを書いておきます。T42でためしています。lubuntuのダウンロード方法やCD-ROMへの焼き方などはここでは触れません。CDからブートした後のメニューでの操作方法についてのみ書きます。CDからブートします。言語選択メニューが表示されるので日本語を選びますメニュー画面が出ます。F6を押すと以下の画面になります。ESCをおして選択肢を消します。画面下に起動オプションという欄があります。forcepaeと打ち込みますRETURNキーを押すとブートが始まります。forcepaeの指定が効いた場合は以下のような表示が出ます。WARNINGと出ていますが、これはforcepae自体がちょっと無理やりな機能だという意味で出ています。Mなら100%ブートできるというわけではなく、もしかしたら動かないかもしれません、ということです。この点については後述します。するとおなじみのスプラッシュ画面がでますが、うちのThinkPadでは色がおかしくなってますww無事起動しました。この後はあとは左上のアイコンから普通にインストールできます。Mマシンだからといって変わることはありませんので割愛します。CDからのブート時にforcepaeを指定して起動した場合、HDDにインストールするとgrub.cfgにforcepaeの指定がちゃんと反映されるようになっていますので、以降は何もしなくても普通にブートします。Mも可能だと思うのですが試してはいません。結局forcepaeって何?結局このforcepaeは何をやっているのか、というと、物理アドレス拡張(PAE)というCPUの機能が今起動しようとしているCPUにあるかどうかのチェックをバイパスし、PAEが使えるCPUとみなして強引に起動をかけてしまおうというものです。Linuxカーネルは、起動時にCPUがどんな機能をサポートしているかを確認します。MはPAEをサポートしている、という情報を返してきません。MはPAEが使えないのでだめだ、というエラーを返してきます。Mは問い合わせにしかとするだけで、実際にはPAEが使えるようなのです。隠し機能というやつです。FlagからPAEが抜け落ちているのかはわかりません。Mでも動けるようにしたわけです。M以外で本当にPAE機能がないCPUや、VirutalBoxなどの仮想環境でPAEをオフにした場合などはたとえforcepaeを指定しても以前と同様のエラーになります。PAEカーネルを使っているディストリビューションでないと動きません。M向け修正でのカーネルパッチの内容は以下の場所で見ることができます。capableこのパッチを見れば、forcepaeが有効になるCPUのタイプもわかります。引用するとこんな感じです。{いわゆるFamily6、model9または13のCPUでだけforcepaeが効くようになっています。Mという名前の付いたCPUがすべてこれに当てはまるかは把握していません。model9/13なCPUならみんなPAEを隠し持っているかというとそれも100%断言できるかは定かではありません。上でWARNINGを出していたのはその辺をふまえて「ちょっと無理やりなんだぜ?」と言っているんだと思います。Mにはこの修正の影響が出ないようになっています。当初カーネルパラメータはforcepaeと言っていたようですが、もっと新しい記事ではカーネルパラメータの名前がpaeに変わっています。lubuntuには、forcepaeと言っていた当時のパッチが取り込まれたようですね。T42でもブートまでは持っていくことができています。CPU周りよりも周辺機器を動かすのが大変です。無線LANが動きません。有線でつなげば一応つかうことはできます。トラックポイントは認識しますがタッチパッドは認識しません。他にも起動時のスプラッシュ画面が出なかったり、起動直後は画面がピンク色でいったんターミナルに切り替えて戻すとちゃんと表示されたりします。他にもいろいろ問題がありそうです。T42は苦戦していますが、今のところ、CPU周りの問題だけはクリアになっていて、ブートだけなら問題なくできます。Mマシン向けにビルドする際でもCPU周りのカスタマイズ方法は参考になるかもしれませんので、この辺の話はまた別途書きたいと思います。OSのカスタムビルドを公開しました。興味がありましたらお試しいただければと思います。「本当にPAE機能がないPentiumIII以前のCPU」という記載がありましたが誤りであるというご指摘をいただきましたので訂正いたしました。ランキングに参加してみました。クリックしていただければ嬉しいです。OSが動かせないかと試行錯誤しています。編集コメントありがとうございます。OSイメージは配られていないと思います。自分でビルドする必要がありますがデフォルトのままビルドしても動作しません。最低でも以下のカスタマイズが必要です。※ただし、Chromium本体に関しては有効にしてコンパイルする。T42はUSBコントローラに欠陥があるようでUSB2.0モードではブートできない可能性があります(URL参照)。この場合はLinuxカーネルにパッチを当ててUSB1.1モードで強制的にブートできるようにする必要があります。これらのノウハウはまだ記事にしていませんが記事にするだけで相当に時間がかかります。T42対応のイメージを配布しようと思いますが、お盆は忙しいので早くても8月後半から9月になると思います。OSのカスタムビルドの配布をはじめました。良かったらお使いください。編集やたらとPAEについて誤情報をまき散らしてる人が多くて困るので。P6アーキテクチャ以降のCPUでPAE機能を持っていない物は(Athlon系を含め)実質有りません。Pro時代ですらCPU8発に16GB積めるなんて化け物マザーがありました。対象OSはWindowsではなくUNIXやBSDでしたが。flagが設定されておらず、OSからの問い合わせにPAEの有無を返すようになっていなかっただけです。PAEが公式の機能となって以後は、non-PAEを謳ったものは、PAE機能が正常に働かない以前なら不良コアとして撥ねられたものも製品として出荷されている可能性があることは否定しません。様ご指摘ありがとうございます。私の認識に誤りがありました。記事の方訂正いたしました。