最新 追記
RSS: href="http://endoh-namazu.tierra.ne.jp/diary/index.rdf"


半期 四半期 全カテゴリ

新・なまず日記


2009-12-02 [水]

_ [xfumble] Ubuntu 9.04で不具合対応(Xorg 1.6.x対応奮戦記)



ものすごく更新してませんでした。
全世界の極少数の遠藤なまずファンの皆さん、ごめんなさい。


これでも、ほとんど毎日、少しつづですが、課題解決に向けて検討してたんですよ。
ようやく目処がたってきたので、ここまでの奮戦を、覚書しときます。


(1)ChrisさんのAutoKeyのソースコードを読んで、linuxの場合は、/dev/inputの下のデバイス(Linux Input Subsystem)を直接読めば、任意の入力キーが確認できることがわかった。しかーし、ここのデバイスって、root権限をもった人じゃないと、オープンできないのね。うーん、ああ、suidってやつ?あれ立てれば誰でもxfumbleを実行した人はroot権限になれんじゃね?ということで、とりあえずsudo ./xfumbleでテストを進める。

(2)しかーし、Ubuntu 8.10(Xorg 1.5.x)では、ここのデバイスをオープンしても、なんのリターンも得られない。なんだよ絶望的じゃん!と思ったのだが、Ubuntu 9.04では、ちゃんと値が得られる。どうも、Xorg 1.5.xでは、排他オープンかなんかをかけてやがるのではないだろうか。まぁ、Xorg 1.5.xでは、RECORD extensionが使えるんだし、そっちはRECORDを使って、RECORDが使えなくなっちゃったXorg 1.6.xでは、/dev/inputをオープンすることにする。よかったよ。Ubuntu 9.04では/dev/inputが使えて。使えなかったら絶望的だった。

(3)xfumbleでは、xfumbleがタイプしたキーと指がタイプしたキーとを見極めるためなどに、キーイベントのタイムスタンプを比較している。だからタイムスタンプの正確性は非常に重要。しかし、/dev/inputからもらえるキーイベントにも、タイムスタンプは付いているのだが、Xorg(X Window System)からもらえるキーイベントのタイムスタンプとは、値がめちゃくちゃ違う...これは、/dev/inputについているタイムスタンプは、OSの起動からの時間を表しており、一方、Xorgからもらえるタイムスタンプは、Xorgの起動からの時間を表しているせいだ。両者を一貫して扱うために、OS時間とXorg時間とのオフセットを埋める変数を作って、難を逃れた。

(4)しかーし、xfumble起動中に、一度サスペンドして、そこから復帰した後の動作が、どうもおかしい。これも、タイムスタンプのせい。サスペンドしている間、OSの時計は動くが、Xorgの時計は止まったまま。だから、OS時間とXorg時間とのオフセット値が、サスペンドによってずれてしまう....こいつは弱った。しかし、10秒に一度、OS時間とXorg時間とをチェックし、差があまりにも離れすぎていた場合は、サスペンドが起こったんだな、と認識し、オフセットを自動補正するルーチンを加えて、難を逃れた。

(5)なんとか目処がついたので、そろそろ、sudo ./xfumbleをやめて、suidを試してみるか...と考えたのだが、これでオイラのセキュリティに対する勉強不足が露呈。xfumbleはRubyで書いているのだが、Rubyは、「スクリプト言語が使用者が意識することなくroot権限で実行される危険」をちゃんと認識しており、suid指定をサクっと無視するような仕様になっていた。ガーン。Rubyのスクリプトファイルそのものでなく、Cでバイナリのラッパーファイルを作って、そいつにsuidをつけてみると、とりあえずroot権限で実行できるのだが、スクリプトがrequireで呼ばれるたんびに、「危険なスクリプトがroot権限で実行されるかもしれないぞ!」とワーニングが出る。なんかゲッソリした。確かに、root権限でスクリプトを実行するのは、危険だよな。将来、xfumbleが原因でウイルスが蔓延とかしたら、タマランですたい。オイラ、このあいだ新型インフルエンザに感染したばっかなのに(これは関係ない)。ということで、やっぱり、/dev/inputをオープンする部分だけ、suidで動く別プロセスにして、xfumble本体は、普通のユーザ権限で実行させることにした。suidで動く別プロセスとのプロセス間通信のやり方としては、ソケットとかいろいろあるんだが、せっかくX Window Systemの上で動くアプリなんだから、ウインドウプロパティやXのクライアントメッセージで、キーイベントの受け渡しをすることにした。

