hirax.net::Keywords::「カーネル」のブログ



1998-12-17[n年前へ]

TuboLinux3.0でIPマスカレード 

CATVでインターネット

-CATVでインターネット-
 家がCATVインターネット接続環境になった。家庭内のLANと外部を繋ぐために、IPマスカレード用のサーバーを用意したい。そこで、古いPCにRedHatLinux4.2をインストールする(つもりだった)。
インストールしたPCの情報は以下の通り。
  • GraphicBoard DiamondStealth3D 2000 (S3 Virge)
  • EtherCard Corega PCI-T
 RedHat4.2のカーネルそのままでは、EtherCard Corega PCI-Tの認識ができなかった。情報を探すと
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/~poffice/news/fj.os.linux/15328
http://www.lares.dti.ne.jp/~gaako/linux_12.html
http://cesdis.gsfc.nasa.gov/linux/drivers/ne2k-pci.html
に辿り着く。結局、NE2000-PCI互換のボードとして認識できるようである。

 ところが、TurboLinux3.0を近所の本屋で買ってしまった。これなら、CoregaPCI-Tの認識は自動的に終了してしまう。フキ出版 前原輝雄著の「新版Linuxでインターネット」と
http://www.fureai.or.jp/~fukiage/
の「TurboLinuxでのIPマスカレードのインストール」を参考に設定する。
/etc/rc.d/rc.localでmodprobeを使ってIPマスカレードを組み込む。

modprobe ip_masq_quake
modprobe ip_masq_Vdolive
modprobe ip_masq_cuseeme
modprobe ip_masq_raudio
modprobe ip_masq_irc
modprobe ip_masq_ftp

を/etc/rc.d/rc.localに追加する。
そして、ipfwadmを実行するスクリプトファイルを作成する。/home/sbin/にipmasqというスクリプトファイルを作る。

以下がその内容である。

#!/bin/sh

case "$1" in
start)
    /sbin/ipfwadm -F -a m -S 192.168.1.0/24 -D 0.0.0.0/0
     /sbin/ipfwadm -F -p deny
     /sbin/ipfwadm -I -p accept
     /sbin/ipfwadm -O -p accept
     echo "Firewall & masquarading rules set"
     ;;
 stop)
    /sbin/ipfwadm -F -f
     /sbin/ipfwadm -I -f
    /sbin/ipfwadm -O -f
     ;;
 *)
   echo "Usage:ipmasq {start|stop}"
    exit 1

esac

exit 0

そして、
chmod u+x /home/sbin/ipmasq
としておく。

 これで
/home/sbin/ipmasq start
でスタート
/home/sbin/ipmasq stop
でストップできる筈だった。

 しかし、何故かうまくいかない。ところが、linux-mailinglistで同じ問題が議論されていた。そこで、その中でまとめられていた対策を行う。

cat /proc/sys/net/ipv4/ip_forward
をすると、0という結果になる。これが、まずいというので、
echo 1 > /proc/sys/net/ipv4/ip_forward
で1にしてやる。すると、何の問題もなく動くようになる。

 結局、/etc/rc.d/rc.localに
#dynamic ip-adress enable
echo 1 > /proc/sys/net/ipv4/ip_forward

を記述する。

 Windows95/98マシンの方では、GatewayのアドレスとしてにLinuxボックスの内部IPアドレスを指定する。

2002-03-23[n年前へ]

