毎日新聞の記事より。 Solaris 10がでるらしい。 AMD64 にも対応するんだとか。 んー、AMD64マシン、買おうかなぁ。
何となく Kinesis にも慣れたってところで、そろそろ Input Method を MS-IME から SKK に切り替えようなんて思ったわけです。 SKK って ひらがな と 送り仮名がある場合は送り仮名の子音 をキーにして辞書のテーブルから漢字をひっぱりだす、っていう方式になっていて、日本語入力のプログラムとしては珍しくシンプルなのにアフォな日本語変換プログラム (昔の「ことえり」とか「かんな」とか) よりかは快適に入力できる、っていう代物なのです。 SKK ってシフトキーを多く使うので、「野球好き好き SSK。 シフトバシバシ SKK。」とか言われたことがあって うるせー とか思っているわけですが。
で、そのSKKなのですが、新しいノートパソコン買ってiBookを使わなくなったあたりかSKKを使う頻度が下りまくっていて、久しぶりに使ってみたところヤヴァいほど入力下手になっていた。 さっきから少しずつリハビリしているので、だいぶ入力できるようになったのですが。 SKKのリハビリするまで、Kinesis keyboard のシフトキーが押しづらいなんて思っていたのですが、SKKのリハビリしたところ さっきまでの状況が嘘だったかのように華麗にシフトキー押せるようになりましたよ。
ちなみにSKKなのですが、Windowsだとskkime っていうものが、MacだとAquaSKKが、X Window System なら skkinput2 や skkinput3 や iiimf-skk とかがあるのです。 ぼく的にはマルチプラットフォームでシンプルでよい日本語入力のソフトだと思っているのですが、ぼくの知っている範囲で SKK 使っているのってボクと小島肇さんぐらいしかいなくって。 いや、むしろ「便利だから使ってみてくださいよ」って勧めても相手にしてくれないんだな、これが。
で、Windowsにskkimeなんぞインストールしたわけですが、いつも多様していた「[zh] で [←]」とかいう rom-kana-table が使えないのです。 で調べてみたところ、「skkimeでもrom-kana-tableをもう一度」なんていうのがあったので、こんどやってみます。
ってかやってみたところ速攻でできました。 リンク先の ruby のスクリプトを euc-jp で保存して cygwin 上の ruby で実行してやったところ OK でした。
やってみたいことがあるのですが、だれかぼくに64bitなマシン (AMD64/Itanium/PPC G5/SparcV9 どれでもいいから) 貸してもらえないですかねぇ。 というか自分で買えってか。 最近じゃ20万円握り締めてソフマップ行けばイイの買えるしな。 Apple store に発注かければイイんだしなぁ。 や、でも思いつき程度で20万払えやっていってもキツい。
(ウチのだけかもしれないが) Kinesis って CapsLock を押すとビープ音が鳴るようになっていて、CapsLock に Control key を割り当てて使っているものとしてはチト邪魔な機能だったりする。 ってことでビープ音ならしているブザーを何とかしようと思ってキーボードの蓋開けてみた。
で、ブザーの実装されている基板がこれ。 左右のキーのスイッチの基板と接続するコネクタが接着剤で固定されていたりしたので、こいつを剥がしてこの基板だけ取り外して半田ごてでブザーをはずせばよいのだが、ちと面倒だった。
で、面倒だったのでティッシュを小さく切ったものをブザーの口のところに詰め込んで、ガムテープで封をしてみたところ… 逆にビープ音の音程が高くなって耳障りな音になっただけっていう結果におわった(笑)ので、元に戻したのでありました。
基板みて思ったのですが、基板の copyright の表記が2002年になっていて、実装されているLSIに「Essential, Classic and Pro」とかいうステッカーが張ってあって、基板上に「USB」とかいう文字が印刷してあったり、ジャンパすると何かが起きそうな部分があったりしたので、もしかするとジャンパをホゲっとすると上位機種と同じ機能になるんじゃないかと思ってみたり。
とりあえず明日は本番投入の方向で。
knaka さんのコメントのとおりに、3万円程度の予算で既存の ATX な PC を AMD64 なマシンにアップグレードする、っていう方法があるので、いつものソフマップに見に行ったのですが。 店頭でモノを眺めていたところ「どうせ Windows の 64bit 版ってまだ出ていないし、昔に比べてLinuxへの情熱が冷めてしまってLinux専用なPCを買う気にならないし」と思って買うのを断念。 やっぱ PowerMac G5 かなぁ、とか、iMac G5 ってのもあったけどモニタ一体型は受け入れられない、とか思いながら予算考えてみたり。 よくよく考えると PPC G5 なMacって 普通にMacOS Xが動くので、それなりに使えそうなのです。
あ、あと、 Apple Cinema Display ぼくもほしくなりました。 20インチぐらいのやつが。 本体と一緒にすると50万円コースになるので買いませんが。 あー、でもそろそろ家の液晶モニターも大きいのに交換したいなぁ。
@帰りの大江戸線の六本木あたり。
また今日も書くべきプログラムがたいして書けなかったのですが。 なにが忙しかったのか見直したところ、特許の書類をマッハで確認するとか、なんやらミーティングが長かったりだの、リリース前のQAからのツッコミに返信するだの、詳細部分の決め事ミーティングを2件ぐらいしたり、事故対応したり。っと、何もしていないように一日が終わったような気がしていたのだが、列挙すると、それなりに仕事したんだなあ俺。
キャッシュサーバの squid の coss というファイルシステムが良い感じという噂をもとに、どういうものなのかチラ見してみようと思い、いじってみることに
会社に出社したけど暇なので調べていた。 こんな感じにビルド。
./configure --enable-storeio="ufs aufs coss" make
--enable-storeio= でキャッシュに使うファイルシステムを指定します。 coss を使うときには aufs も同時に指定しないと aio* な関数が undefined になるので同時指定が必要です。
とりあえずビルドはできたのですが、COSSを使ったファイルシステムの設定・構築の方法を調べるのが面倒だったので、後回し。 COSS のソース読んでどのようなAPIになっているのか見てみたところ、こんなインターフェースが準備されていると思ってよいのかな。
$ less src/fs/coss/store_coss.h ... 省略 ... #define SWAPDIR_COSS "coss"
#if USE_AUFSOPS /* XXX a hack; the async ops should be broken out! */ typedef void AIOCB(int fd, void *cbdata, const char *buf, int aio_return, int aio_errno); void aioWrite(int, off_t offset, char *, int size, AIOCB *, void *, FREE *); void aioRead(int, off_t offset, int size, AIOCB *, void *); void aioInit(void); int aioCheckCallbacks(SwapDir *); void aioSync(SwapDir *); void squidaio_init(void); void squidaio_shutdown(void); extern int squidaio_magic1; int aioQueueSize(void); extern int squidaio_magic1; #define MAGIC1 squidaio_magic1 #endif ... 省略 ... extern void storeCossAdd(SwapDir * sd, StoreEntry * e, int curstripe); extern void storeCossRemove(SwapDir *, StoreEntry *); extern void storeCossStartMembuf(SwapDir * SD); extern void membufsDump(CossInfo * cs, StoreEntry * e); extern void storeCossFreeDeadMemBufs(CossInfo * cs); extern int storeCossFilenoToStripe(CossInfo * cs, sfileno filen); extern char const *stripePath(SwapDir * sd);
extern struct _coss_stats coss_stats;
構造体 SwapDir, StoreEntry などが squid の本体側のソースでも多用されているところを見ると、これらの関数が COSS の RW のAPIと見てもよいのかな。
で、いくつかの種類のファイルシステムをサポートしているってことは、どっかでデバイスドライバのレジストみたいなことしているはずだよなと思い、追いかけたところ store_dir_coss.c 内でこのような部分を発見
void
storeFsSetup_coss(storefs_entry_t * storefs)
{
assert(!coss_initialised);
storefs->parsefunc = storeCossDirParse;
storefs->reconfigurefunc = storeCossDirReconfigure;
storefs->donefunc = storeCossDirDone;
coss_state_pool = memPoolCreate("COSS IO State data", sizeof(CossState));
coss_index_pool = memPoolCreate("COSS index data", sizeof(CossIndexNode));
coss_realloc_pool = memPoolCreate("COSS pending realloc", sizeof(CossPending
Reloc));
coss_op_pool = memPoolCreate("COSS pending operation", sizeof(CossReadOp));
cachemgrRegister(SWAPDIR_COSS, "COSS Stats", storeCossStats, 0, 1);
coss_initialised = 1;
}
構造体
某所から coss の機能を apache に移植できたらカッコいいよねとかいうこと言われて挑発されて(笑)いるのですが、このモジュールのレジスト部分から機能を洗い出して、適当なところで apache DSO module にくっつけるコネクタみたいなのをくっつければいいのか。 こんな継ぎ接ぎ手法でできるかどうかの判断は、もうちょいソース追っかけてからにでも判断しよう。
早速この日記にコメントしようとしたら、キーボードの m ボタンを押したら Safari が腐って死ぬ。(笑) 現在 sync 中。
気分転換な出張というか、ゴルフ合宿へ。
一昨日は香港観光とかとか。 食い倒れしていました。 朝は糖朝で飲茶、昼も飲茶。 夜は港幣(ガンベイ)がほぼ底をついていたのでカレー。 このカレーがめちゃ辛かった。
昨日は朝6時に香港出発して国境越えて、シンセン経由で東ガンへ。 朝からゴルフしていました。 スコアは131。 んー、スコア悪くなった。 朝のウォーミングアップがイマイチだった。 後半は1ホールあたり9越えることがなくなったので、また進歩。 スイングのトップが回しすぎな位置なんじゃないってことを指摘され、直してみたところ、サクサク打てるようになった。
ゴルフ合宿2日目。 今日は起伏のとんだコース。 なかなか難しいコースでしたよ。 今日はplayer一人に一人のキャディーさんがついた。
ゴルフ場はきれいなんだけど、キャディーさんの態度が途中不機嫌に。 理由聞いたところ「スロープレーだとキャディーに罰金かかる」なんだそうだ。 平日午前の混んでもいない時間に、しかも前のグループもそんなに早くないのに、いちいち罰金なんかかけるなよ、と思った次第。 こういう経営していると人気なくなるよなぁ。
スコアはボロボロでした。(笑)
ゴルフが終わった後には、ホテルに併設されているマッサージでマッサージ。 足裏マッサージが45分で55元なので775円ぐらい、その後に肩のマッサージ50分で50元(686円)。 マッサージの時間単価が日本の10分の1ぐらいかも。 マッサージする兄ちゃんが話し好きで、一緒に行った人と北京語で機関銃のように会話。 「日本人の女の子かわいいよー、一番かわいかったのはロシアの女の子かなー」とかそんな内容。(笑) 足裏マッサージ、めちゃ効いた。 肩のマッサージは翌日もみ返しにあうほど。
こんな予定で旅行します。
2/14 2030 (JST) 羽田→香港 JL8739 2/15 0030 香港国際空港着 バスで移動 (A21 or N21) 0130 B.P. International House 泊 0700 B.P. International House 出発 0800 皇岗で中国入国 0900 深圳宝安空港着 1025 深圳→南寧 MF8363 南寧 Jindu Hotel 泊 2/16 南寧安吉→河池都安 バス kikoさんの家泊 2/17, 18 河池 2/19 河池都安→南寧空港 バス 17:40 南寧→深圳 CZ3272 (19:00 に出発遅れる情報あり) 18:35 深圳宝安空港着 (20:00 に遅れる予定) 皇岗か羅湖(Luo hu, Lo wu) から香港入国 バスか地下鉄で香港島北角へ。 22:00 Ibis North Point (香港島:北角) 泊 2/20 香港滞在 2/21 0030 香港→羽田 JL8730 0630 羽田着
ホテルなども全部予約した。 チケットも全部買ってある。 頼まれモノは忘れないように。
相変わらず寒いですね。
このシーズン、バイクに乗っていると冬用のモコモコな手袋をしていても寒い時期があります。 ってことで、こんなハンドルカバーを付けてみました。
ちょいとDVD-Rのメディアを近所の電気屋に買いに行こうとしたところ、カブのテールランプの常時点灯する尾灯のフィラメントが切れていたので、行き先変更して近所の島忠へ。 自動者バイク用品コーナーでテールランプを探していたところ、このオッサン仕様のハンドルカバーも発見したので一緒に購入。 1600円ぐらいだったと思う。
さっそく装着して走ってみたところ、右にあるウィンカースイッチが使いづらいですね。 バイクにくくりつける紐の締め付けなど調整してみたいと思います。
・ yamaz [今月中くらいまでにお願いします(・∀・ )っ/凵⌒☆チンチン ]
・ まさる [今月は全体的に暇なので、まったりやっています。 ただ apache に移植するのは結構面倒な作業が多そうです。 sq..]