ttt

getttyent

(FreeBSD) こんなkernel configファイルの書き方知らなかった

2008-08-22 23:59:00 | デジタル・インターネット

FreeBSDのメーリングリストを斜め読みしてたら、kernelのconfigファイル(/sys/i386/conf/にあるやつ)に、nooptionsというキーワードが入っているものを見つました。
たとえば普通のconfigファイルGENERICでは

options         NFS_ROOT

と書いてあったりする行が

nooptions         NFS_ROOT

のように書き換えられていたんです。

おおっ!私だったら"#"をつけてコメントアウトしちゃうんですが、nooptionsなんて書き方があったんですか。

さっそく、マニュアルでconfigを確認。「man config」したら、config(8)の「config -- build system configuration files」が出てきて、SEE ALSOに書いてあるconfig(5)を読めばよいらしいです。
「man 5 config」したら、「OpenSSL CONF library configuration files」なんてのが出てきちゃって、ありゃ?だったので、「man -M /usr/share/man 5 config」しました。

どうやら、nooptionsのほかにもno*なキーワードがあり、nocpu、nodevices、nomakeoptions、nodevicesが使えるようです。

nocpu cputype
    Remove the specified CPU from the list of previously selected
    CPUs.  This directive can be used to cancel the effect of cpu
    directives in files included using include.

nodevice name [, name [...]]
nodevices name [, name [...]]
    Remove the specified devices from the list of previously selected
    devices.  This directive can be used to cancel the effects of
    device or devices directives in files included using include.

nomakeoption name
nomakeoptions name
    Removes previously defined make(1) option name from the kernel
    build.  This directive can be used to cancel the effects of
    makeoption directives in files included using include.

nooption name [, name [...]]
nooptions name [, name [...]]
    Remove the specified kernel options from the list of previously
    defined options.  This directive can be used to cancel the
    effects of option or options directives in files included using
    include.

configファイルは、「include」で別ファイルを取り込むことができるんですが(使ったことない)、「#」でコメントアウトする方法では、includeしたファイルに書いてあった記述を無効にできません。
一方、「nodevices」など「no~」なキーワードを使えば、includesしたファイルにあった記述を無効にできる、とのこと。

なるほど。
いつも、GENERICファイルをコピーして、書き換えてたんですが、GENERICをincludeして、nodevicesなどを列挙したファイルを作ったほうがよさそうな気がしてきました。

cvsup、make buileworld、make buildkernelでバージョンアップを続けていると、いつのまにかGENERICに新しいキーワードが増えていることがあります。しかも、その新キーワードが必須だったりすることが、過去にありました。そうすると、使い続けてきたconfigファイルで作ったkernelでは起動しなくなったりするわけです。

「no~」というキーワードはいつから使えるようになってたのでしょうか。

http://www.freebsd.org/cgi/cvsweb.cgi/src/usr.sbin/config/config.5

を見ると、5年前のrevision 1.1ですでにnooptionというキーワードが見えますが、4年前のrevision 1.5のとき(6.0-RELEASEの時ですかね?old_RELENGなんとか、というタグは何者なんでしょうか)と、すでに現在のマニュアルに近い記述にはなっています。

いやぁ~知りませんでした。


自転車のタイヤを交換しました

2008-08-21 23:59:21 | 日記・エッセイ・コラム

1~2年以上前に、「この自転車のタイヤは交換しなくちゃまずい!」と思って、通販で買っておいたんですが…

200808211

たまたまあまってた使い古しのタイヤを代わりに使ったら、とりあえずなんとかなっちゃったので、そのまま。
で、ふと気がついたら、そのタイヤも、すっかり磨り減って接地面に白いものが見えてきたり、もっとひどいのが、側面の一部が裂けはじめてて、まじやばい状態。
というわけで、先々週くらいに、やっと、買っておいたタイヤに交換しました。

タイヤを交換する手順は、パンク修理とほとんど同じなので、そんなたいした手間ではないのですが、なんだか最近、いろんなことが億劫になってきて、なかなか作業をしようという気になれません。

どうせなので、半年前から気になってたブレーキシューも交換したり(←これもヒドイ)、汚れもひどかったので、車輪まるごと洗浄したりと、数時間かけて、なんとかしてみたのが、8月10日のこと。

おかげで、すっかりよくなった自転車にのってお出かけ。
でも、帰りに、ものすごいどしゃぶりに・・・
うちの母親は「洗車すると雨が降る」というジンクス?があるんですが、それを継承しているみたいです。

今週になって、8月10日以来、はじめてその自転車を乗ろうと思ったら、タイヤの空気がすっかりぬけてました・・・あれれ
なんかまずかったかな。


今回の空気のヌケはたぶん何か原因があるんだとは思いますが、昔から、思ってたことがあります。
それは、

