3月 252012
 

自宅の MacBook がブートしなくなってしまいました。とわいつつ、実は MacBook は二台持っていて、HDD がいかれたっぽいのは以前買った初代 Core2Duo 版でのほうで普段から常用している現行版 MacBook はまだ元気なのでその点は安心しているのですが;-)。

さてさて。ブートしなくなった Mac は以下のような画面を表示して停止してしまいます。

IMG_1443_marshal_hdd_2.jpg

facebook にこれを掲載したとき、色々コメントを頂きました。この画面は割と良く出てくるらしいですね。ブートデバイスが何も無い状態のときに表示されるらしいです。HDD 逝ってしまっているとか CD-ROM/DVD ドライブが認識しないとかの状態に出るらしいです。

そして、今回、もう一個怪しげなアイコンが表示されました。

IMG_1458_marshal_hdd_3.jpg

これは見た人がいないみたいなので、もしかしたら僕は非常にラッキーだったのかもしれません。多分「もうダメじゃん。」的なアイコンなんでしょぅなぁ・・。けど、何かどうダメなのか全然解らない・・f(^^;;。

と、いうことでアキバに HDD を買いに行きました。もともとは S-ATA 250GB くらいのを狙っていったので安いので 4,980yen くらいかなぁ。と思っていました。 MacBook 自体はもう古いものなので SSD にする必要も無いし転送速度も ATA300 なのでそんなに高くはないだろう。みたいな感じでアキバの PC ショップを俳諧するんですけどもね。

で、見つけたのがあやすぃー HDD ;-)。

IMG_3202_marshal_hdd_1.jpg

MARSHAL とか言う初めて見るメーカのものでした。今回購入したのは 2.5 インチ S-ATA 250GB ATA300 5,400 回転のやつで値段がなんと 4,180yen。 有名どころで安い SUMSUNG よりも 1,000yen くらい安いのであります。
今回購入したのはソフマップだったのですが、お店の人に聞いてみると MARSHAL 自体は商社で実際に HDD を作っているメーカではないとのこと。もの自体は OEM らしいです。

上記の写真のカバーを見ると大体メーカ解りますかねぇ? HITACHI のデザインでないことだけは確かですが;-)。

まぁ、もともと古い MacBook に入れるつもりで買ってきたのでこーいうのでも良いか。記事ってか、ネタになるしなー。みたいな感じで試したのであります;-)。

MacBook に換装し OS X Lion をインストールしましたが、無事にインストールできてちゃんと動いております。 HDD 的には特に問題も無いようですし、MacBook も無事に起動したので今回はおーるおっけーってところでしょうか;-)。

1月 172012
 

前回のエントリーでは「購入した。」って書いたのですが、今回は実際に FreeBSD で動作確認したことについて書いてみます。

インストールには FreeBSD/amd64 9.0-RELEASE を利用したのですが、その後 9.0-STABLE にしました。なので今の環境は 9.0-STABLE です。そしてこの記事の内容も 9.0-STABLE についてです。気がついた点をツラツラと書いてみます。

1. 温度取れない
どーあがいても CPU 温度が取れません。amdtemp.ko や ports の sysutils/k8temp を利用しても CPU の温度が取れません・・。orz。 CPU のステッピングの問題なのかマザーボード(とか ACPI)の問題なのか定かではありません。ただファンの音だけで大体の温度を感じることしかできません・・。

2. Cool`n’Quiet 2.0 は無事に動作する
sysctrl の dev.cpu.0.freq_levels で CPU 可変になります。ただ、BIOS の設定で表示が二種類できます。前回のエントリで掲載した sysctrl の結果では以下のように表示されています。

dev.cpu.0.freq_levels: 3300/-1 2887/-1 2475/-1 2062/-1 1650/-1 1237/-1 825/-1 412/-1

 
ところが BIOS の設定で HPC (High Performance Computing) というのがあって、この設定を disable にすると以下のように表示されるようになります。

dev.cpu.0.freq_levels: 3300/13635 3000/10925 2625/9559 2400/7417 2100/6489 1800/4620
1575/4042 1400/3195 1225/2795 1050/2396 875/1996 700/1597 525/1198 350/798 175/399

 
BIOS の設定で HPC を無効にしたほうが良いですね。PRIMERGY MX130 S2 というのはラックにドドドと入れて HPC にも対応する製品のようですしね。

ちなみに HPC disable 時の dev.cpu.0.freq_levels の値には消費電力が表示されるようになりましたが、この値はちょっと変ですね。FX-6100 は Max 3.3GHz での動作時には 95W のはずなので、表示されている値を七倍する必要があります。しかし、FX-6100 ってのは CPU クロック変動の幅が広いですなぁ。

3. powerd 起動っ!! しかし・・
上記のように Cool`n’Quiet 2.0 が動作するので powerd を起動したら以下のようなメッセージを延々吐き出すようになってしまいました。

hwpstate0: set freq failed, err 6

 
dev.cpu.0.freq では速度が可変になっているので動作的には問題が無いのですが、結構ウザいです。ウェブで色々探してみると powerd を落とせとか /boot/loader.conf に以下の設定をしろ。みたいに書かれています。

hint.acpi_throttle.0.disabled="1"

 
が、これらの対処法を適用すると CPU クロックが Max の 3.3GHz に張り付いてしまうのでもったいない。じゃ。ということでソースコードを改修し、このログを出ないようにしました;-)。 /usr/src/sys/kern/kern_cpu.c の 406,407 行目の device_printf の部分をコメントアウトしてカーネルを再構築するだけで作業は終了です。ただ単にメッセージを出力しなくするだけの改修です。

4. smartctl でディスクの温度を取る
こちらも BIOS の設定で取れる場合と取れない場合があります。 BIOS の SATA Configuration の設定で External SATA Port を enable にすると smartctl が /dev/ada0 を見つけられなくなります。このオプションは disable にしておいたほうが良いでしょう。