インドで考たこと Dualの有効性編 

 「負荷がかかる処理は用途ごとに複数台準備する方がよいのかな」には、「処理を操作・連携せさる処理を作業者がスムーズにできる限りは賛成」です。あと、単なる処理速度の話にはもう全然異議などありません。
 だけど、それが実際に作業を人間がするときの話だと、少し別。「処理を操作・連携せさる処理を作業者がスムーズにできる」ってなかなかWindows環境では難しかったりする場合も多いようにも思ったりします。
 例えば、ちなみに私のデスクトップのPCではMathematica、Photoshop, Premire, Illustrator, InDesighn, After Effects辺りが常時立ち上げて、連携させながら作業するわけです。片方で処理した結果をコピペしつつ違うソフトに突っ込んで処理させたり、Googleに色んなことを教えてもらいながら、VisualC++でソフトを書いてコンパイルして、何ていう風に。そんなタスク切り替えが頻繁におきる仕事が普通かどうかはさておき…。
 ところが、作業するワタシは一人なので、複数のソフトを色々切り替えるのにあまりに複数のPCでやるとワンクッション入って不便なんですねぇ…。モニタやキーボードやマウスを切り替え機で切り替えるのは、面倒ですから。一応今でもドコドア+LANクリップボードで二台のPCを使ってはいるのだけど、それですでに液晶ディスプレイ三枚…。なんか居室の作業では、複数のPCを切り替える時に、自分の頭の中のタスク切り替えが上手くいかない(というか次に頭の中のタスクを元に戻すのに時間がかかるような感じがする)ので、結局二台に戻してしまいました。
 プログレ・キーボード派だったワタシとしては、前は複数のPCに囲まれていたし、実験室ではそれぞれ1制御1PCで結局多数のPC群に囲まれているのですが、それが居室だとどうも感覚的にストレスがたまりましたね…。あと何よりデュアルのありがたいのはオンボロプログラムが暴走しまくっても、操作感覚は素早いままってとこ。(何だそりゃ…)
 もちろん、Mathematicaなんかはネットワークがらみがちゃんとしてるので、フロントエンドだけ自分のPCでカーネルは他のPCで動かしてますし、他のUNIX系のマシンで動くソフトに関してはもちろん処理だけそっちでやらせて、自分のPC上ではXクライアントしか動いてないわけです…。こういった、ソフトの表示系と内部処理を別のマシンで動かせるようになると、複数台使っていても操作感覚は変わらないし、とても便利なんですけどWindowsだとなかなかないですよねぇ、そんなの…。
 なので、ワタシはよく雑誌記事の単なるベンチマークを見ると、実際に行う作業を人間がしてるときの、操作性を確かめてみてもらいたいなぁ、と思うのです。「仕事はコンピューターがするんじゃない、人間がするんだぁ」って踊る大走査線風に言いたくなるのです。
 ただ、こうも思います。ささっと違う仕事に頭を切り替えるわけには行きづらいタイプの仕事、例えばソフトのプログラマーや込み入ったメカを設計するタイプの仕事などでは、こんな風な仕事の要求はされないだろうなぁ、とも思います。
 あっ、念のため、タイトルには意味無いです。あと、「それは、こーすりゃ解決さ」っていうツッコミなんがのどから手が出るほど欲しいです、ハイ。

2002-08-04[n年前へ]

キラキラ光る景色を描く 

「木漏れ日」プラグイン「リン」を作る

 夏の休日には、朝早く起きて西伊豆の松崎の先にある「雲見・岩地・石部」辺りへ行って、海の中でお魚と戯れてみたり、海辺の温泉に長々とつかってみたりする。例え休日であっても朝早く行けば混雑とは無縁だし、海に照りつける太陽と温泉とビールの三点セットが揃えば、夏の景色としてはとても素敵なのである。

 とはいえ、今日は朝寝坊したので、松崎までは行かずに「無名だけれどとても良い感じの場所」へ行った。海辺に車を止めて、景色を眺めて、ほんの少しの時間泳いでみた。下はその西伊豆の某所で眺めた「今日見た景色」だ。
 