自転車は、1ヶ月くらい乗らないと、タイヤの空気が抜ける。
でも、毎日乗っていれば、1ヶ月たっても、空気は抜けない。

ということ。
不思議なんですが、どうもそういうことがあるんです。
勝手な想像なんですが、こんなことなんじゃないかと。

  • タイヤのゴムチューブには、目に見えない小さな穴がある
  • 圧力がかかっているので、時間がたつにつれて、だんだんの穴が大きくなっていき、その穴から、チューブ内の気体分子が抜け出していく(空気が抜ける)
  • しかし、自転車に乗ると、ゴムが適度に伸び縮みして練り直されるので、穴の大きさが小さくなる。
  • 穴が小さくなれば、気体分子は、チューブから外へ出て行けなくなる(空気は抜けない)

200808212

まあ、勝手な想像ですけど。


(FreeBSD) Firefoxでクレジット表示させるとCPUパワーを食いまくる?

2008-08-20 23:59:00 | デジタル・インターネット

たまたま気がついたんです

FreeBSD版のFirefoxで、HelpメニューのAbout Mozilla Firefoxを選んで、Creditsボタンをクリックすると、映画のスタッフロールみたいに、関係者の名前がスクロールして表示されていきます。

200808201

…で、このとき、topを実行してプロセスの状態を調べると

200808202

Xサーバが必死になってCPUをぶん回しているみたいです。

FirefoxのAbout Mozilla Firefoxウインドウの中を、猛スピードで、再描画しまくってるんですかねぇ?

ところで、FreeBSDのtopで表示されているWCPUという列の値は、必ずしもCPUの処理負荷を正確に反映していない、とかいう話を、しばらく前にFreeBSDのメーリングリストで目にしました。
詳しいことは忘れてしまいました。

でも、経験的に、「topって参考程度の情報だな」とは感じてました。

ちなみに、FreeBSD上で、Wineを使ってWindows版のFirefox2を実行しても同じように、CPU使用率が上昇しましたが、Windows上でWindows版のFirefox2を実行した場合は、ぜんぜんそんなことはありませんでした。


(FreeBSD) WineでFirefox2を実行してみたら、トウフが表示された

2008-08-19 23:41:34 | デジタル・インターネット

Wineは、Windows用ソフトウェアを、Unix系OSで実行できるようにしてしまう、ある意味、ものすげぇツールです。

私は、FreeBSD 2.2.xくらい、Windows 95くらいの時代に、電卓とかフリーセルとかが動いたのを見て、たしかにすげぇけど、実用的じゃねぇなぁ、くらいに思って、その後はすっかり興味を失ってました。

あれから10年以上が経過。最近になって、今のWineの完成度はすごいという話を聞きました。

が、しかし、10年前と比べて、パソコンの値段は安くなったし、処理速度もネットワークの通信速度も格段に高速になっているので、たとえば、本物のWindowsパソコンを、リモートデスクトップ接続で使うとか(ports/net/rdesktopは素晴らしい!)、エミュレータでWindowsを動かすとか、それでいいんぢゃね?と思ってたのでした。

しかし、なんとなく気まぐれで

http://gihyo.jp/admin/clip/01/fdt/200808/07
FreeBSD Daily Topics
2008年8月7日 【TIPS】FreeBSD Firefox 3とFirefox/Wine Flash9閲覧をシームレスに実現する方法

を見て、とりあえず試しておくか、くらいのつもりで、Wineを使って、Windows版のFirefox2を実行してみました。

なんかぁ

ごく普通に、当たり前のように動いてる

何も難しいところもなく、あっさりと動いてしまったので、なんかぁ、逆におもしろみがないというか…。

でもまあ、Firefoxって、Windows用とかLinux用とかMacOS用とかいろいろな環境にポーティングされているんで、きっと、プラットフォーム依存な部分を極力無くすとか工夫してるだろうし、そのために、できるだけ多くの処理を、OSまかせではなく自前でやる、とかなってそうな気もします。だとすると、Wineで動くのも実はたいして難しいことはないのでは…?と思ったんですが、WineでFirefox3は、まだ実行できないそうなんですね。ふむ。

いや、実際のところ、私の環境では、そう簡単には使い物になりませんでした。

その理由は、私がウィンドウマネージャに、fvwm-1.24rなんていう古いものを使っていたためらしいです。fvwm-1.24rだと、どういうわけか、WineなFirefoxのウィンドウが、画面の端にへばりついてしまって、ウィンドウを移動できなかったり、ウィンドウサイズも変更できなかったり、どうもおかしいんです。

winecfgで、ウィンドウマネージャの管理外にできたり、へばりついてる側のウィンドウ枠をドラッグするころで、ウィンドウサイズを変更でき、実質的にウィンドウも場所を動かせることを発見しました。