と、いうことで、現在、(5)のデバッグ中です。

まるで亀の歩みのように進みが遅いけど、考えて考えて、課題を解決していくのは、やっぱりやめられんですよ。ソフトウエア開発は趣味の王様ったい。(長崎弁が最近のお気に入りたい)。

2009-12-03 [木]

_ [その他] 新型インフルエンザにかかって、オチンチンにおできができたでござる



まぁ、あえて言えば、そうなる、ってな話なんですけどね。

最初は、微熱だったんですよ。37.2度くらい。でも、すでに女房がA型感染確定だったし、念のために会社を休んで、正解でした。みるみるうちに熱がでて、恐らく39度は越えたでしょう。

医者にいって、女房がA型っすから、と言ったのに、「熱が出て12時間以上経たないと検査しても結果でないし、検査しなきゃぁ、タミフルは出せないなぁ」とケチなことを言われて、高熱にうなされて一晩を過ごす。

翌日、ようやく鼻の穴に綿棒を突っ込んで、検査してくれた。結果はバッチリA型(あたりめぇだろ!)。この時期のA型だったら99%新型ですねといいながら、医者はようやくタミフルを出してくれた。

いやぁ、医学の進歩ってすごいですね。効くよねぇタミフル。あっという間に体が楽になった。楽にはなったが、オイラだけでしょうか。タミフルを飲むと、なんだかやたらと眠くなって、一日中寝てました。朝起きて、タミフル飲んで寝て、夕方おきて、タミフル飲んで寝て、なんて暮らしが二日ほど。

もらったタミフルが底をついたので、ようやく起き出して体を慣らすのに二日。なんだか生まれ変わったような気がして、さて、明日っからまた会社でがんばるぞ、という晩、これまでの寝てばかりの生活でリズムが狂ったのだろうか。フト、夜の3時に目が醒めてしまう。

どうにもこうにも眠れない。困ったな。明日から山積みの仕事をやらなくちゃいけないのに、これじゃ寝不足だ。困った...とフト気がつくと、寝起きのせいか、アッチの方がピンピンになっておりました。

...うむ、かくなるうえはオナニーだ。別に特にヤリたかぁないんだが、ちょっとコスって一本抜けば、スッキリして眠れるに違いない...と、ムンズと握ってみると、なにやら、奇妙な感覚が...

ひい、幹の、というか茎の、というか...の真ん中あたりに、オデキができてる...たちまち萎む当方の愚息。おおおおおかしいぞ。そんな艶っぽい病気になるようなことは、女房とだってここ数年イタシテはおらん。まるで清教徒のように清い生活(オナニーは別)を送っているオイラなのに...どうしてこうなった?なんでこうなった?

ハッ、と気がついたのが、寝てばかりいた間、お風呂に全然入らなかったこと。だって眠いしだるいし。それで、体全体がカユくて、特に、男性のデリケートな部分(=チンポ)がカユくて、ボリボリ掻いてたのを思い出した。

おそらく、汚い手でデリケートゾーンを掻いたおかげで、バイキンが入っちゃったんだろう。あぁ、フェミニーナ軟膏をサオに塗っておけばよかった...後悔、先に立たず。ついでにチンポも立たなくなったので、傷心を抱えながら寝ましたです。

それから、オシッコをするたんびに、オデキの大きさを確認しております。徐々に小さくなってきているようでなによりです。いやまったく、新型インフルエンザは本当に恐ろしいですね。皆さんもお気をつけください。

2009-12-08 [火]

_ [その他] 中央フリーウェイはリヴァースフリー




中央ドリームバス。
中央自動車道を通る夜行バスだから、中央ドリームバス



東京の実父が入院した。
オイラもアナゴ姉も、関西で暮らしているので、こういう時になにもできない。
両親から、子供は須らく自立すべし、という教育を受けた、と思ってる。
だから何も考えずに関西に出てきてしまったんだが、世間じゃそれをオヤフコーと呼ぶ、ということに、父が入院して初めて気がついた。



せめて、連休がある時くらいは、東京に帰ろう、とアナゴ姉と相談した。毎回新幹線ではお金も時間もキツいので、少しでも効率を上げるため、夜行バスを利用することにした。

手配はアナゴ姉がやってくれた。それが、オイラが乗った中央ドリームバス。アナゴ姉もこれに乗るはずだったんだが、仕事の都合がつかず、オイラだけが乗ることになった。




