なぜ、今MacOS Xをすすめるのか

羊土社より2003年12月に発行されました「バイオ研究が10倍はかどるMacOSX活用マニュアル」 *1 のイントロダクションとして書いた文章です。Webでの公開をご快諾くださいました羊土社編集部に感謝いたします。

本書は旭硝子ASPEX事業部の礒合敦氏と東京医科歯科大生命情報学荻島創一氏に執筆をお願いし、コンピュータ利用が専門ではない生物学者を対象に、MacOSXの「UNIXである」という優れた側面を活用することで、生物学研究の現場で簡単にそして自在にデータ解析が可能になることを知っていただきたくて編んだ書籍です。

以下の中村の導入部はアジテーションがまざっておりいささかベタな ^^;) ものですが、ご両者の執筆分は実例を豊富に交えた懇切なマニュアル形式となっており、MacOSX上に生物学のデータ解析環境を、ほとんど無償で構築する手順をわかりやすく述べています。分子生物学会年会などにてみかけたら是非お手にとってみてください。

事実誤認など文中に問題を発見されましたら、yn at nig dot ac dot jp 宛ご連絡いただけるとたすかります。


(埼玉大学)現・東京大学の佐藤直樹先生の書かれた生物系研究室における遺伝情報解析のためのUNIX環境の構築もたいへん参考になります。ご参照ください。


Macは消えゆく計算機環境か?


かつては、多くの生物系研究者がMacintoshユーザであった。ところが近年、学会発表の会場など見わたすと、Windows機の演者が増えてきていることに気づく。PowerBookでプレゼン準備をしていると、「情報を扱う方なのにMacなのですか?」などと声をかけられることもあるほどだ。まるで時代に取り残された者扱いである。

一方、国際学会での勢力分布はかなり異なる。見渡せば、PowerBookやiBookの所持率が高いことに気づくだろう。海外の研究者は国内の生物学者に比べて「遅れて」いるのか?そうではない。たとえばゲノム情報に関わる生物学者、すなわちコンピュータによる大量の情報処理を行う研究者の多くはMac利用者だ。情報処理の専門家が、彼らの道具としてMacを選んでいるのだ。それはなぜだろうか。

ここで、肩ごしに彼らのラップトップの画面をのぞきこんでみよう *2。彼らはMacOS 9以前のシステムではなくMacOS Xを利用していることが確認できるはずだ。

Apple computer社により、Macintoshと名付けられたコンピュータが世に出たのは1984年、洗練されたグラフィカルユーザインタフェース(GUI)を装備した画期的な一般向けコンピュータだった。だが後発のWindowsも脱皮を重ね、今ではMacに遜色ないユーザインタフェースを備えるようになっている。Mac用に開発されたExcelなどの便利なアプリケーションもWindowsに移植されており、電子メイルやWWWブラウズといったインターネット利用環境も、ワープロ、プレゼンテーションなどの一般的なオフィス環境の利用も、MacであろうとWindowsであろうと可能な処理や操作体系に変わりなくなった。ならば比較的安価なハードウェアで動作するWindowsへの移行はもっともなことだ。古くからのMacびいきの筆者でさえ2、3年前には一時期Windowsをメインの作業環境に使っていた程だ。ではなぜ私は、そして国際学会で見かける多くの研究者たちは、Macへと戻って来たのか — その理由は、MacOS Xにある。

MacOS Xのどこが良いのか


折しも21世紀の初頭、2001年3月にMac用の最新オペレーティングシステム(OS) であるMacOS X正式版がリリースされた。まず、従来のMacOSに比べ格段に美しくなったAquaインタフェースが目を奪う。動作が非常に安定していることはユーザとして嬉しい限りだ。突然現れるMacの爆弾マーク、おなじみWindows のブルースクリーンにより無情にも書きかけの書類や入力中のデータを失ったことがない研究者は、まずいないだろう。MacOS Xを利用するようになってから、こうした憂き目にあうことが少なくなった。もちろん、不安定な特定のアプリケーションが作業中に「落ちて」しまうことは依然としてあるが、そうした場合にOSや他のアプリケーションが巻き添えになってすべてが台無しになることは、今やほとんどない。滅多にないことだが、アプリケーション切替をつかさどるあらゆるプログラムの親玉的な存在である「Finder」が落ちたときでさえ、個々のアプリケーションは無事に動作していたため、順繰りにファイルを保存しては終了していくことで作業を失わずに済ませることができたほどである。それまでのMacOS 利用者には想像だにできない頑健さではないだろうか?