これでいいかと思ったのですが、

  • キーボードの操作で、ウィンドウのフォーカスを変更できない
  • WineなFirefoxのウィンドウのタイトルバーなどをマウスでクリックするたびに、ズル、ズル、ズル、ズル、と、WineなFirefoxのウィンドウが動いていってしまう

という感じで、だめだこりゃ…でした。

ただ、ひとつよかったのは、なぜか、WineなFirefox2は、すごくスイスイと軽快に動いて、FreeBSDのFirefox2よりも、レスポンスがよかったんです。これは、もしかして使い物になるかも?という気がしてきて、

10数年の時を経て、ついにウインドウマネージャを変えました。gnome2に。

うぉ~、動きが、もっさりしてるぞ~!

fvwm-1.24rを使い続けてきたのは、とにかくキビキビ動くのが絶対条件だったから。ちなみに、その前は、Motifのmwmを使ってました。mwmを使いはじめたきっかけは、実はWindowsにありました。Windows 3.0をしばらく使う機会がありまして、すでにMacintoshになじんでいたころだったのですが、Windowsを触ってみて一番驚いたことが、

GUIなウィンドウ環境なのに、マウスがなくても、キーボードですべて操作できる!

でした。しかも、それがけっこう便利なんです。つまり、マウスって意外と不便な道具なんですよね。キーボードのAlt+Tabでウィンドウのフォーカスを変更できる(タスクスイッチできる)のが特に便利で、X Window Systemでも、それができるmwmを使うようになったのでした。ちなみに、その前はtwm。さらに余談ですがuwmも少しだけ使ったことがありますよ。

mwmは、動きがもっさりしてて、嫌だなと思ってたころに出会ったのが、fvwm。それ以来、ず~っと、fvwmと一緒でした。

「ソフトウェアは反応速度が命」と思うようになったのは、vz editorとの出会いがきっかけかもしれません。そのわりには、emacs派ですけど(矛盾だらけだ)。

ああ、もういきなり嫌になってきました、gnome2。
でも、まあ、WineなFirefox2のために少しは我慢。よく知りませんが、なんか軽量なやつがあるそうですが…、ま、それはまたいつか試してみます。

さてさて、いろいろアドオンをインストールして、FreeBSDなFirefox2と同じように使えるようにしてみました。

そしたら・・・

WineなFirefox2も、もっさりと、遅くなりました

なんだぁ、FreeBSD版のFirefox2が遅かったのは、アドオンのせいだったのか…

とりあえず、乗りかけた船なので、まだ、WineなFirefox2を使ってみています。ひとつ気になったのが、ハイフンが文字化けして、「トウフ」、□という記号が表示されてるんです。

たとえば
http://jp.php.net/manual/ja/reserved.variables.server.php
を表示してみたところ

200808191


ソースを見ると

<p class="refpurpose"><span class="refname">$_SERVER</span> -- <span class="refname">$HTTP_SERVER_VA<wbr>RS [非推奨]</span> ― <span class="dc-title">サーバ情報および実行時の環境情<wbr>報</span></p>

みたいに書かれていて、

ためしに、Firefox2の「表示」メニューの「スタイルシート」にて「スタイルシートを使用しない」にすると、「-」で表示されるので、スタイルシートに何か原因があるらしいです。

どうやって上のHTMLソースの部分に適用されているスタイルシートの定義を探すのか、方法がよくわかんなかったのですが、とりあえず泥臭い方法ですが、スタイルシートのファイルを眺めていたら

  @import url("/styles/site.css");
  @import url("/styles/mirror.css");

と書いてあって、site.cssを見ると、

body, input, textarea, select, option {
   
}

と書いてあったんで、この辺のフォントを使うと、文字化けするんじゃないのかな、という予想できます。

ネット検索してみたら

FreeBSD + Wine で Flash9 を使う
http://www.daemonfreaks.com/blog/tags/Wine

という情報を見つけまして、~/.wine/system.reg というファイルの

[Software\\Microsoft\\Windows NT\\CurrentVersion\\FontSubstitutes]

の部分に、とりあえず

"Verdana"="IPAPGothic"
"Arial"="IPAPGothic"

を書き足してみました。VerdanaとArialにしたのは、一応、スタイルシートにそう書いてあったから、というだけで、正しいのかどうか、まったくわかりません。

ところで、system.regは、wineが動いているときに書き換えてもだめで、wineなプログラムをすべて終了させてから、書き換えないとダメでした(さもありなん、ではありますが)。

最初、Firefox2を終了させてから、system.regを書き換えたんですが、反映されないみたいで、なぜかな?と思っていたら、WineなMozilla Sunbirdも実行中でした。全部終了させないとダメなんですね。