旅行は好きなほうである。まして、初めて乗る交通機関は胸が躍る。特に、中央ドリームはたったの3列シート、思いっきりリクライニングできて朝までグッスリ、と、Webサイトには書いてある。ちょっとした小旅行気分に期待が高まる。

梅田駅22:50分。鼻唄気分で、缶ビール片手に、バスに乗り込んだ。


なんか、臭い...。オヤジの加齢臭にオヤジのポマード、それにタバコの匂いが入り混じったような、なんつーか、新橋の駅前のような匂いが、ムワっとたち込めている。

バスの中を見渡してみると、オイラのようなダラケた気分の客は一人もいない。一秒でも多く、睡眠を取り、明日の仕事に備えなければ!オレの睡眠を邪魔する奴は殺す!とでもいいたげな、気迫のこもったオヤジがビッシリと席を占めている。出発前だというのに、早々と、持参の空気枕とアイマスク、耳栓、マスクを完全装着、リクライニングは最大限で、睡魔を呼び寄せる呪文でも唱えているかのようだ。

考えてみれば、旅費を浮かせたいがための、夜行バスなのである。この不景気、出張原則禁止、なんて会社も多い中、それでも関西関東を往復しなければならない。そんな連中が、すこしでも費用を浮かせるために利用するのが、夜行バスなのである。いってみれば、プロ御用達。さっきまで仕事やってました。明日も朝一から会議です。そんな疲労を滲ませた中年サラリーマンを詰め込んだ中央ドリームバス。ムワっと来るオヤジ臭は、日本を支える彼らの、「なにか」を象徴しているように思える。なにか?...気迫だったり、哀愁だったり、ペーソスだったり...

バスは既に動き出した。電気も消された。場違いな気分になったオイラは、なるたけ音をたてないように、缶ビールの栓を開けて、ジュルジュルと中身を啜る。観光気分はどこかに消えうせ、オイラもさっさと眠りにつかないと、という気分がする。しかし、立ち込めるオヤジ臭はいかんともしがたい。ビールを半分残し、マスクをした。隣にアナゴ姉がいりゃぁ、この状況もギャグにできるのにな。しかし、アナゴ姉が座るはずだった右隣の席は、完全睡眠装備のサラリーマン...おっと、こいつはブルーカラーのようだ。さっきまで、ビルの内装やってました、という感じの作業着姿で、空気枕にマスクを付け、リクライニングした椅子の背中に体をまかせている。




アナゴ姉に、携帯から、「状況報告」のメール(なんかこのバス臭い、とか)を打って、ふと右の席をみると、さっきまで、上をむいて寝ていたはずの作業着姿のオヤジが、体をエビのように折り曲げ、左腕で前の席の背をつかみながら、下を向いている。薄暗いバスの中で、右耳からはずした白いマスクが、左耳からぶらさがり、ユラユラ揺れている。どうしたんだろう...

と、突然、ガホッ!と喉が鳴る音がしたと思ったら、ビチャビチャビチャ...と液体がこぼれる音が響いた。え!まさか、オヤジ、ゲロ吐いた!?頭に疑問符が浮かんだ次の瞬間、「はい、そうですよ」と言わんばかりに、ゲロ臭が強く鼻を打った。

おいおい、冗談じゃないぜ!あまりのことに体が硬直するが、薄暗くて状況がよくわからん。ゲロオヤジのさらに右隣のスーツの男に目をやると、男もやはり体を硬直させたまま、視線だけがゲロオヤジの上から下を往復していた。その視線の往復運動に、「なんなんだよこのオヤジ!」という男の魂の叫びを聞いた。


たっぷり十秒程度、バス進行方向向かって左からオレ、ゲロ男、スーツ男は、彫刻のように、運動を止めた。そのうち、ゲロ男がモゾモゾと動き、ユラーリと、何事もなかったかの様に立ち上がり、階下のトイレに消えていった。

オレとスーツ男は、はあわてて、現場検証を始めた。「被害状況」が知りたかったのである。薄暗くてよくわからなかったが、床に多少の飛沫の後がある程度で、ビチャビチャビチャという音の割には、意外と残留物が少ない。オヤジがうまくキャッチしたのだろうか?今となっては真相はわからない。とにかく、掃除が必要そうな状況ではなかった。