ところが、そうした目に見える部分でなく、その裏側にこそこのOSの真価が隠れているのだ *3 。それは、コアにDarwinの名を冠したオープンソースのUNIXオペレーティングシステムを採用していることである。UNIX をベースにしていることの意味、それがわれわれ生物学者にとっていかに有用なことかを、限られた紙幅のなかで伝えられるよう、努力してみよう。

UNIXとはなにか


UNIXはOSすなわちコンピュータを動作させるための基本ソフトの一つである。UNIXの作成は1969年にベル研究所で着手され、1971年にVersion 1がリリースされた。などと書くと「そんなに古いOSなのか?」と読者は驚くかもしれない。MacもPCも影も形さえもない大昔に産声あげた超古参のOSを、21世紀の今になって採用することの何がそれほど重要なのか。

UNIXを利用するメリットはなにか。UNIXはアセンブラではなく高級言語のC言語で書かれているため、システムが移植しやすい。UNIXはさまざまな種類の計算機上に移植され、あらゆる場面で利用されている。したがって、あらゆる用途のアプリケーションがUNIX上で開発されており、特にオープンソースのソフトウェアが数多く入手可能である。UNIXはファイルやプロセス入出力の統合、マルチユーザーのサポートならびにマルチタスク環境の装備などすぐれた機能を有しているため、古くから他の商用OSを圧倒してきた。たとえハードウェアに専用の独自OSが付属していても、利用しやすさと安定性を求める管理者たちはUNIXをインストールし直して利用してきた。現在、大きな組織のWWWサーバや計算機システムなど、長期の安定稼働が必要なコンピュータの多くはUNIXを動作させている。

しかし、そのようにすばらしいOSであるなら、なぜこれまで我々はMac上でUNIXを利用しようとしなかったのだろう?実は過去にUNIXとMacを融合しようとした製品は複数存在した。アップル社が販売していたA/UXはMacの操作環境をもったUNIXそのものであったし、Tenon 社のMachTenはMacOSの上で動作するUNIX環境であった。hp社とアップル社からはSunとhpのUNIXワークステーション上でMacOSを実行できるMAE(Macintosh Application Environment)が販売されていた。これらはMacとUNIXを双方利用してきた、われわれのような情報を扱う研究者には実に重宝する環境だったが、いずれもパーソナルユースにはやや高価でマニアックな代物で、気軽に手の出るものではなかった。しかし、いまや販売されている全てのMacにはMacOS Xが搭載され、UNIXとMacの統合された理想的な環境が提供されているのだ。

オープンなソフトウェアの強さ


MacOS Xに採用されているUNIXはBSDと呼ばれ、カリフォルニア大学バークレー校で派生したUNIXである。Cシェルなどや仮想記憶といった追加機能はBSDの賜物であり、有用な拡張機能であったためあらゆるUNIXにとりこまれた。

「あらゆるUNIX」などと書くと「UNIXにはいろいろな種類があるのか?」と疑問に思うかもしれない。はたして、そのとおりなのだ。オリジナルのUNIXは現在SCO社が知的財産権を所有しているが、「UNIX系」OSは、コンピュータ会社が自社の製品用に開発している製品 (Sun Microsystem社のSolarisやHP 社のhp-uxやDigital UNIXなど) と、ボランティアが開発しフリーで配布されているもの (最近よく話題にのぼるLinuxやFreeBSDなど) の二群に大別できる。これらは、基本的なコマンドや操作体系は共通しているが、動作する機種やコマンドの一部、コマンドのオプションやシステム設定の方法などにそれぞれ多少の違いがある。