西伊豆の某所で眺めた「今日見た景色」

 「雲見、岩地、石部」であれば温泉も海も最高だけれど、西伊豆の辺りには他にも「海水が綺麗で、人も全然いなくて、トイレも水もある」ような場所はいくつもある。これはそんな場所の一つ。

 県道から海辺の集落に向かう道沿いには素晴らしい滝もあって、まるでプレイステーション2のゲームソフト「ぼくのなつやすみ2海の冒険篇」の世界に迷い込んだかのよう。

 実際に眺めていた景色はもっとキラキラしていたハズなのに、その片鱗も残っていない…。それはひとえに写真を撮ったワタシのウデが悪いから。
 

 海辺でワタシが実際に眺めていた景色は、もっとずっと「キラキラ」していたハズなのに、残念なことに上の写真を眺めてみても、その片鱗すら残っていない。揺れてる波間も、足下の濡れている岩も、眩しい太陽だってもっとずっとキラキラしていたハズなのに、上の写真はただボンヤリした写真になってしまっている。それは、ひとえに写真を撮ったワタシのウデが悪いからである。もちろん、それが一番の理由である。クヤシイ話ではあるが、確かにワタシのウデは悪いのである。

 とはいえ、言い訳を少しばかり書くならば、実際に眺めていた景色がもっとずっとキラキラしていた理由は他にも考えられる。例えば、ワタシ達が景色を眺めるときには、目の前にかかる髪の毛や、睫毛や、目の水晶体を通して景色を眺めているわけで、それらの中で光が回折したりして、キラキラとまるで虹のように光が輝いて見えたりするからだ。そのため、例えば夜空の星の形、本来は丸いはずの星の形、が星型に見えたり、木漏れ日が虹のように輝いて見えたりする。

 そんな様子をもしカメラで再現しようとするならば、ケンコーが出しているクロスフィルターのようなものをつけることになる。しかし、手軽さが取り柄のデジタルカメラでわざわざそんなフィルターをつけるのは面倒くさいし、第一人によって見え方は違うから、「ただ一つのフィルター」で写真を撮ってしまうのは少しばかりイヤな気がする。例えば、「私は目の前に髪の毛がたくさんかかってしまって邪魔なのー」という人もいれば、「最近、抜け毛がハゲしーなぁ…、目の前に髪の毛がたくさんかかっていたあの頃が懐かしぃ…」という人もいるわけで、そんな二人が眺めた景色はきっと全然違うハズなのである。「百人の人がいれば百人百葉様の景色を眺めている」わけで、写真を撮る時点でただ一つのフィルターをデジカメにはめて写真を撮ってしまうのも面白くない。フィルターに限らず、何事も一つの枠にはめてしまうのは良くないのである。

 デジカメの便利なところは、何より撮った後の画像加工が自由自在、というところなわけで、撮った後に「眺めた景色」を再現するように画像を加工してやれば、「写真を撮るときには素直な景色を撮って」「その後で自分が眺めたキラキラ光る景色を蘇らせる」ということができる。そこで、今回はそんな「キラキラ光る景色を描く」Photoshop用のプラグインを作ってみることにした。そして、ワタシの写真の腕の悪さを「技術の力」で誤魔化そうと思うのである。
 

 といっても、基本的には、「ボケ」た背景で包み込めの時の処理を基にして、

  1. 色々な畳み込みの演算カーネル形状を用意し
  2. 演算カーネルのサイズを強度やアルファチャンネルの情報を元にしてピクセル単位で可変にし
  3. カーネル演算を対数変換有無などに対応する
ようにするだけで、比較的簡単に「キラキラ光る景色を描く」Photoshop用のプラグインを作ることができる。光が輪を作ってキラキラする景色を描くプラグインなので、輪を意味する"RINg"と名付けてみた。木漏れ日は時折鈴(りん)の音のように見えるので、その響きにもかけてみた。 ちなみに、RINgプラグインは今のところ、Windows2000(XP?)のPhotoshop6.0,7.0でしか動かないと思うが、いつもと同じようにアルファ版のものをここにおいて(+説明)おく。

 RINgの出力サンプルを少し眺めてみると、下の画像のようになる。まず最初のサンプル画像は、クローバーの写真に「虹十字状」の畳み込みの演算カーネルを用いて、処理をしてみたものだ。左のオリジナル画像では、朝露を載せて光るクローバーを眺めるときに私達が感じる「キラキラしたようす」がほとんど写っていないが、右のフィルター後の写真では私達が睫毛などを通して景色を見るときに感じる虹色のキラキラした自然?な景色が映し出されている。
 

職場の駐車場で眺めた景色
オリジナル画像

左の画像にRINgをかけたもの
(畳み込みの演算カーネルは虹十字状)

 そして、また下の写真は、新宿から初台へ歩く途中で眺めた木漏れ日の向こうのビルの景色だ。左のオリジナル写真はクッキリ・ハッキリ写っているのだが、ただ「それだけ」である。太陽の光を遮る木々の葉っぱも、そこから降り注ぐキラキラする木漏れ日も写ってはいない。しかし、右のRINgが描いた景色の方では、ボンヤリと、だけど強く光る初夏の「木漏れ日」が確かに写っているのである。夏の空気が写っているかのようなのだ。
 