それにしても、ゲロオヤジのフリーダムぶりは素晴らしいものがある。ゲロ吐いて、それがどうした、といわんばかりに、こちらには一瞥もくれない。まるでこの世の王のようだ。アイム、フリー。フリーダムな男は便所にこもったまま。

オヤジがいなくなって、少し広くなった右隣に、気持ちが楽になったオレは、少し眠気に襲われた。ウトウトしながら、フリーという言葉が、連想記憶をひっぱりだすのを感じた。フリー、中央道。「中央フリーウェイ」。荒井由美のヒット曲である。「彼氏と中央道飛ばしたら滑走路みたいでステキー」というアホみたいな唄だが、現状とのギャップに思わず苦笑した。おいおいユーミンよぉ、フリーはフリーでも、こっちはゲロフリーだぜ。滑走路どころか、大衆酒場の便所の隣って感じだけどな。



尿意を感じて目を覚ました。ビールなんか飲まなきゃよかったとやや後悔した。トイレに行こうと立ち上がりかけると、ゲロオヤジの席が空なのに気が付いた。時計を見たら、ゲロ事件から既に1時間以上経過している。すると、オヤジは1時間以上も便所にこもったままか!?

果たして、便所には鍵がかかっている。こちらの尿意の都合もあるので、ノックをするが、返事がない。状況からすると、オヤジは便所でゲロの残りを排出し、そのままそこで寝込んでしまった可能性が高い。激しくしつこくノックし続けること五分以上。ようやく、ドアがあき、またもや、ユラーリとトイレから出てきたオヤジは、すーっと階段をのぼり、席についたと思ったら、今度はすさまじいイビキ音を発し始めた。タマラーン!


サービスエリアでの休憩時に、あわてて自衛のために、空気枕とアイマスクを購入した。耳栓も欲しかったが売り切れだ。代わりにイヤホンを耳に突っ込んで、夜行バスで睡眠を取ることは戦いであるとの認識を新たにした。そして、次にウトウトするまで、ユーミンのあの唄が頭の中でなり続けたのである。


♪中央フリーウェイ
♪右に見えるゲロオヤジ
♪下にはゲロの飛沫
♪眠れない夜はまだ続く
♪匂いも続く



本日のツッコミ(全6件) [ツッコミを入れる]

Before...

_ 遠藤アナゴ [あけおめことよろです。「こ」と「と」にスペース入れるのが正解です。    あー、本流以外の話題はたしかに誰もつっこ..]

_ 遠藤なまず [アナゴ姉さん、ツッコミうれしかぁ。 ばってん、俺どんのブログ、マイナーったいね。コメントつかんごとば、もう慣れ..]

_ 遠藤アナゴ [都会ば出たら博多弁しゃべらんいうとったやなかか? まあよか。家族ば映画、倍賞千恵子も笠智衆も、博多弁ばしゃべりよる..]


2009-12-22 [火]

_ [xfumble] 最近のLinuxディストリに対応、やっとリリースしました。



リリース間隔が大変開いてしまい、申し訳ない。
Ubuntu9.04で動作できなくなった、という問題を受け、キー配送システムを大幅に見直してました。
ようやく、問題なく動作できそうになったので、リリースします


今回のバージョンで、動作を確認した環境は、下記のとおりです。

Fedora8
Fedora10
Ubuntu8.10
Ubuntu9.04
Ubuntu9.10


XOrg 1.5を利用するUNIX系OS、あるいはXOrg 1.6以降を利用しているLinuxOSならば、多分、他の環境でも、動作すると思います。もし、動作がおかしいOSがあったら、ブログのコメント欄に、ご報告いただければ幸いに存じます。

年内にリリースできたことを、うれしく思っております。年の瀬ってホント忙しい。今日(実は12/23日)も、息子と遊んでやったり、息子と息子の友達にお昼ご飯を出してやったりしながら、合間をみてテストをやってました。
本当は、昨日でリリースしてしまいたかったんですよ。でも、息子が一人ぼっちになっちゃって、寂しがるから、遊んだり、一緒に寝たりしたから、結局できなかった。

リリースが終わったので、ようやく、年賀状が作れます。ああ、時間がない...

本日のツッコミ(全10件) [ツッコミを入れる]

Before...

_ 遠藤なまず [よかった! うまく動作しているようで、本当にうれしいです。 ]

_ Sihyjmag [aQ92HF この間も俊太郎の詩をお http://www.stlouisbusinesslist.com/busi..]

_ viagra [この間も俊太郎の詩をお http://www.stlouisbusinesslist.com/business/5..]