とりあえず、代替フォントの指定(?)を追加したら、トウフは表示されなくなり、ハイフンが表示されるようになりました。

200808192


正しい文字を表示できないので、意図的に文字化けを起こすとき使われる記号として、トウフの“□”のほかに、ゲタ“〓”があります。このゲタは、大昔、活字を用いた印刷方式の場合で、活字が足りなくなったときに、とりあえず代わりに入れておいたのが〓という文字だったのが起源。
〓という活字があるのではなくて、単に、どんな活字でも、逆向きに入れると、〓と印字されるだけ…なんだとか。


昭和鉄道ドキュメンタリー

2008-08-17 14:04:31 | デジタル・インターネット

オリンピックも飽きちゃった・・・というか、私がテレビで見ると、金メダルを取り損ねて、見ないととったりするので、あまり見ないほうがよさそうです。

というわけで、インターネットで何か面白いものが見られないかなな、と眺めていて見つけたのが…

昭和鉄道ドキュメンタリー
http://broadband.biglobe.ne.jp/program/index_showa_tetsudo.html

200808171

懐かしい昭和の時代の鉄道をテーマにした映像がたくさんあり、蒸気機関車が多いようですが、見たことないのに懐かしい、そんな映像が全部で17本、2日間にわたって、個人的に非常に楽しめました。

たぶん、興味のない人は、もうまったく、これっぽっちも興味を抱かない、マニアックな映像作品だと思います。

というか、私も別にそっちの趣味はないのですが、「この映像って、いったい、いつ、どんな場所で、だれに向けて見せるように制作されたんだか・・・?」と、見てて疑問に思ってしまうような、普通はお目にかかれなさそうな珍しいものばかり。

そんなものが気軽に楽しめるようになって、インターネットってすばらしい(笑)

そういえば、貨物列車が、操車場で1両ずつ切り離されて、行き先別に入れ替えをされているシーンがたびたび出ていたんですが、あれで、インターネットの根幹を成す「IPネットワーク」を連想しました。



気に入ったもの、いくつか。

「ディーゼル特急」 ディーゼルってそうなってるんだ、と勉強になりました。

「つばめを動かす人たち」 電気機関車の方がすきなんですが、EF58がいいなぁ。当時、沼津に停車してたんですね(今では、新幹線の駅もないのに)。

「見えない鉄道員」 従来、人間がやってたことを、コンピューターなど機械によって置き換えられていった様子、興味深かったです。



一番強く感じたのが、「昔は、みんな人ががんばってたんだ」ということ。

昔の人が想像した未来社会として、ボタンを押すだけでなんでもできる、みたいなものがあったと思います。

現代、銀行のATMとか、証券取引とかで、コンピューターの不具合で障害が発生するたびに、あーだこーだと叩かれることがあります。

もちろん、社会的に重要なシステムは、ちゃんと動くに越したことはありません。でも、機械だって壊れるし、作ったのは人間なんだから、作った人が間違えることもあります。障害が発生しても、最悪の事態にだけはならないように気をつけておけば、少々の不便があったとしても、そんな目くじら立てる必要はないんじゃないかと。

「機械は絶対にミスをしない」という幻想に頼りきって、ものすごく重大な弱点を残したまま、現代社会が構成されてしまったんじゃないかな。

でも、実際のところ、叩かれるのは、あまりにもお粗末なミスが繰り返されているから、ってとこがあるからなんですよね。やれやれ。

200808172

古い車両ってのは、曲面のところが、非常にイイッ!って思うんですが、私だけでしょうか。

上のディーゼル特急とか、20系の最後尾の車両とかもそうですし、新幹線0系もいいなぁ。


オリンピックといえば

2008-08-16 18:59:02 | アニメ・コミック・ゲーム

オリンピックといえば、やはり、ハイパーオリンピックですか。1984年のことかな?
ところで、コナミがスポーツクラブもやってるのってのは、ハイパーオリンピックとは関係あるんでしょうか。
関係ないですよね。

200808161

200808162

db-SOFTから、パソコン版のハイパーオリンピック'84というのが出てたみたいです。

200808163

db-SOFT(デービーソフト)って懐かしい名前だなぁ。
今はどうなってるんだろう?と思ってネット検索してみると、なんだか消息不明っぽい状況になってますね。

200808164

競技は、

  • 水泳 100m自由形
  • クレー射撃
  • 跳馬
  • アーチェリー
  • 三段跳び
  • 重量挙げ
  • 棒高跳び

と、微妙なところが選ばれているんですが、そのころは超人気競技だった・・・んですかね?

陸上100mとか、走り幅跳びとか、プレイしたような記憶があるんですけど。