僕は Seagate の ST1000DM003-9YN162 という、 1 テラ、 1 スピンドル、 1TB の HDD を利用しているのですが、smartctl の Airflow_Temperature_Cel を見ると今のところ温度は 20 度前後で推移しているので PC 内の換気が上手く行っているとか HDD 自体の温度が高くならないとか、そんな印象を受けました。

5. シリアルポート
シリアルポートのある PC をいじるのは随分と久しぶりです。随分前から sio0 から uart0 に変更になっているのでどうだろう?と思いトライして見ました。以前よりも設定はグっと楽になりましたね。順番にその設定内容を見ていくことにしましょう。

o. /etc/ttys の変更
ttyu0 というのが uart0 に対応したシリアルポートになります。default の設定から以下のように変更します。

ttyu0 "/usr/libexec/getty std.9600" vt100 on secure

 
速度は 9600 のままとしておきました。

o. /boot/loader.conf に追加設定
以下の行を追加します。

boot_multicons="YES"
hint.uart.0.flags="0x10"
console="comconsole,vidconsole"

 
設定が完了したら PC を再起動します。するとあとは無事にシリアルポートが利用できるようになるかと思います。 /boot.config も設定してないし、boot2 とかも変更する必要がありませんでした。

あ。しかし、uart0 の認識にも二パターンありました。

起動時の認識がこのパターンだと利用できません。

uart0: <Non-standard ns8250 class UART with FIFOs> port 0x3f8-0x3ff irq 4 flags 0x10 on acpi0

 
こちらのパターンで認識すると利用できるようになります。

uart0: <16550 or compatible> port 0x3f8-0x3ff irq 4 flags 0x10 on acpi0
uart0: console (9600,n,8,1)

 
どうして上記のようになるのか解らないのですが、 kldload uart0.ko すると上のようになるような気がします。僕の場合は結局カーネルモジュールは利用せずに、カーネルコンフィグのファイルに device uart と書いてしまいました。

まぁ、 uart に限らず、今回はカスタムカーネルのコンフィグファイルを利用したのですが、 GENERIC カーネルでは無事に動作するのにカスタムカーネル+ロードモジュールでは動作しないということが多々おきました。以下にその一例を書いておきます。

・パーティションを認識してくれなかった -> options GEOM_PART_GPT を消したのを復活
・cs0 を認識せずリブート -> ロードするカーネルモジュールの見直し
・カーネルパニック -> bvox のモジュールを /boot/loader.conf に書くのをやめた

などなど・・。けっこう苦労が多かったのは PC が駄々っ子なのか 9.0-STABLE が駄々っ子なのか・・。もう既に何台も 9.0-STABLE を利用しているので安心しきっていた部分はありましたね。

これでだいたいサーバとしての設定が完了したかなー。と、言う感じはします。良かった。それにしても CPU 温度が取れないのはちょっと痛いですね。STABLE 利用してバージョンが上がるのを待つかなぁ。と言う感じがしないでもないです。

まぁ、僕的には今回のお買い物は一応満足の行くものとなりました。ちなみに今ではもう既に virtualbox-ose-4.0.14 で Windows Server 2008 R2 が動作しています。ゲスト OS には二個の CPU と 4GB のメモリを上げているのですが、そーすると Windows Server 2008 R2 ってのはサクサク動作するんですねぇ。感激;-)。

PRIMERGY MX130 S2 のネタはこれで終りですが、機会があれば、また update があれば書いてみたいと思います。

1月 152012
 

自宅で動作しているサーバがあるのですが、このたび新調しました。今回購入したのは今話題となっている富士通の PRIMERGY MX130 S2 です。定価で 12,800yen ですが 1,000yen 割引でした。

最初のスペックはたいしたこと無いのでここにアキバで PC パーツを買ってきてドドドっとハデにパワーアップしてみました;-)。

IMG_2772_PRIMERGY_1.jpg

強化・変更した点は以下の通り。

・CPU: FX-6100 (6Core 95W)
・メモリ: 16GB (4GB x 4)
・HDD 1TB (1 プラッタ 1GB)
・NIC の追加

かかった費用は CPU 12,000yen、メモリ 6,000yen、HDD、9,500yen、NIC 1,000yen って感じでしょうか。本体含めて 40,000yen 弱で豪華な構成となりました;-)。

それにしてもデスクトップ PC を購入するのってどれくらいぶりだろう?今使っているのが Socket AM2 のAthlon64 X2 なのでもうずいぶん古いので 4,5 年ぶり?って感じです;-)。

さてさて。この PC は自宅サーバ用なので早速 FreeBSD/amd64 9.0-RELEASEをインストールしてみました。ここから先は FreeBSD でのインストールや使い勝手についてちょっと書いてみたいと思います。

・FreeBSD/amd64 9.0-RELEASE のインストール
CD-ROM からブートして FreeBSD Installer でインストールしていきます。 HDD のパーティションのところで auto を選択したら GPT(GUIDパーティションテーブル)になってしまいました。 MBR が好きな方は明示的に指定したほうが良いです。

8.2-RELEASE などと同様の MBR でインストールするとパーティション名は ada0s1 とかになるのですが、GPT を利用すると ada0p1 になります。 MBR は “s” で GPT は “p” ですね。

後もう一点。GPT を利用する場合はカーネルコンフィグファイルから options GEOM_PART_GPT を消さないようにしましょう。もし消してしまった場合はカーネルモジュールから geom_part_gpt.ko をロードするようにしましょう。
GPT を利用していてこのオプションが無い場合、 mount root fs のところで mountroot> プロンプトが表示されデバイスを指定してもマウントできない状態になってしまいます。

