ART-linuxを準備するには,まず,x86互換PCを準備します.
いわゆるパソコンですね.ただし,現在は32bitのみの対応のようです.
64bit版はハードウェアドライバの対応なども状況がよくありませんので,
制御をする場合には無難な選択肢でしょう.
PC選択時の注意点
個人的には,多くのシステムで試したわけではないのですが,
- Core2Duoシステムではなぜか上手くいかない例が多い(重い)
- ビデオカードがnVidiaなシステムではなぜか上手くいかない例が多い(重い)
といった経験があります.どうも,ARTの割り込みとビデオカード周り?の割り込みがバッティングし,
非常に動作が重くなるようです.原因については謎とのことですが…
修正は難しく,たぶん改良も期待薄(商品ではありませんからね!)なので,上手く動くハードを探します.
私の経験だと,古き良きPentium4や,corei5のPCでは,nvidiaボードであっても上手くいっていました.
(core2duoシステムがいけないのかな??)
また,AMDのAthlonなんかもいまのところ上手くいっています.CPUしか記憶にありませんが,一応うまくうごいたものを
以下にリストアップします.古いのは詳細が記憶にないのですいません.
- Socket 478系のPentium4,PentiumD + 845 (ART カーネル2.2系にて動作)
- Corei5 Sandy Bridge + H67
- Athlon 64 XP 5800+ + ?
ただし,重いからといってART機能が使えないわけではありません.重くて使いものにならないかもしれませんが…
CUIで動かすと問題なく使える可能性が0ではありません^^;
インストール前の注意として,
Speed step, Turbo boost等の実クロック可変なシステムはBIOSによりoffにしたほうが無難でしょう.
というか,offにしてください.時間計測にも影響を及ぼす可能性が0とは言えません.
それではArt-linuxシステム構築の備忘録です.下記備忘録のため書きなぐります.
Linuxをインストールする
まず,土台となるlinuxをインストールする.現在,ARTがサポートされているのは
公式ページを確認.
ここではUbuntu 10.04 LTSを使う.私はwindowsメインなユーザのため,debianよりUbuntuが好き.
インストールに関する詳細はググってください.windowsとのデュアルブートでもかまいません.
パッケージのアップデートを行う
起動すると,だいたいパッケージアップデートマネージャが出て,
各パッケージのアップデート情報が教えてもらえる.
滞りなくアップデートしてもらってください.
ART-linuxパッチを充てる
Ubuntuを起動し,とりあえずARTパッチを充てる.
公式ページに行き,
Ubuntu 10.04用
linux-image-2.6.32-art_20110914_i386.deb
linux-headers-2.6.32-art_20110914_i386.deb
linux-source-2.6.32-art_20110914_all.deb
のところから,クリックして,パッケージマネージャで開いてそのままインストールする.
あるいは,ダウンロード後,上記の下に記されているコマンドでカーネルをインストールする.
できれば三つともインストールする.(dpkg -i *** の***を三つそれぞれに変えて実行する)
ここで一度再起動をお勧め.
ARTで起動できるように設定する
インストールしたカーネルで,起動するように設定を変更する必要がある.
Windowsとデュアルブートの場合,起動時にカーネル選択が可能となるが,
そうでない場合,自分で起動カーネルを設定する必要がある.
現在,Art-linuxのカーネルで動いているかを確認するには,ターミナルで
# uname -a
として,カーネルの名前が2.6.32-art 等とartが入っていればOK.
設定するには主に二つの方法がある.
1. Startupマネージャを使ってデフォルトを変更する
- デフォルトの起動をARTにできる.簡単.起動ごとに選べない
- Grub2の設定をいじらないと,最低割り込み周期を変更できない
UbuntuのメニューからSynapticを起動し,startupと検索すると出てくる.
これをインストールし,起動して,エントリ群から,Ubuntu, *** 2.6.32-art等と,
artがついているカーネルのものに変更すればOK.完了.
ARTオプションはデフォルトのため,1msec周期以上までの実時間となる.
簡単に起動カーネルを変更できるので,どちらにせよ入れておくのをお勧めする.
2. Grub 2の設定を変更する
- 起動時にメニューを表示し,ARTを起動するか通常のUbuntuで起動するか選択できる.
- 少々複雑だが,一度設定していまえば非常に便利.
設定の要領は以下の通り.
grub2では,grub.cfgが自動的に書き換えられ,bootに登録される.
そこで,/etc/grub.d/40_customにカスタム項目を追加する形となる.
二つターミナルを開き,それぞれ
# sudo gedit /etc/grub.d/40_custom
# gedit /boot/grub/grub.cfg
を実行する.grub.cfgの下の方に,
menuentry 'Ubuntu, with Linux 2.6.32-art' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod ext2
set root='(hd0,1)'
search --no-floppy --fs-uuid --set **********
linux /boot/vmlinuz-2.6.32-art root=UUID=********** ro quiet splash
initrd /boot/initrd.img-2.6.32-art
}
こんな感じのエントリーがある.名前が'Ubuntu, with Linux 2.6.32-art'となっているからわかるとおり,
これはart-linuxのエントリである.これをコピーし,/etc/grub.d/40_customの一番下に張り付ける.
以降,張り付けた/etc/grub.d/40_customだけ弄るので,grub.cfgは閉じておくと安全.
まず,ARTオプション(ART=***で,実時間割り込み周期の最短時間が***μ秒となる)を与える.
linux /boot/vmlinuz-2.6.32-art root=UUID=********** ro quiet splash
を
linux /boot/vmlinuz-2.6.32-art root=UUID=********** ro ART=500 quiet splash
に変更する.500を100等に変更したら,もっと割り込み周期を小さくできるが,負荷はちょっと大きい.
ハード構成にもよるが,100μ秒くらいがせいぜいだと思っている.
次に,エントリ名'Ubuntu, with Linux 2.6.32-art'を好きなように(たとえば'ART-Ubuntu, ART=500'など)変更する.
ここで, 'quiet splash'を, 'quiet text'に変更すると,CUIモードで起動できるため,たとえば上記エントリを
2つコピーしておき,
menuentry 'ART-Ubuntu' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod ext2
set root='(hd0,1)'
search --no-floppy --fs-uuid --set **********
linux /boot/vmlinuz-2.6.32-art root=UUID=********** ro ART=200 quiet splash
initrd /boot/initrd.img-2.6.32-art
}
menuentry 'ART-Ubuntu CUI' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod ext2
set root='(hd0,1)'
search --no-floppy --fs-uuid --set **********
linux /boot/vmlinuz-2.6.32-art root=UUID=********** ro ART=200 quiet text
initrd /boot/initrd.img-2.6.32-art
}
などとしておくと,便利かもしれない.制御時にはCUIの方がお勧めだし,
先述の重くなるcore2環境などでも,若干軽くなるかもしれない.CUI環境については詳細は後述.
/etc/grub.d/40_customを保存しておく.
(この時点で,StartupManagerを起動すると,エントリーが追加されているので,それで選択してもよい)
次に,起動時メニューを表示できるようにする.
ターミナルにて
# sudo gedit /etc/default/grub
としてgrub設定ファイルを開く.そして以下のように編集する.
1. GRUB_HIDDEN_TIMEOUTをコメントアウト
# GRUB_HIDDEN_TIMEOUT=0
2. GRUB_HIDDEN_TIMEOUT_QUIETをfalseに
GRUB_HIDDEN_TIMEOUT_QUIET=false
3.必要があればGRUB_TIMEOUTの時間を任意に変更(単位は秒)
GRUB_TIMEOUT="30"
4. リカバリモードがうっとうしいということならば,下記を有効にする
GRUB_DISABLE_LINUX_RECOVERY="true"
5. /etc/default/grubを保存し,閉じる.
6. memtestも不要ならば,ターミナルで下記を実行し,実行権限を削除しておく
# sudo chmod -x /etc/grub.d/20_memtest86+
7. update-grubで変更内容を適用
# sudo update-grub
再起動すると選べるようになっているはず.
以上でART-linuxで起動する準備は完了です.
CUIでのart-linuxについて
Ubuntuでは,これまでのようにinit 3とかしてランレベルを変更できないらしい.
上記のGrubの設定か,ログイン時にCtrl+Alt+F1を押すことでCUIモードに行ける.
ただし,CUIでは日本語が◆として表示されるうえ,日本語入力はできない.
表示側だけは,jfbtermを用いるとちゃんと表示できるようだ.
synapticであらかじめインストールしておくか,ターミナルにて
# apt-get install jfbterm
# jfbterm
としてインストール+実行することで日本語は表示される.
(インストール中,y/n?が聞かれる.文字化け中だとなにがなんだかわからないが,
yとして答えるとインストール可能である)
CUIには大きな問題がある.日本語版Ubuntuでは,デスクトップが,カタカナで「デスクトップ」
というディレクトリとして作られている.CUIではカタカタが打てず,移動できない(!じゃぱにーずの悲劇!).
あらかじめ,GUI環境にて,desktopなどの名前でシンボリックリンクを作っておかないとはまる.
もうひとつ問題がある.
CUIからGUIに移動するには,startxとすれば良いが,root権限が必要であり,
sudoやsuによってrootになりstartxするとrootとしてGUIにログインされ,
通常のGUIログイン時のデスクトップ設定が反映されない.
これで困る場合はおとなしくrebootするしかないようだ??>情報求む
個人的には開発はGUI,実行はCUIでやりたいため,これができないと不便なのだが…
そもそも実験システムなので,rootでGUI環境を作ってしまうという手も無くはなさそうだ.
本日の来訪者: -
昨日の来訪者: -
来訪者累積: -
最終更新:2011年09月20日 20:50