2011年8月16日火曜日

サイエンスキャンプの思い出

毎年行われているセキュリティ&プログラミングキャンプ(セプキャン)が今年も行われた:
http://d.hatena.ne.jp/hyoshiok/20110816
こういうイベントを見ていると、最近の子は羨ましいなと思うわけだが、 よく考えると私もこの手のイベントに参加したことがあった。サイエンスキャンプというイベントだった。ちょっとググッてみたら、今もやっているらしい。高校生を国立の研究機関などに3日くらい行かせて、科学の最前線を見せようというものだった。

私は、理由は忘れてしまったのだが、埼玉の理化学研究所を選んだ。今もそうだと思うが、当時、そこではDNAやタンパク質の構造解析を行っていた。解析にはコンピュータが使われていて、たぶん私はそこに興味を持ったのだと思う。まだ、バイオインフォマティクスなどという言葉も聞いたことがなかった頃だ。

NMRを使ってアミノ酸の構造を解析し、立体構造を推定するというデモを見せられた。ちなみに、その時使われていた計算機はシリコングラフィクスのO2であった。ただのパソコンオタクだった私はNMRが何なのかも理解できなかったが(研究員の方にかなり丁寧に解説していただいたが、それでもわからなかった)、科学の最前線を感じることはできた。

この時の経験が影響したのかわからないが、大学・大学院ではNMRの大家に師事し、化学・生物学へのコンピュータの応用を研究した。この頃、バイオインフォマティクスとか盛んに言われるようになった。結局、就職して全く別の方面に進んでしまったのだが、それでもサイエンスキャンプは私の青春のいい思い出だ。

さて、今回のセプキャンといいサイエンスキャンプといい、ともに若者、とくに10代の子たちにこうした経験をさせることはすごくよいことだと思う。

10代の子たちは、生まれた時から失われた20年である。私はかろうじて失われた10年世代で、まだバブルの雰囲気を引きずる時代で育ってきた。しかし、今の子は、物心ついた時から不景気だ不景気だと言われ、緊縮財政だとかムダ遣いをやめろとか、挙句にスーパーコンピュータはいらないとか言う政治家もいる。

こんな時代では、若者は夢が持てない。想像力を働かせることができない。大志を抱くことができない。今の若者はどーのこーのと言う大人がいるが、そんなの当たり前だ。

では、どうするか? それは、若者に投資することである。若者への投資といえば教育ということになるが、従来の意味での教育からは少し視点を変えて、若者の夢へと投資するのだ。

セプキャンもサイエンスキャンプも、これは若者の夢への投資である。大人たちは、科学技術の最前線を見せることで、「私たちはここまで来た。アナタたちは何をするか?」という質問を若者へ投げかけることで、若者の想像力を喚起する。

理化学研究所で私についてくれた研究者の方は、当時30歳過ぎくらいの方だったと思う。私もその年齢に近づいてきた。私もそろそろ投資家の側に回る時がきたのだと思う。もちろん、私は技術者としてはまだまだ未熟だと思う。しかし、それなりの経験はしてきたつもりだ。セプキャンなり何なり、私も、若者と過ごす活動ができたらよいと思う。

2011年8月14日日曜日

Scientific Linux 6.1でLinux 3.0.1をビルド

ビルドは簡単。GRUBの設定で悩んだ。忘れないようにメモしておく。

■ビルド

kernel.orgなどからソースを取ってくる。ここでは、/usr/src/linux-3.0.y以下に展開したものとする。

まず、デフォルトカーネルの.configをコピー:
# cd /usr/src/linux-3.0.y
# cp ../kernels/2.6.32-131.6.1.el6.x86_64/.config .
次に.configの設定。設定を変更しない場合でも、この操作は一度実行しておかなくてはならないみたい:
# make menuconfig    <- 設定変更しない場合は何もいじらず設定画面を終了する
# make oldconfig
あとはmakeするだけ。ThinkPad X61で1時間半くらいで終わった。案外早いものである:
# make 
■インストール

arch/x86/boot/bzImageというのができている。こいつがカーネル本体。このファイルを、/boot以下にコピーする:
# cp arch/x86/boot/bzImage /boot/vmlinuz-3.0.1
次に、モジュールをインストール。モジュールのインストールは、makeコマンドを叩けば自動でやってくれる:
# make modules_install
これで、/lib/modules以下にモジュールがインストールされた。

■GRUBの設定

ブートできるようにGRUBの設定を行う。

まずは、initrdというRAMディスクのイメージを作ろう。カーネルは、起動時にこのRAMディスク上でディスクのファイルをマウントするなどの処理を行うらしい。詳しくはこちら→http://jibun.atmarkit.co.jp/lskill01/rensai/lpicdrill06/lpicdrill01.html
# cd /boot
# mkinitrd initramfs-3.0.1.img 3.0.1
次に、/boot/grub/grub.confの設定を行う。デフォルトカーネルの設定がすでに書かれているので、これを参考に記述すればよい(と思う)。マニュアルはinfo grub。私は以下のようにしてみた:

default=0
timeout=10
splashimage=(hd0,0)/grub/splash.xpm.gz
#hiddenmenu
title Scientific Linux (2.6.32-131.6.1.el6.x86_64)
        root (hd0,0)
        kernel /vmlinuz-2.6.32-131.6.1.el6.x86_64 ro root=/dev/mapper/vg_sllaptop-lv_root rd_LVM_LV=vg_sllaptop/lv_root rd_LVM_LV=vg_sllaptop/lv_swap rd_NO_LUKS rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYBOARDTYPE=pc KEYTABLE=us rhgb quiet
        initrd /initramfs-2.6.32-131.6.1.el6.x86_64.img
title Scientific Linux (3.0.1)
        root (hd0,0)
        kernel /vmlinuz-3.0.1 ro root=/dev/mapper/vg_sllaptop-lv_root rhgb quiet
        initrd /initramfs-3.0.1.img
hiddenmenuをコメントにすることで、起動時にカーネルを選択できるようにする。デフォルトは0(Scientific Linuxのデフォルトカーネル)で、タイムアウトは10。

titleで始まる行が2つあるが、1つ目がデフォルトカーネル。2つ目が今回ビルドした3.0.1のカーネル。initrdには上で作った3.0.1用のinitrdを指定してあげる。

以上で、3.0.1カーネルのビルド&インストールは完了。再起動すれば3.0.1が選択できる。あとはカーネルをガンガンいじるのみ。何かおかしくなってもデフォルトカーネルでブートすれば大丈夫(かな?)。

2011年8月13日土曜日

日本の得意なシステムエンジニアリング

もう先月のことだが、中国高速鉄道(いわゆる中国新幹線)の事故がおきた。事故の犠牲者には非常に気の毒だと思う。しかし、この事故は、日本の新幹線がいかに優れているかを世界に示すものでもあった。

日本の新幹線は、開通以来一人の死亡事故も出していない。先の東日本大震災に置いても、新幹線は安全に停止し、かつ迅速にダイヤ復旧することができた。

東京オリンピックの前年の1964年に開通した東海道新幹線であるが、この新幹線計画は実は戦前からの国鉄の悲願だった。戦前は、「新幹線」とは呼ばず、「弾丸列車」と呼ばれた。

弾丸列車は、電車方式ではなく機関車方式であった。区間も、東京ー大阪間をゆうに越え、東京ー南京間を結ぶものであった。もちろん、南京まで列車で行くためには海を渡らなければならない。九州から船で朝鮮まで列車を運ぶ方式、九州から朝鮮までトンネルを掘る(!!)方式が考えられたという。

一方の中国新幹線は、開通までわずか5年。中国は急ぎすぎた。いくら日本やヨーロッパから技術導入しても、やはり短期間での付け焼刃の技術ではダメだった。日本の新幹線は、戦前から考えに考えつくされたものなのだ。

新幹線はシステムだ。私もエンジニアなのでよくわかるが、システムというものは、単に要素技術がそろえば作れるというものではない。それぞれの要素技術を組み合わせてシステムとする力、システムエンジニアリング力とでもいうものが必要だ。

私は、このシステムエンジニアリングこそが日本の生き残る道だと思っている。もう家電やケータイは韓国や台湾に任せればよい。彼らのほうが良い仕事を安くできるだろう。

日本は、実はシステムエンジニアリングが得意だ。新幹線はもちろん、他にもプラント(日本の浄水場の水は世界一安全)、発電所(日本の原発も世界一安全。議論はあるだろうが、少なくとも先の大震災までは)などなど。

しかし、例えば新幹線は、日本の主要な輸出品目ではない。最近になってようやく海外への売り込みが始まったばかりである。しかも、JR東海とJR東日本で別々に売り込むなど、これでは買う方も混乱するのではないか。

中国新幹線は、日本の重工メーカーが車両技術を輸出した形になっている。しかし、新幹線は単なる車両ではない。システムだ。だから、単に要素技術としての車両を売るのではなく、新幹線としてのシステムを売るべきだった。

よく言われるように、国鉄民営化の際、単純にJRを地域で分けてしまったのがよくない。地域で分けるのではなく、「JR新幹線株式会社」を作るべきだった。そうして、新幹線に関する運用ノウハウをすべてここに集約し、このノウハウとセットで新幹線を売り出すべきだった。

大震災以降、日本再生・経済復興が叫ばれる。単に日本経済を「もとに戻す」のではなく、「次へ進める」ものであってほしい。