注意点はこの一点だけでした。後は比較的すんなりと動作します。以下は FreeBSD/amd64 9.0-RELEASE の情報です。必要であれば見てください。

dmesg
sysctrl -a
pciconf -lv

・FreeBSD を利用していて気がついた点
1. FX-6100 もサクっと認識するしメモリも 16GB 利用できる状態です;-)。

2.snd_hda が存在するので pcm0 が生えてきます。が、スピーカを接続する端子がないので音が出ません。マザーボード上にフロントに出すピンがあればそこから利用かのなのですがねぇ。PCI スロットがもったいないとか、ロープロファイルに対応していないサウンドカードとかあるので、USB-DAC を利用したほうが良いかもしれません。

・ベンチマーク
FreeBSD をインストールした誰もが一度はベンチマークとして確認する行為をしてみました;-)。 /usr/bin/time make buildworld の結果です。

比較は現在サーバとして利用している PC と同じスペックの PCで、以下の二つでの比較です。

AMD Athlon 64 X2 Dual Core Processor 4600+ (2456.27-MHz K8-class CPU)
AMD FX-6100 Six-Core Processor (3300.07-MHz K8-class CPU)

・FX-6100
o./usr/bin/time make -j6 buildworld
    2057.94 real 7609.08 user 1234.47 sys

o./usr/bin/time make -j6 buildkernel
      436.09 real 786.07 user 137.37 sys

・Athlon64 X2
o./usr/bin/time make -j2 buildworld
    57596.74 real 8917.03 user 1011.26 sys

o./usr/bin/time make -j2 buildkernel
      846.78 real 948.68 user 120.66 sys

この二つの違いは以下かな。

・CPU クロック
・コア数
・メモリ

CPU の数だけ -j オプションに付加します。 FX-6100 は 上記の違いもあるので Athlon64 X2 の三倍くらい行ってくれるかなぁ? とか思ったのですが 2.5 倍程度でしょうかね。シャア専用にはなれない;-)。

さてさて。この PC は 6Core でメモリを 16GB 積んだので何にしようか悩んだのですが、ベース OS は FreeBSD にしてそこに Virtualbox をインストールして Windows Server 2008 R2 を動作させ、自宅で SharePoint Server でも起動するかねぇ。とか、漠然と思っています;-)。と、いうか、Windows Server は検証の意味も込めてインストールすることは決まっているのですけどもね。

と、いうことで PRIMERGY S2 は FreeBSD においてもいとも簡単に動作しております。

あ。一点。シリアルポートがイマイチ動作しないのは今から再度確認する予定;-)。

12月 152011
 

廃棄物の中から面白いモノを見つけたのでもらってきちゃいました;-)。

CPU ボード。みてくれはこんな感じです。

IMG_0687_CPUBord_1.jpg

簡単にスペックを書くと、

・x86 互換 CPU Cyrix MediaGX with MMX-S CPU 300MHz
・メモリ SO-DOMM 64MB (SO-DIMM Socket)
・NIC rl0 x2
・USB2.0 x2
・IDE
・SD カードスロット (IDE Slave 2 で認識)
・VGA (D-SUB 15pin)

こんな感じです。製品自体は 2002 年製ですからアーキテクチャ的にはずいぶんと古い部類に入りますね。

それにしても、廃棄物だったので持って帰ってきたのですが、自宅で電源を入れてみるとビッとか音が出て BIOS 画面が表示できたので動くことは動くと思います。

電源は最近よく売っている「IDE->USB 変換アダプタ」に付いてくる、HDD や CD-ROM に接続する AC アダプタの電源で動作したので 12V 5A で OK ってことですね。これは非常に省電力で嬉しい。実は電源の部分が一番の悩みのタネだったのでサクっと起動してくれたのが嬉しかった;-)。

IDE に CD-ROM を接続したり 2.5 インチ HDD を接続すれば OS も起動してくれそうです。スペック自体が低いのでどうしようも無いような気がしないでもないですが、一応 i386 32bit なので FreeBSD なら簡単に動作するであろうと思っています;-)。

こちらが箱です。台湾のとあるメーカのものらしいです。

IMG_0688_CPUBord_2.jpg

CPU ボードのサイズはだいたいはがきのサイズです。なので、 NAS 箱とかに組み込めそうです。PC の 5 インチスロットの中に入れることもできるので 一個の筐体で二つの PC も可能ですね。お。ブレードだ;-)。

ケースがないのがちょっと痛いですが、まぁ、しばらくは遊んでみようと思っています。最後、使う時にはどうしようかなぁ・・。ルータにするには NIC のポートが少ないし、NAS 箱にする感じかなぁ・・。基本的にこーいうのって「OS が起動したー。やったーっ!!」などと NetBSD 的な発想で、そこで終わってしまう感じがしないでもないのでいすが・・f(^^;。

あーしてみたら。こーしてみたら。とか、皆さんのご意見お待ちします;-)。

11月 142011
 

以前に一回「USB 無線 LAN 色々、FreeBSD で試してみた。」と言うエントリを書いているのですが今回のその続編。二回目です。

今回は FreeBSD のバージョンを 9.0-RC1 にして、新たに購入した機器の動作確認をしてみました。とわいつつ、実は前回も書いているのですが、if_run と if_rum の機器を持ってくればほとんどが動作するんですけどねぇ・・。

今回試した USB 無線 LAN 機器は以下の通り。まずは写真を。

IMG_2549_RadioLan2_1.jpg

順番に見ていくとしましょう。

1. Planex GW-USNano2-G
写真の上のほうにある黒くてチッコイやつです。こいつは FreeBSD で動作しない、ドライバが書かれていない、例の Realtek RTL8192CU を使っているヤツです。またまたま買ってしまい大失敗しました・・。orz。 NetBSD だと動作するんですけどねぇ。