MacOS XのコアであるDarwinもフリーUNIXの一種である。MacOSからグラフィクスやMacintoshアプリケーションの動作環境などを除いた部分がDarwinであり、オープンソースの開発プロジェクトとしてソース公開されている。プロジェクトには世界中のプログラマが改良や修正に参加しており、クローズドな状況で開発されるOSに比べ、ソースが多くの目にさらされることで安全性が高くなり、性能も向上する。これがオープンソースソフトウェアの強みである。ソースが公開されていることで攻撃するポイントが見付かりやすいとか、無償であることから有償のものより質が悪いと思われがちだが、現実はその逆であって、より安全で高性能なソフトウェア開発モデルなのである。

Darwinにはapache, php, perl, ruby, emacs, GCC *4 など、はじめから多くのオープンソースソフトウェアが利用可能である。列挙したものはどれも定番のソフトウェアであり、商用UNIX のワークステーションを購入したら、配布サイトからダウンロードし、インストールすることがお約束のようなものだが、MacOS Xなら用意されているので手間がかからない。

Linuxはさらに大量のソフトウェアやライブラリを含んだ状態で配布されているものもある。RedHat系Linuxは、RPM *5 によって、ソフトウェアパッケージの管理をたやすく行うことができるが、MacOS Xでも、フリーのプログラムの管理は、本書で紹介するFinkを利用することにより、3000以上 *6 のUNIXソフトウェアやライブラリパッケージの追加やアップデートを簡単に済ませることができる。

OSの一部だと思っていた機能をオープンソースの外部ソフトウェアが分担していることに気づくこともある。例えば、MacOS Xの「Web共有」サービスは、独自のWWWサーバを開発して組み込むといったことはせずに、多くのWWWサイトが利用している定番WWWサーバプログラム「apache」を用いている。信頼性の高いオープンソースソフトウェアがOSの機能を担っているのは、頼もしいことである。

UNIXのコマンド利用環境に親しもう


このように「MacOS Xはすばらしい」とあちこちで熱く語っていると、ときに「それでもMacOSなんて10 年後には消え去っているでしょう」と醒めた揶揄を聞かされることになる。かもね。だがその時にはWindowsも消え去っていることだろう。もちろんWindowsの後継の基本ソフトは存在するだろうし、名前も引き継がれているかもしれない。しかしそれは現在多くの人が利用しているWindowsとは別の「なにか」になっているはずだ。GUIによる操作環境はハードウェアの進歩と共により豪華なものに置き換えられ、古いハードウェアでも動作する軽い環境は古くさくなり、使い捨てられていく運命にあるからだ。

しかし、昔ながらの複数の単機能コマンドの入出力をパイプで連結して作業するUNIXの流儀や、基本的なインタフェースであるシェル環境は10年後にも生き残っているはずだ。なぜなら、どんなにGUIが発展しようと、繰り返し作業を行うとき、あるいはテキストベース *7 の情報を扱うとき、「ターミナル」を開いてコマンドをキーボードで入力する、昔ながらの操作環境がもっとも効率が良いからである。そうした操作をGUIが取ってかわることは考えにくい。UNIXに親しみ、コマンドによる操作体系をモノにすることは、ある特定のOSのGUI操作に習熟したり、特定のアプリケーションの達人となることよりも、あなたの将来にとってより役に立つ「技」の一つとなるだろう。三行のシェルスクリプトでBLASTによる類似配列の検索を1000本でも10000本でも実行することができるのが、自由で強力なコマンドラインの世界なのである。

MacOS Xでなくてもいい


ここまで読んでいただければ、UNIXの有用性を納得していただけたと思う。しかしパーソナルなUNIXを使いたいだけならMacOS X以外にも選択肢はある。

たとえばLinuxをPCに導入すれば、安価にUNIX環境を構築することができる。しかし、すでにWindowsを用いて作業しているPCにLinuxを導入する場合、それまでのデータを壊さないように寄せ集め、あるいは別のディスクに退避させておいてからディスクの領域を切り分け、起動の切替も効くように気を配らなければならない。またLinux利用中にWindowsアプリケーションを使いたい場合には普通は再起動が必要になる *8 。

