CURRENT_TIMESTAMP つぶやいてみ
@2008.11.18
SEE ALSO: http://d.hatena.ne.jp/magisystem/20081117
サポセンが笑えない(笑うしかない?)ネタを提供してくれたことについては
ノーコメントで(コメントしようもないというか)。
私も Catalyst 使ってますが, コンシューマ向け SWHUB 付けると誤動作す
ることは経験してるので, そこのところ解決できないのかな。というのが
気になるところ。
たぶんもっとあるはずだけど, 私が経験したのは
1. Catalyst はオートネゴシエーションの振るまいが厳格でコンシューマ
向け SWHUB のような「なぁなぁ」で設定してくれない(ディフォルトで)。
最近の(と一応表現しておくが, MDIX 対応の) Catalyst だと AutoMDIX
がディフォルトで off になってるので, これがためにネゴシエーショ
ンできなくて link up しない(いわゆる line protocol is down)問題
がおきる。
対応としてはインターフェースに対して mdix auto を設定するというも
の(duplex, speed とも auto でないと機能しない)。
conf t
interface gi0/1
mdix auto
GbE は MDIX じゃあ? という話はとりあえず置いとく:-)。対向によ
ってはこの設定が有効なことがあるということで。ジャンボパケットと
か, この方面色々考え出すと色々罠がある気がする。。
検証方法はもっとロジカルなものがあると思うけど, 経験的には間に別
のハブを噛ませてみるとか, 固定(speed, duplex)してみると通信できる。
といったあたりでしょうか。今回はこの問題の気がしますが。
2. まぁあんましないとは思うけど, マルチキャストを処理できない SWHUB
相手にループさせるとネットワークが壊滅する:-)。
スパニングツリーすると Catalyst から BPDU というパケットが飛んで
ループしていると別のポートに BPDU が届くので, ループしている一方
の通信を止めるということをする。
この時マルチキャスト(BPDU はイーサネットマルチキャストで送信され
る)処理がまともでない SWHUB がいると, BPDU がとどかないくせにルー
プしてるので, 普通の通信を行うとフラッド起こして壊滅するという。
Catalyst の売りとしては, そんな時でも別 VLAN では通信できるとか言
うてるけど, フラッド起こすと全ポート死ぬ気が…。安物(Catalyst 2940)
だったりするからかな? 想定している状況が違うからかな。まぁよくわ
からん。
@2008.11.16
Firefox3 があまりに遅くなってきて我慢できなくなってきたので調べてみた。
いくつか要因があるが, 現時点で決定打はなさそう。 orz
現象:
1. ページを開いた直後に大量のディスクアクセス。
2. ディスクアクセス中は Firefox3 の応答性が無くなる。
3. だいたい数秒から十数秒程度。
4. どうせ ~/.mozilla/firefox/XXXXXX/ 以下だろうと更新日時を見
ると拡張子が sqlite3 のいくつかのファイルが頻繁に更新されて
いる&妙にデカい(十数 MB 程度)。
原因:
1. Firefox3 で各種データの収納を SQLite3 データベースを使うよう
にしたらしい。従来のハッシュテーブルで管理していたの統合した
みたい。
2. ブックマーク, アクセス履歴等の管理を places.sqlite で管理して
いる。それなりにリレーションしてるようなので, DELETE FROM す
るのは要注意。orz もちろん単純な削除はできない。
3. 疑わしいサイトの管理を urlclassifier3.sqlite に収納しているら
しい。単純に消してもいいみたい。
4. SQLite3 は読みが多いパターン(read only)だと .sqlite ファイル
のみで完結する。なんらかの書き込みが発生する場合, ACID を実現
するために -journal なファイルで途中経過を記録する。このファ
イルがある間は .sqlite ファイルはロックされている(write lock)。
まぁ読むのは問題無いけど。トランザクションが閉じるとこのファ
イルを書き戻す。この時, I/O 負荷がかかる。
対応:
1. 「Edit」→「Preferences」→「Security」→「Tell me if the site I'm
visiting is a ....」の 2 つの設定を off にして firefox3 を終了
urlclassifier3.sqlite を削除する。再起動後このファイルが作ら
れるが, 中身は CREATE TABLE のみである。一応成長しないみたいだ。
2. places.sqlite を小さくする。(まぁ具体的にどうしようもなかった
んだが)
3. Firefox3 のディスクキャッシュをたまにクリアしてみる。
まぁ places.sqlite がどうしようもないので, 「ちょっと軽くなった
かな」程度で改善するわけではない。 orz
原理的にはクッキーの収納(cookies.sqlite)等, 増加傾向のファイルが
あるわけで, 重たくなる候補は次から次へとあらわれる:-)。
まぁそのうち改善されることを祈って…。
参考:
SEE ALSO: http://blog.browncat.org/2008/04/asus_eeepcfirefox3.html
SEE ALSO: http://d.hatena.ne.jp/itiri/20080501/1209642413
SEE ALSO: http://d.hatena.ne.jp/dolphinkick/20080914/p1
SEE ALSO: http://www.sqlite.org/
@2008.11.11
ネタは書きたくないのだが, 何かの中心で叫んでみたくなる今日この頃。
今冬初(今年初ではない)の風邪を引いた。そこで一句。
「俺, 病院で診察受けたら, データセンター行くんだ」
死亡フラグが立ったような気がするが, むしろ死兆☆が見えたのは気のせいだろうか。。
# もちろん行ったさ! 朝(11時半)から夜(21時)まで。
@2008.11.03
今どきの Xorg ドライバーのサポートを考慮したハードウェア選定を行う場合,
(FreeBSD の場合 current を含む) 32bit オンリーだけどバイナリサポートで
うはうはな nVidia (最新のチップセットをサポート!)と, 完全ソース公開で
(F はもちろん他の環境でも期待できる)うはうはな AMD (ATi) がほぼ選択肢と
して挙げられる。
しかし xf86-video-radeonhd ドライバ。なかなか曲者で R5xx と RS6xx の
ハードウェアアクセラレーションに対応! とある。下記表を見たとき, R6xx
の亜種かと思いきや, R5xx の亜種だったのねん。と気がついてショックを受
ける(常識?)。
SEE ALSO: http://gitweb.freedesktop.org/?p=xorg/driver/xf86-video-radeonhd;a=blob_plain;f=README
というわけで, 64bit 環境でも使えてうはうはできる選択肢というと, AMD
Radeon X1xxx シリーズになるわけで…。。。 orz
まぁ R6xx サポートかと誤読して RS780 も期待!と思った時点で S の意味
を曲解してる時点で(ry。
@2008.10.21
SATA 接続のスーパーマルチドライブ(DVD-RAM/RW/R/ROM, CD-RW/R/ROM をサポート)
を FreeBSD で使おうと思ったら注意が必要である(現時点では)。SATA なので ATA
のチップセットは, 今時 AHCI (Advanced Host Control Interface)だろうけど,
これ, BIOS で IDE 互換にしないと焼けなかったりする。
手持ちのノートの BIOS では「SATA Mode」という選択肢に「IDE native mode」と
「IDE-AHCI mode」とあったが, IDE native mode にしたらうまく行くようになった。
しかし HDD まで UDMA33 に落ち込むので常用するにはちょっと…な気がす。 orz
ものによってはインターフェース毎に AHCI or 互換(compatible) が選べたりする
だろうから, もちっと使い勝手が良いかも。
まぁこのあたりは atapicd(4) ドライバか ata_ahci(4) ドライバあたりに頑張って
もらうしかないかな。というわけで当分, この方面は様子見ってことで。
@2008.09.20
FreeBSD で VLAN インターフェースを切る方法。
if_vlan(4) を事前に組み込んでる場合 2 つの方法がある(ない場合は 1 つ)。
例えば fxp0 というインターフェース上に VLAN ID 4095 の VLAN インターフェース
作りたい場合
1. ifconfig fxp0.4095 create
2. ifconfig vlan4095 create vlandev fxp0 vlan 4095
とう風にして作る。
さっきも書いたが kldload if_vlan や /boot/loader.conf で if_vlan_load="YES"
してない場合 2 しかできない。
vlan4095 は VLAN ID を反映するか, 順番に 0 (1 とか)からふっていくかなど,
運用に合わせて名前を決めてよい。
@2008.09.14
ports 技のメモ。
files/patch-* を作成する時の ZSH 技。${WRKSRC} 以下で下記実行する。
for i in **/*.orig; { diff -u $i ${i:r} > ../../files/patch-${i:r:gs|/|-|} }
もちろん ${WRKSRC} が ${WORKDIR} の直下のディレクトリであったり, ${WRKDIR} 自体
が明後日の方向に設定されてない前提とする。まぁディレクトリの調整はいくらでも
行えるから, この場合重要なのは ${i:r} で .orig を抜き, ${i:r:gs|/|-|} で .orig
抜きのパス名から / を - に置き換えるということを覚えておく。
というか毎回このメモの @2008.06.10 を見て組み立てるな。 > 私
イディオムとして覚えておけ(爆)。 > 私
@2008.09.14
if_bridge(4) インターフェース使用して, 起動時に DHCP してる設定してるつも
りが全然立ち上がってくれず, なんでだろうと調べてみたところ, DHCP ではなく
SYNCDHCP を指定するのがいいということが判明しました。8-current なのでなん
らかしら変更があったのかな…ということで。
cloned_interfaces="bridge0"
ifconfig_bridge0="addm rl0 SYNCDHCP"
ifconfig_rl0="up"
@2008.09.14
FreeType のヒント情報(hinting)を使うのが正義だと思っていた時機もありました。
というわけで無効にしましょう:-)。
というのも, 線が細くなる=文字を小さくできると考えていたところ, 実は線を細
くせずに, アンチエイリアスかけた方が, 小さい文字でも識別可能ということがわ
かりましたとさ。
というわけで 1〜2 ポイント小さめに設定してみる。ん〜読める。。
@2008.08.15
そうそう。PostgreSQL で UFS2 + DIRECTIO + open_sync が最強と言ったのは
あくまでも性能優先での話っす:-)。運用優先で性能が要求されないならば,
ZFS で PITR (Point In Time Recovery) やるのが最強っす(^^;。
MySQL に至ってはいつでもレプリケーションが作りやすい。なんせ全ロック,
マスターのポジション確認, zfs snapshot, 全ロック解除で 10 秒もあれば,
レプリケーション元の抽出作業ができてしまう。まぁ MySQL だと更新系は
ZFS 使って, 参照系は UFS 使うといったことをするのがいいかもしれません
ね。MySQL については自分的にノウハウがないので落とし所理解してないの
でなんとも言えませんが。。
@2008.08.14
そうそう。ZFS pool version 11 の zfsboot 対応のためには zfsboot2 と
loader の更新が必要なのだが, loader はともかく, zfsboot2 をなんとか
上書かねばならない。zpool import 状態では kern.geom.debugflags=16
しても上書きできないので, CDBOOT した上で dd する必要がある。
箱の鍵は箱の中にならないことを祈る(爆)。すくなくとも 7 の snapshot
CD 持ってきてもマウントできないので, ZFS pool version 11 に対応した
CD 作らないといけないハメになる。なかなかの必殺コンボだったりするの
で注意。
もちろん私はそれで 1 週間(8 月初旬)はノート使えなくなりましたとも(爆)。
世の中同じ 8-current なバディマシンが必須ということで(T_T)。
@2008.08.13
ZFS pool version 11 に対応するパッチのその後ということで。世の中
便利なもので, ZFS pool のバージョン毎になんの対応を行ったのかリ
ストがある。現在 version 6 なわけであるが, これが 11 になるまでの
変更点を以下に挙げておく。
SEE ALSO: http://www.opensolaris.org/os/community/zfs/version/11
SEE ALSO: http://www.opensolaris.org/os/community/zfs/version/10
SEE ALSO: http://www.opensolaris.org/os/community/zfs/version/9
SEE ALSO: http://www.opensolaris.org/os/community/zfs/version/8
SEE ALSO: http://www.opensolaris.org/os/community/zfs/version/7
SEE ALSO: http://www.opensolaris.org/os/community/zfs/version/6
とりあえず単純に従来通り使う分には問題無くて, zfsboot する時にはいくらか
問題があったので修正パッチを投げた。新しい環境でもばっちり動いた。
1. loader の lsdev で zfs パーティションを認識するパッチ(推奨)
SEE ALSO: http://lists.freebsd.org/pipermail/freebsd-fs/2008-July/004895.html
2. zfs, zpool を /rescue に入れる(推奨)
SEE ALSO: http://www.freebsd.org/cgi/query-pr.cgi?pr=bin/125878
3. ZFS pool (SPA - Storage Pool Allocator)バージョン管理方法の
取り扱い変更の追随(必須)
SEE ALSO: http://lists.freebsd.org/pipermail/freebsd-current/2008-August/087404.html
@2008.08.11
Firefox アドオンを調べてみる。ports 的なまとめについては
SEE ALSO: http://blog.ninth-nine.com/diary/20080810.txt
を見てもらうとして, vimperator についてメモを…。。
いやぁ。。ここまで vim vim した画面になるとは思わんかった。まさか Firefox
本体を vim 化するとは思っておらず(vim operator なんだから当然?), 期待した
こと(テキストエリアを vi で編集)ができなかったので放置。というのも現在
ports に入ってるバージョンは firefox2 までのものであるが, 手持ちで作業し
たのは firefox3 対応版なわけで…。。
まぁいずれにせよ以下のサイトはひじょ〜に参考になりましたです。
SEE ALSO: http://doya.in/wiki/vimperator/
SEE ALSO: http://d.hatena.ne.jp/k0y/
@2008.07.28
お仕事が忙しくてすっかり観察日記(?)が書けなくなってる今日この頃みなさまどうお過
ごしでしょうか(なんか違)。
ネタはともかく, ネタは色々溜ってるけど, 何はともあれこれ:
SEE ALSO: http://lists.freebsd.org/pipermail/freebsd-fs/2008-July/004887.html
pjd 氏曰く OpenSolaris で動いてる最新版のコードに基づくパッチだそうで, とりあえず
パッチを読んだ限りでは
1. SMB(CIFS) のサポート。単純な用途なら samba 要らずってことで。たぶん。
2. UTF-8 サポート。これはどの程度のサポートかはよくわからんです。
3. 2 レベル ARC (Level 2 Adaptive Replacement Cache) のサポート。L2ARC キャッシュ
デバイスとか, コメントを読む限りだと, さっぱり目玉な気がする。
パッチを当てた後の /usr/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c
を読むと
* The level 2 ARC (L2ARC) is a cache layer in-between main memory and disk.
* It uses dedicated storage devices to hold cached data, which are populated
* using large infrequent writes. The main role of this cache is to boost
* the performance of random read workloads. The intended L2ARC devices
* include short-stroked disks, solid state disks, and other media with
* substantially faster read latency than disk.
* 2 レベル ARC (L2ARC) はメインメモリとディスク間にあるキャッシュ層である。
* まれに起こる大規模な書き込みで使用するために占めるキャッシュデータを保持
* するための専用のデバイスが使われる(関係代名詞があやふやで申し訳ない orz)。
* このキャッシュの主な役割りはランダムリードの作業負荷パフォーマンスをブー
* ストするためにある。対象となる L2ARC デバイスはショートストロークディス
* ク(?), ソリッドステートディスク(SSD), ディスクよりも十分に読み込み遅延が
* 短いメディアを含みます。
今時なら SSD とか SD カード, USB メモリでも持ってくればいいのかな。
ところで ARC って日本語だとなんて言うんだろう。適応型置換キャッシュ?
ん〜。LRU ほど市民権を得てないというか。。
4. L2ARC 使うためには zpool ... cache デバイス と cache キーワードで指定す
るみたい。これ複数指定できるのかなぁ。。後で詳細調査だな。あぁ他にも揮
発性(?)はどうなんだろう。もし
http://www.acard.com/japanese/newstabpop.jsp?idno=73
これ使えるなら最強かな:-)。電源しくって全部消えても問題ありません。だっ
らいいなぁ。。
5. SMB に対応したせいか, vscan とか anti-virus とかそういうキーワードが見え
る。どうもウィルススキャンした時の時間を記録するみたいだが…。。
6. これもその関係か, FUID ACL サポートってキーワードが見えるなぁ。。なんだ
ろう。 > FUID
あれ? 日本語がいつのまにか狂乱してる…。。
というわけでパッチを読んだ限りでは問題なさそう。ということで, 自分ところの
環境でコンフリクトしてるパッチ等の整理を行って, テストしてみようと思う(環境
構築中)。。。
@2008.07.06
本格的に Firefox3 に移行してみました。開発で必要となるいくつかのアドオンが, 未だ
使えない状態にあるのですが, 移行してしまった後は Firefox2 に戻る気がしません:-)。
まぁちょうどアドオンの見直しができてよかったかな。と。
最初, 文字がアンチエイリアシングしてくれなかったのでナニかと思ったら, ビットマッ
プフォントが使えるときは積極的に使うとなってたのですね。daichi さんところの記事
でビットマップフォントの使用を無効にする方法が出てたので適用してみました。
SEE ALSO: http://gihyo.jp/admin/clip/01/fdt/200807/02
@2008.07.06
考えてみれば時事ネタなんで…ということで CURRENT から CURRENT_TIMESTAMP に変えて
みました(意味不明)。
@2008.07.06
yongari 氏による re(4) の大幅な改修が来ました。
SEE ALSO: http://lists.freebsd.org/pipermail/cvs-src/2008-July/092582.html
SEE ALSO: http://lists.freebsd.org/pipermail/cvs-src/2008-July/092583.html
SEE ALSO: http://lists.freebsd.org/pipermail/cvs-src/2008-July/092584.html
SEE ALSO: http://lists.freebsd.org/pipermail/cvs-src/2008-July/092585.html
SEE ALSO: http://lists.freebsd.org/pipermail/cvs-src/2008-July/092587.html
SEE ALSO: http://lists.freebsd.org/pipermail/cvs-src/2008-July/092588.html
SEE ALSO: http://lists.freebsd.org/pipermail/cvs-src/2008-July/092589.html
SEE ALSO: http://lists.freebsd.org/pipermail/cvs-src/2008-July/092590.html
SEE ALSO: http://lists.freebsd.org/pipermail/cvs-src/2008-July/092591.html
またサポートチップセットも RTL8168C, RTL8168CP, RTL8111C, RTL8111CP の他
8169SB(L)/8110SB(L) が追加されています。PHY も RTL8211C(L) が追加になりま
した。
SEE ALSO: http://lists.freebsd.org/pipermail/cvs-src/2008-July/092592.html
SEE ALSO: http://lists.freebsd.org/pipermail/cvs-src/2008-July/092593.html
SEE ALSO: http://lists.freebsd.org/pipermail/cvs-src/2008-July/092594.html
これでこないだ買ってきた CardBus GbE が安心して使えるようになりました:-)。
SEE ALSO: http://kuroutoshikou.com/modules/display/?iid=1171
@2008.07.06
alc 氏キターってことで。KVM (Kernel Virtual Memory)の 7GB サポートすべく修正入れま
くってます。
SEE ALSO: http://lists.freebsd.org/pipermail/cvs-src/2008-July/092625.html
SEE ALSO: http://lists.freebsd.org/pipermail/cvs-src/2008-July/092725.html
SEE ALSO: http://lists.freebsd.org/pipermail/cvs-src/2008-July/092728.html
これら変更を見ると, 6GB オーバーで一つの壁があったようですね。次はどこまで拡張する
のでしょうか。実に楽しみです:-)。
@2008.07.06
jhb 氏が業を煮やした(?)のか, hexdump(9) というカーネル関数をユーザーランド
関数に持ってきました。 > hexdump(3)
SEE ALSO: http://lists.freebsd.org/pipermail/cvs-src/2008-July/092577.html
見たところ hexdump(9) の仕様そのまんまで, sys/systm.h の代わりに libutil.h
を, -lutil をつけることで使えるようにしてあります。
これを使えば, ちょっとした内部構造をダンプするのに, 手間がかからなくていい
ですね。
@2008.07.06
mmasuda さんところで Javascript Vi (jsvi) の紹介があったので見てみました。
SEE ALSO: http://www.hackaday.com/2008/07/04/javascript-vi/
そこにはデモサイトへのリンクがあるので調べてみたところ, すごすぎ…。
SEE ALSO: http://gpl.internetconnection.net/vi/
色々いじってみた分をメモしておくと,
1. ライセンスが GPL3 なのでサービスで使う時微妙かも。
2. したら editor(編集対象のエレメント) と呼び出すだけ
でよい。
3. 多段 undo は効かない。すくなくとも nvi の u., vim の uu は期待した通りの動きをし
ない。
4. :w, :wq, :q 等の処理をそれっぽく見せてるし, 思った通りの動きはする(編集のキャンセ
ルが可能)。もちろん副作用はなく, いきなり submit することもない。すくなくとも
jsvi レベルでは。全体(組み合わせ)で見たら知らないけど。
5. , , 等をハンドリング(視覚効果)するためか, < が < に置き換わってしま
う。ソースを見ると他にもハンドリングしているものがあるもようだけど…。
いずれにせよ, この手の置き換えはしないようにプログラム修正する必要があるかもしれ
ない。
6. 「B」「U」「I」「Print」なんてメニューが表示される。正直…。プログラム埋め込みな
ので修正する必要があるかもしれない。
7. 画面構成(CSS等)によっては表示がおかしいかもしれない。凝った画面で jsvi 使うとき
は CSS まわりの調整が必要かもしれない。
8. いずれにせよ:-), textarea のヘタれた編集機能に比べると, 圧倒的にユーザビリティの
高い編集環境が手に入るには入る。もっとも vi? という人もいるだろうけど(^^;。
9. XMLHttpRequest してるのでナニかと思ったら, spell.cgi 相手にスペルチェックを, 再
描画する度に行ってるようで。。
まぁ http://gpl.internetconnection.net/vi/vi.js を手に入れて楽しんでちょ。
@2008.07.03
普段は jvim3 ユーザーなので快適なのだが, どうしても新めの vim を使わざるを得ない
ことがある。環境の都合か何か知らないけど, 色使いが尋常ではないのでいい加減頭にき
た。カラー表示されてるとうれしい人が多いようだが, 同時にうっとおしく思ってる人も
いるらしい。ということで最低でも以下のコマンドを実行するようにした:-)。
:syntax off
:set nohlsearch
もちろん .vimrc を設定できる環境では
syntax off
set nohisearch
の方向で。他にもあるようだけど, 困ったとき考えるかな。復活できるようにする? い
や。自分要らないんで(爆)。
SEE ALSO: http://hanagurotanuki.blogspot.com/2007/08/vi.html
SEE ALSO: http://www.crimson-snow.net/tips/unix/vim.html
SEE ALSO: http://www.removabletype.net/vim/vim_matchparen.html
@2008.06.30
ついに amd64 アーキテクチャにおける KVM (カーネル仮想アドレス空間)が
6GB に拡張されました!! 最終的には下記 commit で行われた模様(新→古順)。
SEE ALSO: http://lists.freebsd.org/pipermail/cvs-src/2008-June/092518.html
SEE ALSO: http://lists.freebsd.org/pipermail/cvs-src/2008-June/092517.html
SEE ALSO: http://lists.freebsd.org/pipermail/cvs-src/2008-June/092507.html
SEE ALSO: http://lists.freebsd.org/pipermail/cvs-src/2008-June/092506.html
SEE ALSO: http://lists.freebsd.org/pipermail/cvs-src/2008-June/092325.html
SEE ALSO: http://lists.freebsd.org/pipermail/cvs-src/2008-June/092290.html
SEE ALSO: http://lists.freebsd.org/pipermail/cvs-src/2008-June/092288.html
SEE ALSO: http://lists.freebsd.org/pipermail/cvs-src/2008-June/092284.html
SEE ALSO: http://lists.freebsd.org/pipermail/cvs-src/2008-June/092264.html
SEE ALSO: http://lists.freebsd.org/pipermail/cvs-src/2008-June/092253.html
SEE ALSO: http://lists.freebsd.org/pipermail/cvs-src/2008-June/092252.html
この変更に対するコメントが修正され, 下記のようなメモリマップになりました。
* Virtual addresses of things. Derived from the page directory and
* page table indexes from pmap.h for precision.
*
* 0x0000000000000000 - 0x00007fffffffffff user map
* 0x0000800000000000 - 0xffff7fffffffffff does not exist (hole)
* 0xffff800000000000 - 0xffff804020100fff recursive page table (512GB slot)
* 0xffff804020101000 - 0xfffffeffffffffff unused
* 0xffffff0000000000 - 0xffffff7fffffffff 512GB direct map mappings
* 0xffffff8000000000 - 0xfffffffe7fffffff unused (506GB)
* 0xfffffffe80000000 - 0xffffffffffffffff 6GB kernel map
*
* Within the kernel map:
*
* 0xffffffff80000000 KERNBASE
@2008.06.21
新しい qemu のテスター募集ということで。
dyngen (gcc を利用した動的コードジェネレータ)から tcg (Tiny Code Generator)
への完全移行と, それにともなう gcc バージョン依存性がなくなったため(古い方向
へは対応してないと思うけど(^^;)新しい gcc でビルドできるようになった。
dyngen については qemu/qemu-internalsJ あたり見るといいかも。
ALL_TARGETS で必要なエミュレーション環境を指定できるようにした。
i386-softmmu, sparc-softmmu, x86_64-softmmu, mips-softmmu,
mipsel-softmmu, mips64-softmmu, mips64el-softmmu, arm-softmmu,
m68k-softmmu
gcc34 に依存してるターゲット(つまり tcg 化してない)がまだあるのかな。まぁ m68k
とかナニ使うんだろうということで, 切るにはいいかもしれない。
amd64 ホスト環境で i386-softmmu が kqemu で動くようになったそうで。こりゃだい
ぶ融通効くようになりましたなぁ。。 > amd64 環境下で 32bit, 64bit OS の運用
なお tcg にはまだ露骨なバグが散見するようなで注意みたいですな。。
SEE ALSO: http://lists.freebsd.org/pipermail/freebsd-emulation/2008-June/005030.html
SEE ALSO: http://wiki.osdev.info/?qemu%2Fqemu-internalsJ
@2008.06.21
DragonFlyBSD から Agere ET1310 ギガビットイーサネット(10/100/1000)のドラ
イバが移植されました。これ日本で売ってるのかなぁ(^^;。。ググったけど,
ろくに情報が見つからなかったです。
SEE ALSO: http://lists.freebsd.org/pipermail/cvs-src/2008-June/092261.html
@2008.06.21
amd64 アーキテクチャに置けるカーネル仮想アドレス空間のサイズを変更させる
準備がちゃくちゃくと進行中です。2GB オーバーに設定した時に影響を受ける箇
所を修正しています。1. カーネルモジュールのマッピングを 2GB 最上位にする。
2. 2GB 以上の minidump を行えるよう修正。が行われています。
SEE ALSO: http://lists.freebsd.org/pipermail/cvs-src/2008-June/092253.html
SEE ALSO: http://lists.freebsd.org/pipermail/cvs-src/2008-June/092264.html
@2008.06.21
ports/misc/tmux なる ports があるらしい。GNU Screen を置き換えられるもので
軽量, 快適動作で BSD ライセンスだとか。まぁちょっと試してみるかな。
@2008.06.21
amd64 アーキテクチャにおけるカーネル仮想アドレス空間のサイズを変更(増加)させる
準備が入った。
SEE ALSO: http://lists.freebsd.org/pipermail/cvs-src/2008-June/092252.html
パラメータは現在のまま(2GB max)で, じきに変更されるとのことで。
@2008.06.19
ECMP (Equal Cost Multi Path) ルーティングについて調べてみる。
期待した分散とかフェイルオーバーが効かなかったで調べてみたところ「たぶん」
ということで。
とりあえず下記のような構成を行ってみた。当然 RADIX_MPATH カーネルオプショ
ンを有効にしたカーネルでの話である。
# route add default -iface axe0
# route add default -iface rl0
+------+
| fxp0 | ゲートウェイ
+------+
↑ ↑
+------+ +------+
| rl0 | | axe0 | ECMP 検証機
+------+ +------+
この時 axe0 なり rl0 なりで通信していたのを遮断(ケーブル切断)してみても切り
替えてくれず, なんだか一方を使いはじめたら最後, そっちしか行かない気がす。
ハッシュでてきとーに割り振る機能も動いてない感じが…。
ソース見たところ, ~RTF_GATEWAY つまり -iface の場合, 最初に指定されたものし
か見ない気がする(sys/net/rtsock.c あたり)。RTF_GATEWAY つまり IP 指定してル
ーティング定義した場合, はじめてそのあたり処理するコード
(sys/net/radix_mpath.c)に到達してるみたい。
また, その際, 到達先に対して, ハッシュ値を計算して, 到達経路数(今回は 2, も
っとも使われないけど)で割った余りで決めている。つまり, 都度計算してるわけで
なく, 必要な都度, 最初に計算していた。実際 netstat の結果を見るとルーティン
グテーブルに見えていることが確認できる。しつこいようだけど, 今回の構成では
こんな処理はしていない。一方的に決定されるだけ。
default link#5 UCS 0 0 axe0 =>
default link#1 UCS 0 0 rl0
219.127.74.121 link#5 UHLW 1 1 axe0
面白いことに通信を止めると消えるらしい。感じからすると 1 秒程度かな? > 寿命
まぁいずれにせよ, 下記のような構成でないと期待したように動かないみたい。
もっとも環境用意できんで, 検証してないけど。。。
+------+ +------+
| NIC1 | | NIC2 | ゲートウェイ
+------+ +------+
↑ ↑
+------+
| NIC0 | ECMP 検証機
+------+
やっぱ L3 ソリューションを L2 でやるのは…ということで。 (^^;
とりあえずてきと〜であたりを付けてみました。程度の情報ということで。。
@2008.06.15
current から PECOFF が消えて wine の時代だ〜という話が某所ででたのと,
PECOFF は直接実行できるのが面白いという話があったので, ネタを仕込んでみる。
SEE ALSO: http://blog.ninth-nine.com/archives/wine-kmod-20080615.tar.bz2
ports/sysutils/mono-kmod をベースに .exe ファイルを実行すると wine で
立ち上げようとするものです。ネタ以外の何者でもないので, 作っただけで
全然実行してなかったりする。まぁやる気無い方向で:-)。
@2008.06.13
BSDCan2008 で ZFS Internals な話が出てたようで。。。
SEE ALSO: http://kerneltrap.org/FreeBSD/BSDCan_2008_ZFS_Internals
リンクを見てみると ZFS の安定性に関する議論など, 色々出てました。
SEE ALSO: http://kerneltrap.org/FreeBSD/ZFS_Stability
微妙に古いネタになってる気がしないでもないけど。
ZFS 使用にともなうカーネルパラメータの調整はなかなか難しいところがあり,
ユーザーランドサイドに割り振られてる各種パラメータをカーネルサイドに振り
分ける必要がある。例えば amd64 アーキテクチャであったと言えどもカーネル
メモリ(KVM)が最大 2GB となっている問題など, ZFS によって浮き彫りになった
問題の解決はなかなか解消しにくい。
@2008.06.10
zsh の変数置き換えについてのメモ。
for i in **/*(.); { echo ${i:置き換えルール} }
の置き換えルール(Modifiers)
h: dirname 相当
r: 拡張子を削除
t: 先行パスの削除
l: 全部小文字に変換
u: 全部大文字に変換
s: s/l/r として置き換え
gs/l/r または s/l/r/:G で繰り返し置き換える。
/ を置き換えたいときは | など別の文字を使用することが可能。
例: s|l|r
とりあえず zshexpn(1) より。
@2008.06.10
新しい vimage キター。前パッチが公開された時は 3 日くらいで使いものに(!?)
ならなくなったけど(パッチがあたらなくなった), 今回はどれくらいもつかな。
あと全然コンパイルできなかったけどどうだろう。
SEE ALSO: http://lists.freebsd.org/pipermail/freebsd-current/2008-June/086149.html
SEE ALSO: http://www.freebsd.org/~julian/vimage.diff
とりあえず vimage については以下参照。
SEE ALSO: http://wiki.freebsd.org/NetworkVirtualization
SEE ALSO: http://imunes.tel.fer.hr/virtnet/
@2008.06.08
alc 氏キター! FreeBSD/amd64 の KVM (Kernel Virtual Memory) を
6GB まで拡張するパッチが出た。
SEE ALSO: http://lists.freebsd.org/pipermail/freebsd-hackers/2008-June/024804.html
SEE ALSO: http://www.cs.rice.edu/~alc/amd64_kvm_6GB.patch
現状だと 2GB までしか拡張できなかった(カーネルの配置が末尾 2GB にあったので)けど
これで 6GB まで ok だね。
あと KVM(vm.kmem_size) も 400MB → 2GB と変更になっている。
@2008.06.08
yongari 氏キター! re(4) の新しいパッチが出た。CFT (Call For Testers) ということで。
SEE ALSO: http://lists.freebsd.org/pipermail/freebsd-current/2008-June/086114.html
SEE ALSO: http://people.freebsd.org/~yongari/re/re.HEAD.20080607
とりあえず自分の環境だと玄人志向の GbE-CB (RTL8169SBL) がまともに動くようになりました。
SEE ALSO: http://www.kuroutoshikou.com/modules/display/?iid=1171
@2008.06.08
日記に書くほどまとまってないネタでも書こうかと思い至る。
「独り言」なんで twitter を真似て「whisper」もいいかなと思ったけど,
「つぶやき」にちなんで「mutter」で行ってみる:-)。
相変わらずテキストで。後でパーサーが書けるように「@日付」で切り分けようと思っている。
あと最新→最古の順番とか。まぁそのあたりのフォーマットはちゃんと考えるようにしよう。