で、今回も ndis でトライしてみたんですが、USB 機器はどうしたら if_ndis に結びつけるのか結局解りませんでした。sys/dev/usb/usbdevs にエントリー書けば良いのかなぁ? ndis での USB 機器の使い方がいまいち解らないんですよねぇ。そんなデバイスは知らん。と言われて ugen にアタッチされてしまいます・・。orz。

2. Planex GW-US54Mini2
これはアキバの某お店で 499yen で売っていたので買ってきて試しました。 FreeBSD では if_rum で動作します。 802.11g でリンクアップするのでこれはまぁ、中々良い感じでしょうか。ただし、今はもう販売終了となっていると思いますが・・。

3. Logitec LAN-W300N/U2
これは FreeBSD では if_run で動作します。けっこう高速で利用できます。続きはちょっと下のほうで書きます。

4. BUFFALO WLI-UC-GNM
これも FreeBSD では if_run で動作します。802.11b/g/n に対応しているので 150Mbps 出る。と言われていますが、そこそこな感じでしょうか。

と、言うことで今回は四打数三安打でした。それにしても最近は ちっこい USB 無線 LAN アダプタが RealTek のだったり Ralink のだったりするので購入する場合にはちゃんと下調べしたほうが良いと思われます。

で、どうして今回、再度の検証を行なったかと言うと、以前利用していた PCI GW-US300MiniW が壊れてしまったので、手持ちであるあるやつを利用し始めたんだけどこいつらみんな遅いっ!! 例えば NFS 上にある動画を再生しようとするとブチブチコマ落ちするし止まるしで到底実用には耐えられない遅さなのであります。

じゃ。ってんで、今回二回目の買い出しに出たのであります。結論から言うは if_run でも通信速度が速いものと遅いものがあります。僕が思うに小さいのはアンテナの影響から来るのか、遅いですね。BUFFALO WLI-UC-GNM は小さくてスルっと収まるんだけど遅いのが難点。
Logitec LAN-W300N/U2 はちょっと出っ張るんだけど、こいつは速いです。WLI-UC-GNM よりも速い。あと、以前使っていて壊れてしまった GW-US300MiniW も大きくて邪魔だったんだけど速かった。

あ、体感的には if_rum よりも if_run のほうが速いですね。まぁ、これはチップとドライバの問題で、当然 if_run のほうが速いのだろうと思いますが。

と、言うわけで教訓。

・if_run を買いましょう。
・300M と書いてあるのは多分速い。けど、その分でかい。
・速さを求めるならでかいのを買いましょう。

って感じでしょうか。デバイスが認識したあとに ifconfig wlan0 の media の部分を見ると良いと思います。

さてさて。どうして僕がこんなに USB 無線 LAN アダプタに凝るのか? と言えば、ThinkPad X100e 内蔵の 無線 LAN カード Advanced-N + WiMAX 6250 が正常に動作しないので USB アダプタに走るのでありました。

が、この間別のエントリにコメントしました<が、Advanced-N + WiMAX 6250 は動作するようになりました。 ここに書かれているように if_iwn.c を改修すると動作します。

それにしてもちゃんと動作する if_iwn はむちゃくちゃ速いです。 802.11n でリンクアップします。実際に計測してみると 24,5Mbps は出ています。すげーーっ(@_o)。けど、しょっちゅう通信が切れるんですよね。リンクの up/down はしないんだけど 30 秒くらい平気で止まってしまい、利用できるんだけど実用には耐えられない。速いだけに非常にもったいない・・。orz

と、言うことで Advanced-N + WiMAX 6250 の次に速いのが GW-US300MiniW、その次が LAN-W300N/U2 です。こいつは 12,3Mbps くらい出てくれます。 WLI-UC-GNM になると if_rum の速い機器と同等程度の速度になりますかねぇ。

あくまでも僕の実測と体感からの感想です。

と、言うことで if_run が今のところは一番良い感じだと思います。利用できるのは当たり前。更に速度を求めるのであればもっと他に色々試してみたいものですねぇ;-)。

11月 272010
 

ThinkPad X100e 内蔵の Intel Centrino Advanced-N + WiMAX 6250 って無線 LAN は 8.1-STABLE を利用すると iwn0 として認識するんだけど、利用できない。9-CURRENT では if_iwn.c とかビミョーに更新されているので、もしかしたら動作するかもしれませんが・・。

と、言うことで、USB の無線 LAN を利用することにしました。でもってできることなら小型が良いなぁ。と思い、既に持っているもの二つと、新たに三個も購入してしまいました・・。orz。

IMG_0145_RadioLan_1.jpg

これが僕が持っている USB 無線 LAN のオールスターキャストです。右側の白い、大きいヤツは前回書いていますね。if_rum と if_run で認識されるヤツです。

今回新たに購入したのは左側の黒いの二つと、下のちっこい白いの一つ。順番に見ていくことにしましょう。

一つ目。いちばんちっこい、黒いヤツ。

PLANEX GW-USValue-EZ

こいつは FreeBSD では動作しません。チップセットは Realtek RTL8192CU を利用しています。現在、FreeBSD では Realtek RTL8192CU に対応したドライバはありません。orz。

ただ、このまま、何もせずに使わないのはちょっともったいないので、ちょっと if_ndis ドライバで試してみることにしました。 FreeBSD の ndis ドライバは以前は PCMCIA カードにしか対応していなかったのですが、最近は USB デバイスにも対応したので、試してみる価値あり。と言う感じなのですね。

まずは Windows7 x64 用のドライバを持ってきます。そして、FreeBSD 上で ndisgen コマンドを叩きます。

# ndisgen net8192cu.inf rtl8192cu.sys

 
試してみると ndisgen コマンドがエラーになります。 net8192cu.inf の最後の行に改行コードが無いのでエラーになっているようです。なのでエディタで net8192cu.inf を開いてリターンキーを一発叩いてあげて再度実行すると、おぉ。できました。rtl8192cu_sys.ko が完成したので /boot/modules/ に入れた後、kldload します。が・・。

