UNIXという考え方: その設計思想と哲学

  • オーム社 (2001年2月23日発売)
4.04
  • (134)
  • (117)
  • (108)
  • (6)
  • (0)
本棚登録 : 1683
感想 : 126

教員からの推薦図書。
教員からのコメント:以前、「Life with UNIX」という本を紹介したことがあった。そのときにもいったことがあったかも知れないが、UNIXというのは、単なるオペレーティングシステムではない。思想なのである。
この点をよくわかっていないと、「なぜUNIXにはパイプとかリダイレクションという仕組みがあるのか」とか、「なぜUNIXはすべてのものをファイルとして表すのか(従って、cat somefile > /dev/tty0 とやれば、画面にファイルの内容を出せる)」といったことが今ひとつぴんとこないかも知れない。
UNIX(SolarisであれLinuxであれFreeBSDであれば、いわゆるUNIXをご先祖に持つ、あるいは精神的な先祖に持つシステム)は、ほぼ1つの思想を共有している。本書の表現を借りるなら、
・スモール・イズ・ビューティフル…プログラムは1つのことを忠実に行えるよう設計されるべし
・まず試作を…考えている暇があったら直ちに小さな仕組みから取りかかれ。
・効率性より移植性…将来、あるいは別のシステムで使われることを考慮せよ。
・データはテキストファイルに保存せよ…テキストファイルなら誰でも読める。
・システムを結びつけるならスクリプトを使え…シェルスクリプトは、UNIXシステム最強のツールである。ツールを結びつけるための、生産性向上に役立つ強力なツールだ。
・すべてのプログラムはフィルタである…自分のプログラムの入力(出力)は他のプログラムの出力(入力)かも知れない、ことを意識せよ。
まァ、上のようなことをまとめてしまえば、この本を読む必要もなくなってしまうのであるが、本書は、それがなぜ重要なのか、基本的なところから解きほぐしているところが重要である。
パイプやリダイレクションなどはあまりに特徴的で、ぴんとこない点も多いかも知れないが、その裏には、1970年代に小さなプログラムしか書くことを許されなかったコンピュータ事情が存在した。そして、その結果として、1つの仕事をまじめにこなすプログラムを組み合わせて仕事をする、というスタイルが生まれたのである。
これは、いまのGUI全盛のコンピュータ環境とはまったく異なるアプローチかも知れない。Windowsのエクスプローラーであれ、GNOME環境のNautilusであれ、lsやrm、mvが行うことはすべてのこのプログラム1つでまかなえてしまう。しかし、例えば、10000個のファイルの拡張子をすべて大文字から小文字に変える、という仕事をしなければならないとしたらどうだろうか。愚直にエクスプローラーでやってもよいが、そんなことはコンピュータに任せればよい。シェルスクリプトであれ、Perlであれ、十数行のスクリプトさえ書けばあとは実行するだけで終了だ。そして、そのスクリプトは再利用がきく。
UNIXというのは、このような仕組みを備えた思想を具現したシステムなのである。それを学ぶことは、将来コンピュータというものを使っていくときに、ただ漫然とブラウザとエクスプローラーだけをさわる人生になるのか、自分で使える道具を組み立ててコンピュータを使いこなせるようになるのか、その大きな違いを生むことになる。少なくとも「そういうことを知っている」だけでも大きな違いだろう。
本書は、他のシステム(例えばMS-DOS)などとの比較を通して、UNIXの特徴、そしてその思想を浮き彫りにしていく。内容も平易で、UNIXシステムに触れた1年生でも十分に読みこなせるくらいである。ただ、若干内容が古いのが難点である。本書で比較されるOpenVMSやMS-DOSは80年代のシステムなので、その点がちょっといまの読者には難があるといえるところであろう。
しかし、UNIXシステムですら巨大なウィンドウシステム(GNOMEやKDE)の皮をかぶり、インタフェースがみえにくくなってきているいまだからこそ、この思想を受け継いでいくことが大切なのである。それは、巨大なプログラムを書くときにも必ず移化されてくる。そして本書を読み終わったとき、実はUNIXは、この社会を忠実に反映したシステムである、ということに気づくであろう。薄い本である。ぜひ読破にチャレンジして欲しい。

読書状況:未設定 公開設定:公開
カテゴリ: UNIX入門
感想投稿日 : 2012年6月21日
本棚登録日 : 2010年4月3日

みんなの感想をみる

コメント 0件

ツイートする