Windows上にUNIX風の環境を構築したければ、Cygnus社がフリーで提供しているcygwinを導入する方法がある。cygwinはWindows上でUNIXの多くのコマンドを走らせることができるので簡便で強力な環境ではあるが、インストール手順が繁雑で動作が遅いなどの問題がある。また、本格的に使い込もうとするとWindowsで動作していることにまつわる制約の回避が面倒だ。

これらの環境に対するMacOS Xの利点は明白である。再起動や別のマシンを用意することなく、いつも利用しているコンピュータで本物のUNIX環境が使えるということだ。ファイルの転送も悩まなくて済む。

長年非UNIXユーザにUNIX環境をすすめてきたが、まず「UNIX環境を用意する」というところに大きな障壁があることに気づいている。その点、MacOS Xなら、パソコンとして使いながら、気の向いたときに「ターミナル」コマンドを開けばそこはUNIXだ。UNIXの導入を誤ることによるデータ消失のリスクもない。もう一台UNIX 用のPCを用意することもない。入門に必要なのはほんの少しの空き時間だけだ。

もし、あなたがコンピュータいじりが好きな人で、ディスクをバックアップし、パーティションを切り、Linuxを導入するといった作業が苦痛でなく、楽しみさえ感じる人であれば、Linuxはすばらしい選択肢だ。しかし、ハードウェアをいじくるよりは、目の前のデータの解析にいますぐにとりかかりたいということなら、そのMacを使えば良いのだ。

さあ、MacOS Xを研究に利用し尽くそう!


くりかえしになるが、MacOS XのメリットはUNIXで開発された大量のプログラムを簡単に導入し利用できることにある。本書でも紹介した EMBOSS, BLAST, clustalW, …これらだけでも、あなたのそのパソコンで無償で使えることが信じられない程のソフトウェア資源ではないだろうか。さらに、簡単なスクリプトが書けるようになれば、あらゆるコマンドの繰り返し処理が可能となり、大量のデータの処理が効率化され、苦にならなくなる。omics研究の活発な展開によって、今まさにデータが溢れかえりつつある生物系研究の現場に於いて、実験生物学者の情報処理の切札たりえる環境がMacOS Xなのである。

さて、ここまで読んでいただいたことに感謝する。まだ疑いは残っているかもしれない。しかし、バイオ研究の場でMacOS Xがいかに有用なのか、実例を知りたくなってきたのではないだろうか。是非、この先 *9 )を読みすすめてあなたのMacOS Xに隠されたUNIXの世界へ踏み込んでほしい。単なる文房具であったMacが、あらゆる科学技術計算をこなすパワフルなUNIXワークステーションであったことに、俄然目を開かされることは請け合いである。後はそのすばらしい環境をあなたの研究の発展の為に使い尽くすのみだ。

ブラボー! 有益な情報をどうも有り難うございました — T.taka? 2004-09-16 (木) 05:12:01
^^) — yn 2005-08-05 (金) 09:52:16
OS X の CUI 環境は最近の Linux ディストリビューションほど日本語化が徹底していないのが難点かな。Leopard がリリースされたら Mac/Win/Linux のトリプルブート環境を構築したいです。 — O.Matsuda? 2006-08-09 (水) 13:06:39

*1 当初「MacOSXで猫でもできるバイオインフォマティクス」という書名で企画していたものですが、ざんねんながらさすがに猫にはムリだろとの理由で、この書名に落ち着きました
*2 失礼でない程度にね!
*3 もちろん、そのことがこれまで述べた機能の向上や安定性に寄与しているのだが
*4 GCC「GNU Cコンパイラ」は購入時には導入されていないが、付属する Developer Tools パッケージによって簡単に導入できる
*5 RedHat Package Manager の略
*6 バージョン違いなども含めた総数で、実数はこれよりかなり減少するがそれでも大量だ
*7 塩基配列情報やアノテーション情報などはまさしくこれだ
*8 VMware などにより、仮想PC により複数のOS を稼働させることはできる。しかし重くなるし一般ユーザにはいささか面倒だ
*9 くどいようだが、この文章は「バイオ研究が10倍はかどる MacOSX活用マニュアル」のイントロダクションである。続きは買って読んでね :