Windows7 x64 のフツーのドライバを利用すると ugen に落ちてしまい ndis0 では認識してくれません。 XLINK 用のドライバを kldload するとカーネルが凍り付きます。と、言うことで、今のところ、Realtek RTL8192CU なチップの USB 無線 LAN は使えないかなぁ。と言う感じなのであります。

続いて二個目。ちょっと大きめの黒いヤツ。

Buffalo WLI-UC-GN

一個目の PLANEX GW-USValue-EZ は usbdevs をろくすっぽ見ずに購入したので大失敗です。今度はちゃんと下調べして購入しました。この USB デバイスは if_run で動作するようです。9-CURRENT には man に run(4) が存在していて、そこにはちゃんと Buffalo WLI-UC-GN と書いてあるのです。

がっ!! こいつも動作しませんでした。と、言うか素直に AP に接続できない・・。 orz

usbdevs にもちゃんとエントリがあって kldload if_run するとサクっと認識してくれます。おっ。やったーっ!! ってなるんですけどね。しかし、WPA で接続しようと思い /etc/wpa_supplicant.conf を以下のように書くんですけど・・。

ctrl_interface=/var/run/wpa_supplicant
ctrl_interface_group=0
eapol_version=1 ap_scan=1 fast_reauth=1
network={ ssid="SSID-AP" scan_ssid=1 key_mgmt=WPA-PSK psk="PassWord" }

 
ドライバ的には認識するのですが WPA を利用して AP を検索しようとしても WLI-UC-GN 本体のほうで wpa_supplicant.conf に記述した内容を上書きしてしまいます。ap_scan=2 で AP を探索したりとか・・。

なので、ドライバ的にはちゃんと認識するのですが、デバイス的には利用できないのでありました。ただ、利用できない(AP に接続できない)だけでないのがこれまた痛い。あるタイミングで突然 AP に接続できたりするし、全然全く AP に接続できない場合もある。

ブート時には全く AP に接続できないので実質的には FreeBSD では利用できない USB 無線 LAN の内の一つです。購入時には十分に注意しましょう。

で。三個目。

PLANEX GW-USMicroN

いやぁ。小型で、ようやっと動作するものに巡り会えました。man run に掲載されているものをウェブで調べて Amazon.co.jp で購入しました。999yen。ふぅ。

こいつは Ralink の RT3020 チップセットを利用しています。FreeBSD のファームウェアは RT2870 を利用しています。runfw.ko を kldload します。

今度は WPA でもちゃんと接続できるのでホッとしました。大きさ的にもまぁ、とりあえず小型なので嬉しいです。ただ、色が黒いほうが良かったかな。と言う感じはしますが。

と、言うことで NotePC に内蔵な無線 LAN の他に USB のヤツもそろそろ色々動くものが出てきたような感じがします。ただ、if_run 対応のチップは ieee802.11n に対応しているのに if_run 自体は 802.11g の速さでしか認識してくれないのでちょっと悲しいかなぁ。と言うのはありますが、FreeBSD で USB な 無線 LAN デバイスを利用する場合には if_rum もしくは if_run 対応のものが安心でしょうなぁ。と思うのであります・・。

がっ!! WLI-UC-GN はハマリ道で、GW-USValue-EZ は FreeBSD においてはドライバが存在しない。と言う結果になったのでありました・・。

11月 112010
 

最近、ThinkPad X100e を購入したのですが、こいつはグラフィックスカードが ATI の HD3200 相当だったので X11 のドライバの xf86-video-ati とか色々触っていたわけなのであります。

で、色々いじってみると、 X11 の ati の radeon ドライバでは HD5450 が動作するみたいだったのでいよいよ満を持してグラフィックスカードを交換してトライしてみよう。と言うことになったのであります。

購入したのは玄人志向の RH5450-LE512HD/D3/HS。ドスパラで購入したのですが、その時、ASUS の HD5570 が5,980yen だったのでどっちにしようか悩み、店員さんに確認したのですが、僕の PC は AthlonX2 4600+ で電源は 350W。店員さん曰く「350W で HD5570 はきついかもしれないですねー。」と言うことで HD5450 にしたのでありました。

IMG_0049_RadeonHD5450_1.jpg

ファンレス・ロープロファイルなのであります。

まずはこのグラフィックスカードを Windows7 で試してみました。Windows エクスペリエンスで確認してみると、以前使っていたHD 4350と比較です。以前比較したのはここにあますね。

hd5450_winperie.jpg

グラフィックス性能がちょっぴりアップした。と言う感じでしょうか。それでも(僕は多分使う機会は無いとは思いますが) DirectX11 に対応しているのでね。まぁ、よしとしましょう。

後、Windows7 で HDMI 出力する時の注意点があります。ディスプレーの画面全体に表示できないので CCC で設定を見てあげる必要があります。以下の URL を参考にすれば良いかと思います。

http://www.ask-corp.jp/supports/ati2/hdmi_scaling.html

DVI 出力だと問題無いのですけどね。HDMI でフル DH 出力すると画面が小さく表示され、周りが黒くなります。

さて。Windows で動作確認が終わったので次はいよいよ FreeBSD でトライです。

が・・。ブートして X が起動した段階でブラックアウト、フリーズしてしまいますな・・。orz。

もう少し詳しく書くと、drm.ko・radeon.ko を kldload しない状態で HD5450 を利用するとディスプレはブラックアウトします。 リモートから ssh して shutdown するか power ボタンを押して S5 ステートでシャットダウンするかしか方法がありません。

drm.ko・radeon.ko を kldload した場合は、カーネル自体が凍り付きます。orz。