新宿から初台へ歩く途中で眺めた景色
オリジナル画像

左の画像にRINgをかけたもの
(畳み込みの演算カーネルは円状)

 もちろん、このRINgは「ボケ」た背景で包み込めの時の処理を基にしているので、写真のボケも再現することができる。例えば、六角形の畳み込みの演算カーネルを用いて、画面全体に同じ演算カーネルで処理をかけると下の右の写真のようにピンボケの写真を再現することができる。
 

画像全体に同じようにRINgをかけてみた例
(畳み込みの演算カーネルは六角形状)
オリジナル画像
左の画像にRINgをかけたもの

 また、アルファチャンネルも選択してフィルタ処理を行うと、自動的にアルファチャンネルの情報を基に畳み込みの演算カーネルサイズを画素毎に変化させる。だから、例えばアルファチャンネルに距離の情報を入れておいてやれば、下の写真のように距離に応じたボケなども再現することができる。この写真では画面中央下の領域はピントが合ってていて、そこから離れるに従って、ピンボケの具合が大きくなっている。もっとも、現在のバージョンでは大雑把に計算してみただけなので、空の部分などに疑似輪郭などがずいぶんと発生してしまっている。きっと、それはいつかのバージョンで直すつもりなのである。
 

距離の情報としてアルファチャンネルを用いた例
オリジナル画像
左の画像にRINgをかけたもの
(畳み込みの演算カーネルは円状)

 今回のRINgプラグインは光が広がる様子を保存した「畳み込みの演算カーネル」を基に画像にフィルタをかけるだけなので、使う演算カーネルの形状・様子によって色んなフィルタに早変わりする。

 例えば、デフォルトでつけてある三日月型の"Moon"カーネルを使えば、色んな灯りが三日月型に光る景色に早変わりする。もし、星空の写真に"Moon"カーネルでRINgプラグインをかけたら、いきなり全ての星が三日月に早変わりだ。また、"Smile"カーネルであれば、いきなり光が大小様々な「笑顔」に早変わりする。そんな風にして、色んな画像ファイルを演算カーネルにして見ると、色んな景色が見えてくるはずだ。例えば、「星はなぜ星型に見えるのか」のグループが作成した「星型シミュレーションソフトウェア」の出力結果を演算カーネルにすれば、目の前の景色が星空の向こうの景色に早変わりするだろう。そしてまた、水で満たしたコップの向こうに浮かぶ光の画像を使えば、RINgはデジカメで撮った色々な写真を水槽の向こうの景色であるかのように描き直したりするかもしれないし、あるいはまたまるで瞳に涙を浮かべながら景色を眺めてみたかのように描き直したりするかもしれない。

2002-11-21[n年前へ]

gridMathematica 

MathematicaのParallel Computing Toolkitとカーネルのみのライセンス提供。Mathematicaで複数同時計算を行う人向け。

2003-10-24[n年前へ]

女子高生のカーネル領域における言語的等価性 

高度に発達した離散的コミュニティでは、そこで使用される言語=表象はおよそ一般的な話し言葉とは著しく異なったものに対応させられる。本論文ではまず UNIX コミュニティにおける言語と女子高生コミュニティにおける言語の相似性を提示する。つぎにこのような言語体系をうみだす環境の認知心理学的類似性について考察し、UNIX が女子高生と数学的に等価であることを示す。また両者の今後の展開についても予測をおこなう。
 この論文で最後に行われる「女子高生との相似性から導かれるUNIXの未来予測」は「ここで我々の視界に入ってくるのは、もうひとつのビルの存在 -- つまり『池袋』である。池袋でビルといえばサンシャイン 60 であるが、サンとは高地ゲール語で『太陽』を表象し、これは UNIX 陣営における『サン』に相当する。すると池袋におけるビルというのは、その創始者であるもう一人のビルに相違ない」である。 from L.L.L@online



■Powered by yagm.net