xf86-video-ati を 6.13.0 や 6.13.2、はたまた master にしてもカーネル自体が凍り付きます。orz。

なんだかなー。X11 のドライバは対応しているみたいなんだけど、カーネル側で対応していないのかなぁ・・。カーネルモジュールの drm.ko・radeon.ko をロードしない場合はカーネルは関係ないはずで X11 の radeon ドライバのみで動作している(libdrm も使われるのかな?)のだけど、けど、それさえも正常に動作しないのでありました・・。orz。

それにしても 玄人志向の RH5450-LE512HD/D3/HS は調べてみるとイワク付きのグラフィックスカードみたいなのでその辺りが問題になっているのかもしれませんが・・。

と、言うことで、もう少し HD4350 を利用することにしたのでありました・・。

ちなみに Radeon HD の 5000 番台が正常に動作している。という方いますか?いましたらコメント頂ければと思います。

10月 052010
 

さて。ThinkPad X100e を購入して色々試している最中です。「ThinkPad X100e で FreeBSD。気がついた点。」のエントリーで書いた通り、if_iwn が動作しないので手元にある USB 接続の WiFi デバイスを試してみました。

手元にあるのは二つ。

MELCO WLR-UC-G
PCI GW-US300MiniW

上の MELCO WLR-UC-G は Ralink の 802.11a/b/g に対応した RT2500W のチップを載せています。こいつは FreeBSD 8.1-STABLE においては usbdevs にエントリが無いのでパッチを書きました。以下の URL にパッチはあります。

http://icmpv6.org/Prog/FreeBSD_patches/MELCO_WLR-UC-G_8.1-STABLE.patch

そして、このパッチは send-pr したので近いうちにパッチを適用せずとも利用できるようになるのでは。と思います。
なお、MELCO WLR-UC-G は ディップスイッチで AOSS(AP モード)とクライアントモードの両方に対応していますが、USB の deviceid は両方とも登録しておきました。

下の PCI GW-US300MiniW は 8.1-STABLE にはドライバは用意されていますが、man ページが存在していないようですね。if_run で認識するデバイスです。 if_run は Ralink の 802.11a/b/g/n に対応した RT2700U / RT2800U / RT3000U のチップに対応したデバイスです。

if_rum_run_0.jpg

では、FreeBSD/amd64 8.1-STABLE で利用できるのか? 検証した結果をちょっと書いておきます。

まず、if_rum の MELCO WLR-UC-G ですが、パッチを適用して kldload if_rum した後に USB に接続すると無事に認識します。認識するとこんな感じになります。

ugen2.2: <Buffalo> at usbus2
rum0: <Buffalo WLR-UC-G, class 0/0, rev 2.00/0.01, addr 2> on usbus2
rum0: MAC/BBP RT2573 (rev 0x2573a), RF RT2528

 
今回は一番簡単な wep で接続しています。全ての機器はこれで利用するようにコマンドを投入しました。rum0、run0 とオンボードの iwn0 は以下のコマンドで検証しています。

# ifconfig wlan0 create wlandev rum0
# ifconfig wlan0 ssid SS-ID wepmode on wepkey 0x313131 weptxkey 1 up
# dhclient wlan0

 
パッチ適用後の MELCO WLR-UC-G はこれで無事に動作することを確認しました。DHCP サーバからアドレスを取得して、ネットワークに接続できることを確認しました。ただ、問題もまたあって、どうやらマルチキャストパケットが通らないようです。

最近の FreeBSD と言うか KDE は mDNS が動作していて、Apple の Bonjour などと連携してプリンタが利用できたりするんですが、 mDNSResponder が以下のメッセージを出力し正常に動作していないように見えます。あれま・・。orz。

mDNSResponder: mDNS_AddDNSServer: Lock not held! mDNS_busy (0) mDNS_reentrancy (0)

 
ユニキャストなどが無事に通信ができるデバイスなだけにちょっと残念です。ちなみに mDNS 関係のソースは追ってないのであります・・。

次に if_run の PCI GW-US300MiniW についてですが、僕は 9-CURRENT を追っかけていないのでよく解らないのですが、 8.1-STABLE に man が無いと言うことはまだ STABLE に降りてきて時間が経ってないと言うことなんでしょうかね?

kldload if_run した後に USB に接続すると、既にエントリーが登録されているようで特にパッチを書く必要もなくサクっと認識しました;-)。

ugen2.2: <Ralink> at usbus2
run0: <1.0> on usbus2
run0: MAC/BBP RT2860 (rev 0x0102), RF RT2820 (MIMO 2T2R), address 00:90:cc:fd:86:e7
run0: firmware RT2870 loaded

 
上に書いてある ifconfig コマンドを投入し、こちらも wep で動作確認します。run0、wlan0 ともに status: associated になっているのですが、DHCP でアドレスをもらうことができませんでした。orz。

パケットが全く外に出て行ってない感じで手動で IP アドレスを付加して ping を打ってもまぁるで利用できない状態なのでありました・・。orz。

後、run0 で気になったのは if_run のコードをチロっと見てみると 802.11n に対応しているコードが入っているようです。でもって、今回接続したPCI GW-US300MiniW は 802.11n に対応しているデバイスなのですが、こいつは 802.11g で認識してしまいました。あぁれぇ・・。

ドライバがアップデートされるのをちっくと待ちましょうかねぇ。

さてと。ThinkPad X100e に付属の fi_iwn が利用できない。USB の if_run が利用できない。USB の if_rum は利用できるみたいだけどマルチキャストがどうもあやすぃ。みたいな感じとなりました。さてと、どうすっかなぁ・・。

2月 162010
 

前回のエントリーで「MacBook 買いました。」と書いたのですが、今まで使っていたのは初代 Core2Duo な MacBook。で、新しいのは現行モデル。

この二台の違いを system_profiler で比較してみたのでちょっと書いてみます。system_profiler コマンドの結果の差分のみとして更に個人情報を削除して、なおかつ主にハードウェアの部分について比べてみました。

差分ファイル自体はここから閲覧できるようにしておきました。

さてと。まず見ていくのが MacBook 本体と CPU、メモリの状況です。
初代 Core2Duo な MacBook は Intel CPU になって CoreDuo 版 MacBook の次に出たモデルなので Model Identifier: MacBook2 となっているのですね。でもって現行版は六代目と言うことが解ります;-)。

後、Processor Speed は違うのだけど、え。L2 Cache は少なくなっているの? とか。

 Hardware Overview:
Model Name: MacBook - Model Identifier: MacBook2,1 + Model Identifier: MacBook6,1 Processor Name: Intel Core 2 Duo - Processor Speed: 2 GHz + Processor Speed: 2.26 GHz Number Of Processors: 1 Total Number Of Cores: 2 - L2 Cache: 4 MB + L2 Cache: 3 MB Memory: 4 GB - Bus Speed: 667 MHz - Boot ROM Version: MB21.00A5.B07 - SMC Version (system): 1.13f3 + Bus Speed: 1.07 GHz + Boot ROM Version: MB61.00C8.B00 + SMC Version (system): 1.51f53 Sudden Motion Sensor: State: Enabled

 
次の項目の Disc Burning: はここでは説明しませんが、 MATSHITA DVD-R のバージョンが上がったのね。 -R DL に対応したのねー。ってのが解ります。

さてと。ネットワークですが・・。これがあやすぃー。
今までは Marvell Yukon Gigabit Adapter 88E8053 を使っていたみたいだけど、今度のはそー言う情報一切無し。ただ単に “ethernet” と書いてあるだけ。ちなみに MAC アドレスのベンダーコードはどちらも Apple のものらしいですが、A4 プロセッサ作った会社なので NIC も自前か? などと勘ぐりたくなります;-)。

 Ethernet Cards:
- Marvell Yukon Gigabit Adapter 88E8053 Singleport Copper SA: + ethernet:
- Name: ethernet Type: Ethernet Controller Bus: PCI - Vendor ID: 0x11ab - Device ID: 0x4362 + Vendor ID: 0x10de + Device ID: 0x0ab0
Type: Other Network Controller Bus: PCI - Slot: AirPort - Vendor ID: 0x168c - Device ID: 0x0024 + Vendor ID: 0x14e4 + Device ID: 0x4353
Network:
- MAC Address: 00:17:f2:xx:xx:xx + MAC Address: d4:9a:20:xx:xx:xx

 
次は FireWire ですが、無くなりましたねー。それだけ(^^;;。

続いてグラフィック回りですが、これは Intel から NVIDIA に変わりました。
今までは Built-In なバスだったのに今度は PCI バスにぶる下がったようです。多分 PCIe なんでしょうなぁ。VRAM も 64MB から 512MB へアップ。

 Graphics/Displays:
- Intel GMA 950: + NVIDIA GeForce 9400M:
- Chipset Model: GMA 950 + Chipset Model: NVIDIA GeForce 9400M Type: GPU - Bus: Built-In - VRAM (Total): 64 MB of Shared System Memory - Vendor: Intel (0x8086) - Device ID: 0x27a2 - Revision ID: 0x0003 + Bus: PCI + VRAM (Total): 256 MB + Vendor: NVIDIA (0x10de) + Device ID: 0x0863 + Revision ID: 0x00b1 + ROM Revision: 3462

 
続いて HDD 回り、行ってみましょう。
Intel ICH7 から NVidia MCP79 になって、SATA の転送速度が 3Gb になりました。これは速さに直結ですねー。後、HDD が日立から東芝に変更になっている。たまたまこの個体だけかな?

と、思ったら、考えてみると僕は 80GB の HDD から 250GB のに入れ換えたんだったf(^^;;。80GB の HDD は確か東芝製だったはずf(^^;;。

 Serial-ATA:
- Intel ICH7-M AHCI: + NVidia MCP79 AHCI:
- Vendor: Intel - Product: ICH7-M AHCI - Speed: 1.5 Gigabit - Description: AHCI Version 1.10 Supported + Vendor: NVidia + Product: MCP79 AHCI + Speed: 3 Gigabit + Description: AHCI Version 1.20 Supported
Capacity: 250.06 GB (250,059,350,016 bytes) - Model: Hitachi HTS545025B9A300 + Model: TOSHIBA MK2555GSXF

 
最後に無線 LAN 環境についてですが、実はこれが、僕個人的にも一番驚いています。
MacBook2 (つまり初代 Core2Duo 版) のほうは Atheros 5416 を使っていたのですが、MacBook6 (つまり現行版) は Broadcom BCM43xx になりました。でもってどちらも 802.11n に対応していると言う状態だったのに MacBook2 のほうは 64Mbps しかでないモノだったのね・・。それに引き換え MacBook6 は 140Mbps (共に論理値) が出るようになっている。

MacBook2 は a/g 程度の速度だったと言うことですね。けど、AppleStore から 200yen でドライバダウンロードしたんだよな・・。その昔・・。トホホ。

 AirPort:
Interfaces: en1: - Card Type: AirPort Extreme - Firmware Version: Atheros 5416: 2.0.19.4 + Card Type: AirPort Extreme (0x14E4, 0x93) + Firmware Version: Broadcom BCM43xx 1.0 (5.10.131.1 )
Supported PHY Modes: 802.11 a/b/g/n - Supported Channels: 1,2,3,4,5,6,7,8,9,10,11,12,13,14, 34,36,38,40,42,44,46,48,52,56,60,64 + Supported Channels: 1,2,3,4,5,6,7,8,9,10,11,12,13,14, 36,40,44,48,52,56,60,64, 100,104,108,112,116,120,124,128,132,136,140 + Wake On Wireless: Supported

 
とまぁ、サラッと見てきましたが、差分としてはこんな感じでしょうか。上で動作している OS は一緒な感じです。

更にですが、ちょっと使い込んでみた感想を書いてみたいと思います。

MacBook2 も MacBook6 も SMART がオフなのですよ。なので、smartmontools をインストールして smartctl -s on しています。epkg 版のパッケージを作ったのでもし良かったら epkg から利用してください。

後、やはりなんてったって、CPU と HDD の温度の低さが目に付きますね。ファンがうならない MacBook6 には感激してます。僕は speedit.kext と言う 32bit 版ですが、カーネルモジュールを拾ってきてロードしているので CPU の温度が取れたりするのですが、やっぱ低い。アイドリング時で大体 40 度以下だったりするし。これは嬉しいですねぇ。

CPU の温度や CPU クロックを MRTG で取得してグラフにして比較もしているのですが、新しいのはやっぱ良いね。って感じなのであります;-)。

2月 012010
 

うちには Athlon X2 の PC が全部で三台あります。そのうちの一台は 今まで MSI の K9VGM-V と言う、VIA K8M890CE+VT8237A を使った、ずいぶんとマニアックなマザーボードであったのでした。

このマザーボード、Windows7 Profetional x64 をインストールしたらみょーに安定しなくなったので新しいマザーボードに交換することにしました。

CPU と言うか Socket はもう既に収束しつつある AM2 なのですが、CPU を新たに買い換えるとメモリも換え買えなければならないので、もう少し AM2 を利用することにしようなどと思い、どうせ枯れ行く AM2 マザーボードならそんなにお金かけなくとも良いべ。などと考えてアキバを俳諧するわけです。

するっていと、ドスパラ で 4,850yen の SocketAM2 のマザーボードが売っていたので「これで良いかー。」などとなったのであります。

買ったのは ASRock の N68-GE と言うマザーボード。他にも 5,500yen 位の安いのがあったのだけど、パラレルポートがついているのでこっちに軍配が上がったのでありました。

ちなみに自宅にあるプリンタはブラザーの HL-2040。USB ポートは Mac に接続して、パラレルポートは windows7 側に接続できるのでマザーボードにはパラレルポートが付いていると嬉しいのでありました。

さてー。アキバで買ってきたマザーボードに K9VGM-V についていた CPU とメモリを移植してケースに止めてゴーーーっ!!

HDD はそのままで Windows7 をブートしようとしたけど、甘かったね・・。WindowsXP だとドライバが自動的にインストールされて終わりなような気が、そこはかとなくするのだけど、Windows7 の場合は「起動時に不具合を取り除く」ものが動作したのだけど結局ブートしなかったので、再インストールです。くー。二個目のライセンスかよー・・。しくしく。って感じで無事にインストールは終わり、Windows7 がブートしたのでありました。

さてと。ここからがようやっと本題なのでありますf(^^;;。

今回のマザーは ASRock と言うメーカなんだけど、ここって中国のメーカなのかな? ASRock の機能として、Cool’n’Quiet Technology よりも更に省電力な機能として IES(Intelligent Energy Saver) と言う機能が実装されているそうです。

でもって BIOS レベルではコテコテのオーバークロック設定が可能で、なおかつ、その設定は Windows 上のアプリケーションから動的に変更できると言う、ある意味すごいマザーボードなのですが・・。

僕の買った N68-GE は IES が Windows7 Profetional x64 ではちゃんと動作しないみたいね。BIOS の設定を色々いじったけど、ダメ。orz。

ASRock のマザーボードを利用している方で Windows7 x64 で IES がちゃんと動作している人いますでしょうか?

ASRock のサイトからユーティリティーをダウンロードできるので IES ver:2.0.9・OC Tuner ver:2.2.84 辺りを再度ダウンロードして色々試したのだけど、 CPU 速度とファンの速度が動的に変化しない。

IES ユーティリティーを起動して IES 機能を Enable にしようとすると「BIOS で Cool’n’Quiet Tech を有効にしろ。」っていわれるんだけど、そんなんとっくにやっているんだよっ!!って感じで・・。

それにしても困った・・。で、しょぅがないので OC Tuner ユーティリティーのほうで CPU クロックを固定して使うことにした・・。2400MHz の CPU を 1000MHz 固定で利用すると言う、ちょっと理不尽な使い方なのです。

ただし、OC Tuner で設定した値はリブート後に BIOS の設定に引きずられるので BIOS 自体の値を低くします。 BIOS のオーバークロックの設定の画面で 200MHz x 5 の設定でブン回すようにします。ダウンクロック設定だぁ・・。orz。

後、CPU ファンもフル回転(LEVEL9) で回っているので音が比較的小さい LEVEL3 位にして、後は CPU 温度との兼ね合いでレベルを上げたり下げたりする感じです。

BIOS で設定して Windows7 を起動すると BIOS の設定で動作するようになります。 OS が起動したら OC Tuner を起動します。例えば CPU 負荷の高い処理を行うときは OC Tuner で手動で CPU クロックとファン速度を変更するんですな。まぁ、FreeBSD で sysctl 叩く感じでしょうか・・。orz。

中々たいそうな Cool’n’Quiet Technology でございます。このマザーボードのは・・。トホホ。

この、IES 設定を行う IES ユーティリティーは SocketAM3 対応のものとか色々なバージョンがあるようです。僕か ASRock で見つけたのは IES ver:2.0.34 だったかな。一番番号が大きめだったので試してみたのだけどやっぱりダメでしたねぇ・・。

まいったっス。

ASRock の SockectAM2 マザーボードで Windows7 x64 で IES が動くよー。っいて方いましたら情報頂けませんでしょうか。

宜しくお願いします。